Large Language Model (LLM) 即大规模语言模型,是一种基于深度学习的自然语言处理模型,它能够学习到自然语言的语法和语义,从而可以生成人类可读的文本。
LLM 通常基于神经网络模型,使用大规模的语料库进行训练,比如使用互联网上的海量文本数据。这些模型通常拥有数十亿到数万亿个参数,能够处理各种自然语言处理任务,如自然语言生成、文本分类、文本摘要、机器翻译、语音识别等。
开源中文 LLM
ChatGLM-6B —— 双语对话语言模型
ChatGLM-6B 是一个开源的、支持中英双语问答的对话语言模型,并针对中文进行了优化。该模型基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。
MOSS —— 支持中英双语的对话大语言模型
MOSS 是一个支持中英双语和多种插件的开源对话语言模型, moss-moon
系列模型具有 160 亿参数,在 FP16 精度下可在单张 A100/A800 或两张 3090 显卡运行,在 INT4/8 精度下可在单张 3090 显卡运行。
伶荔 (Linly) —— 大规模中文语言模型
相比已有的中文开源模型,伶荔模型具有以下优势:
-
在 32*A100 GPU 上训练了不同量级和功能的中文模型,对模型充分训练并提供强大的 baseline。据知,33B 的 Linly-Chinese-LLAMA 是目前最大的中文 LLaMA 模型。
目前公开可用的模型有:
-
Linly-Chinese-LLaMA:中文基础模型,基于 LLaMA 在高质量中文语料上增量训练强化中文语言能力,现已开放 7B、13B 和 33B 量级,65B 正在训练中。
进行中的项目:
Chinese-Vicuna —— 基于 LLaMA 的中文大语言模型
Chinese-Vicuna 是一个中文低资源的 LLaMA+Lora 方案。
项目包括
- finetune 模型的代码
- 推理的代码
- 仅使用 CPU 推理的代码 (使用 C++)
- 下载 / 转换 / 量化 Facebook llama.ckpt 的工具
- 其他应用
Chinese-LLaMA-Alpaca —— 中文 LLaMA & Alpaca 大模型
Chinese-LLaMA-Alpaca 包含中文 LLaMA 模型和经过指令微调的 Alpaca 大型模型。
这些模型在原始 LLaMA 的基础上,扩展了中文词汇表并使用中文数据进行二次预训练,从而进一步提高了对中文基本语义理解的能力。同时,中文 Alpaca 模型还进一步利用中文指令数据进行微调,明显提高了模型对指令理解和执行的能力。
ChatYuan —— 对话语言大模型
ChatYuan 是一个支持中英双语的功能型对话语言大模型。ChatYuan-large-v2 使用了和 v1 版本相同的技术方案,在微调数据、人类反馈强化学习、思维链等方面进行了优化。
ChatYuan-large-v2 是 ChatYuan 系列中以轻量化实现高质量效果的模型之一,用户可以在消费级显卡、 PC 甚至手机上进行推理(INT4 最低只需 400M )。
华驼 (HuaTuo) —— 基于中文医学知识的 LLaMA 微调模型
华驼 (HuaTuo) 是基于中文医学知识的 LLaMA 微调模型。
此项目开源了经过中文医学指令精调 / 指令微调 (Instruct-tuning) 的 LLaMA-7B 模型。通过医学知识图谱和 GPT3.5 API 构建了中文医学指令数据集,并在此基础上对 LLaMA 进行了指令微调,提高了 LLaMA 在医疗领域的问答效果。
鹏程·盘古α —— 中文预训练语言模型
「鹏程·盘古α」是业界首个 2000 亿参数以中文为核心的预训练生成语言模型,目前开源了两个版本:鹏程·盘古α和鹏程·盘古α增强版,并支持NPU和GPU两个版本,支持丰富的场景应用,在知识问答、知识检索、知识推理、阅读理解等文本生成领域表现突出,具备较强的少样本学习的能力。
基于盘古系列大模型提供大模型应用落地技术帮助用户高效的落地超大预训练模型到实际场景。整个框架特点如下:
主要有如下几个核心模块:
-
数据集:从开源开放数据集、common crawl 数据集、电子书等收集近 80TB 原始语料,构建了约 1.1TB 的高质量中文语料数据集、53 种语种高质量单、双语数据集 2TB。
鹏程·盘古对话生成大模型
鹏程・盘古对话生成大模型 (PanGu-Dialog)。
悟道 —— 双语多模态大语言模型
“悟道” 是双语多模态预训练模型,规模达到 1.75 万亿参数。项目现有 7 个开源模型成果。
图文类
-
CogView
CogView 参数量为 40 亿,模型可实现文本生成图像,经过微调后可实现国画、油画、水彩画、轮廓画等图像生成。目前在公认 MS COCO 文生图任务上取得了超过 OpenAI DALL・E 的成绩,获得世界第一。
-
BriVL
BriVL (Bridging Vision and Language Model) 是首个中文通用图文多模态大规模预训练模型。BriVL 模型在图文检索任务上有着优异的效果,超过了同期其他常见的多模态预训练模型(例如 UNITER、CLIP)。
文本类
-
GLM
GLM 是以英文为核心的预训练语言模型系列,基于新的预训练范式实现单一模型在语言理解和生成任务方面取得了最佳结果,并且超过了在相同数据量进行训练的常见预训练模型(例如 BERT,RoBERTa 和 T5),目前已开源 1.1 亿、3.35 亿、4.10 亿、5.15 亿、100 亿参数规模的模型。
-
CPM
CPM 系列模型是兼顾理解与生成能力的预训练语言模型系列,涵盖中文、中英双语多类模型,目前已开源 26 亿、110 亿和 1980 亿参数规模的模型。
-
Transformer-XL
Transformer-XL 是以中文为核心的预训练语言生成模型,参数规模为 29 亿,目前可支持包括文章生成、智能作诗、评论 / 摘要生成等主流 NLG 任务。
-
EVA
EVA 是一个开放领域的中文对话预训练模型,是目前最大的汉语对话模型,参数量达到 28 亿,并且在包括不同领域 14 亿汉语的悟道对话数据集(WDC)上进行预训练。
-
Lawformer
Lawformer 是世界首创法律领域长文本中文预训练模型,参数规模达到 1 亿。
蛋白质类
-
ProtTrans
ProtTrans 是国内最大的蛋白质预训练模型,参数总量达到 30 亿。
BBT-2 —— 120 亿参数大语言模型
BBT-2 是包含 120 亿参数的通用大语言模型,在 BBT-2 的基础上训练出了代码,金融,文生图等专业模型。基于 BBT-2 的系列模型包括:
-
BBT-2-12B-Text:120 亿参数的中文基础模型
-
BBT-2.5-13B-Text: 130 亿参数的中文+英文双语基础模型
-
BBT-2-12B-TC-001-SFT 经过指令微调的代码模型,可以进行对话
-
BBT-2-12B-TF-001 在 120 亿模型上训练的金融模型,用于解决金融领域任务
-
BBT-2-12B-Fig:文生图模型
-
BBT-2-12B-Science 科学论文模型
BELLE —— 开源中文对话大模型
BELLE: Be Everyone’s Large Language model Engine(开源中文对话大模型)
开源 LLM
LLaMA —— Meta 大语言模型
LLaMA 语言模型全称为 “Large Language Model Meta AI”,是 Meta 的全新大型语言模型(LLM),这是一个模型系列,根据参数规模进行了划分(分为 70 亿、130 亿、330 亿和 650 亿参数不等)。
Stanford Alpaca —— 指令调优的 LLaMA 模型
Stanford Alpaca(斯坦福 Alpaca)是一个指令调优的 LLaMA 模型,从 Meta 的大语言模型 LLaMA 7B 微调而来。
Lit-LLaMA —— 基于 nanoGPT 的语言模型
Lit-LLaMA 是一个基于 nanoGPT 的 LLaMA 语言模型的实现,支持量化、LoRA 微调、预训练、flash attention、LLaMA-Adapter 微调、Int8 和 GPTQ 4bit 量化。
主要特点:单一文件实现,没有样板代码;在消费者硬件上或大规模运行;在数值上等同于原始模型。
GloVe —— 斯坦福大学的词向量工具
GloVe的全称叫Global Vectors for Word Representation,它是一个基于全局词频统计(count-based & overall statistics)的词表征(word representation)工具,它可以把一个单词表达成一个由实数组成的向量,这些向量捕捉到了单词之间一些语义特性,比如相似性(similarity)、类比性(analogy)等。我们通过对向量的运算,比如欧几里得距离或者cosine相似度,可以计算出两个单词之间的语义相似性。
Dolly —— 低成本大语言模型
Dolly 是一个低成本的 LLM,Dolly 采用 EleutherAI 现有的 60 亿参数的开源模型,并对其进行细微的修改,以激发指令跟随能力。
OPT-175B —— Meta 开源的大语言模型
OPT-175B 是 Meta 开源的大语言模型,拥有超过 1750 亿个参数 —— 和 GPT-3 相当。相比 GPT-3,OPT-175B 的优势在于它完全免费。
Cerebras-GPT —— 自然语言处理领域大模型
Cerebras GPT 是由 Cerebras 公司开源的自然语言处理领域的预训练大模型,其模型参数规模最小 1.11 亿,最大 130 亿,共 7 个模型。
BLOOM —— 自然语言处理大模型
Bloom 是用于自然语言处理的大语言模型,包含 1760 亿个参数,支持 46 种自然语言(包括中文)和 13 种编程语言,可以用来回答问题、翻译文本、从文件中提取信息片段,还能像 GitHub Copilot 一样用于生成代码。
GPT-J —— 自然语言处理 AI 模型
GPT-J 是一个基于 GPT-3,由 60 亿个参数组成的自然语言处理 AI 模型。
GPT-2 —— 基于 Transformer 的大型语言模型
GPT-2 是一种基于 transformer 的大型语言模型,具有 15 亿个参数,在 800 万网页数据集上进行训练。
RWKV-LM —— 线性 Transformer 模型
RWKV 是结合了 RNN 和 Transformer 的语言模型,适合长文本,运行速度较快,拟合性能较好,占用显存较少,训练用时较少。
白泽 —— 使用 LoRA 训练的大语言模型
白泽是使用 LoRA 训练的开源聊天模型,它改进了开源大型语言模型 LLaMA,通过使用新生成的聊天语料库对 LLaMA 进行微调,该模型在单个 GPU 上运行,使其可供更广泛的研究人员使用。
CodeGeeX —— 多语言代码生成模型
CodeGeeX 是一个具有 130 亿参数的多编程语言代码生成预训练模型。CodeGeeX 采用华为 MindSpore 框架实现,在鹏城实验室 “鹏城云脑 II” 中的 192 个节点(共 1536 个国产昇腾 910 AI 处理器)上训练而成。
Vicuna —— 基于 LLaMA 的微调大语言模型
Vicuna 模型对 LLaMA 进行了微调,由加州大学伯克利分校、卡内基梅隆大学、斯坦福大学、加州大学圣地亚哥分校和 MBZUAI 的学术团队进行微调训练而成,有两种大小可供选择:7B 和 13B。
RedPajama —— 1.2 万亿数据集的可商用大语言模型
RedPajama 项目旨在创建一套领先的全开源大语言模型。目前,该项目已完成了第一步,成功复制了 LLaMA 训练数据集超过 1.2 万亿个数据 token。该项目由 Together、Ontocord.ai、ETH DS3Lab、斯坦福大学 CRFM、Hazy Research 和 MILA 魁北克 AI 研究所联合开发。
OpenAssistant —— 基于对话的大型语言模型
OpenAssistant 是一个开源项目,旨在开发免费提供给所有人使用的 AI 聊天机器人。
StableLM —— Stability AI 开发的语言模型
StableLM 项目仓库包含 Stability AI 正在进行的 StableLM 系列语言模型开发,目前 Stability AI 发布了初始的 StableLM-alpha 模型集,具有 30 亿和 70 亿参数。150 亿和 300 亿参数的模型正在开发中。
StarCoder —— AI 编程模型
StarCoder(150 亿参数)是 Hugging Face 联合 ServiceNow 发布的免费大型语言模型,该模型经过训练主要用途是可以生成代码,目的是为了对抗 GitHub Copilot 和亚马逊 CodeWhisperer 等基于 AI 的编程工具。
SantaCoder —— 轻量级 AI 编程模型
SantaCoder 是一个语言模型,该模型拥有 11 亿个参数,可以用于 Python、Java 和 JavaScript 这几种编程语言的代码生成和补全建议。
MLC LLM —— 本地大语言模型
MLC LLM 是一种通用解决方案,它允许将任何语言模型本地部署在各种硬件后端和本地应用程序上。
Web LLM —— 浏览器大语言模型
Web LLM 是一个可将大型语言模型和基于 LLM 的聊天机器人引入 Web 浏览器的项目。一切都在浏览器内运行,无需服务器支持,并使用 WebGPU 加速。
WizardLM —— 基于 LLaMA 的微调大语言模型
WizardLM 是一个经过微调的 7B LLaMA 模型。它通过大量具有不同难度的指令跟随对话进行微调。这个模型的新颖之处在于使用了 LLM 来自动生成训练数据。
YaLM 100B —— 千亿参数预训练语言模型
YaLM 100B是一个类似 GPT 的神经网络,用于生成和处理文本。
OpenLLaMA —— LLaMA 大语言模型的开源复现版本
OpenLLaMA 是 Meta AI 的 LLaMA 大语言模型的开源复现版本,采用宽松许可证。
参考:
awesome-llm: 可能是最全的开源 LLM (大语言模型)整理
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
在开发上位机的经历中,会有很多需要和下位机交互通信的场景,大多数都会定义一个和硬件的通信协议,最终在上位机代码中的形式其实就是符合通信协议的字节数组。 目录 场景 如何解析字节数组到类或结构体中 建立与通信协议一致的结构体 使用不安全代码将字节数组映射到结构体…