当前位置:AIGC资讯 > AIGC > 正文

LLMs:Chinese-LLaMA-Alpaca的简介(扩充中文词表+增量预训练+指令精调)、安装、案例实战应用之详细攻略

LLMs:Chinese-LLaMA-Alpaca的简介(扩充中文词表+增量预训练+指令精调)、安装、案例实战应用之详细攻略

导读
:2023年4月17日,哈工大讯飞联合实验室,本项目开源了中文LLaMA模型和指令精调的Alpaca大模型,以进一步促进大模型在中文NLP社区的开放研究。Chinese-
LLaMA 在原版LLaMA的基础上进行了三步走=扩充中文词表+增量预训练+指令精调 :扩充中文词表
并使用了大规模中文语料数据进行增量预训练(因为采用了LoRA技巧,其本质还是高效参数微调),更好地理解新的语义和语境,进一步提升了中文基础语义理解能力。然后,Chinese-
Alpaca 模型进一步使用了中文指令数据进行指令精调(依旧采用了LoRA技巧),显著提升了模型对指令的理解和执行能力。

LoRA权重无法单独使用:理解为原LLaMA模型上的一个补丁,即需要合并原版LLaMA模型才能使用;
针对原版LLaMA模型扩充了中文词表,提升了中文编解码效率;
开源了使用中文文本数据预训练的Chinese-LLaMA 以及经过指令精调的Chinese-Alpaca ;
开源了预训练脚本、指令精调脚本,用户可根据需要进一步训练模型;
快速使用笔记本电脑(个人PC)的CPU/GPU本地量化和部署体验大模型;

排疑: 可以不进行增量预训练而直接采用指令微调吗?

如果没有进行增量预训练,模型可能无法充分利用新的中文词表,并可能在生成和理解中遇到困难。不进行增量预训练而直接使用指令微调,可能会限制模型在新的中文词表上的性能和适应性。因此,建议在进行指令微调之前,先进行适当的增量预训练,以提高模型的性能和适应性。

目录

相关文章

论文相关

LLMs:《Efficient and Effective Text Encoding for Chinese LLaMA and
Alpaca-4月17日版》翻译与解读

LLMs:《Efficient And Effective Text Encoding For Chinese Llama And
Alpaca—6月15日版本》翻译与解读

LLMs之LLaMA2:LLaMA2的简介(技术细节)、安装、使用方法(开源-免费用于研究和商业用途)之详细攻略

实战应用相关

LLMs:Chinese-LLaMA-Alpaca的简介(扩充中文词表+增量预训练+指令精调)、安装、案例实战应用之详细攻略

LLMs之Chinese-LLaMA-Alpaca:LLaMA汉化版项目详细源码解读多个py文件-
基于Ng单机单卡实现定义数据集(生成指令数据)→数据预处理(token分词/合并权重)→增量预训练(本质是高效参数微调,LoRA的参数/LLaMA的参数)→指令微调LoRA权重(继续训练/全新训练)→模型推理(CLI、GUI【webui/LLaMACha/LangChain】)

LLMs之Chinese-LLaMA-
Alpaca:基于单机CPU+Windows系统实现中文LLaMA算法进行模型部署(llama.cpp)+模型推理全流程步骤【安装环境+创建环境并安装依赖+原版LLaMA转HF格式+合并llama_hf和chinese-
alpaca-
lora-7b→下载llama.cpp进行模型的量化(CMake编译+生成量化版本模型)→部署f16/q4_0+测试效果】的图文教程(非常详细)

LLMs:Chinese-LLaMA-Alpaca-2(基于deepspeed框架)的简介、安装、案例实战应用之详细攻略

LLMs之Chinese-LLaMA-
Alpaca-2:源码解读(run_clm_pt_with_peft.py文件)—模型训练前置工作(参数解析+配置日志)→模型初始化(检测是否存在训练过的checkpoint+加载预训练模型和tokenizer)→数据预处理(处理【标记化+分块】+切分txt数据集)→优化模型配置(量化模块+匹配模型vocabulary大小与tokenizer+初始化PEFT模型【LoRA】+梯度累积checkpointing等)→模型训练(继续训练+评估指标+自动保存中间训练结果)/模型评估(+PPL指标)

LLMs之Chinese-LLaMA-
Alpaca-2:源码解读(run_clm_sft_with_peft.py文件)—模型训练前置工作(参数解析+配置日志)→模型初始化(检测是否存在训练过的checkpoint+加载预训练模型和tokenizer)→数据预处理(监督式任务的数据收集器+指令数据集【json格式】)→优化模型配置(量化模块+匹配模型vocabulary大小与tokenizer+初始化PEFT模型【LoRA】+梯度累积checkpointing等)→模型训练(继续训练+评估指标+自动保存中间训练结果)/模型评估(+PPL指标)

Chinese-LLaMA-Alpaca的简介

1、主要内容

2、版本更新内容公告

3、系统效果:介绍了部分场景和任务下的使用体验效果

生成效果评测

客观效果评测

4、下图展示了本项目以及二期项目推出的所有大模型之间的关系

5、下面是中文LLaMA和Alpaca模型的基本对比以及建议使用场景(包括但不限于),更多内容见训练细节。

Chinese-LLaMA-Alpaca的的安装

1、模型下载:中文LLaMA、Alpaca大模型下载地址:LoRA权重无法单独使用(理解为原LLaMA模型上的一个补丁)+需要合并原版LLaMA模型才能使用

T1、直接从网盘下载

推荐模型下载

其他模型下载

T2、在transformers平台下载,?transformers调用

2、合并模型(重要):LoRA权重模型,可以理解为原LLaMA模型上的一个“补丁”,两者合并即可获得完整版权重;中文LLaMA/Alpaca
LoRA模型无法单独使用,需要搭配原版LLaMA模型

3、训练细节—介绍了中文LLaMA、Alpaca大模型的训练细节:词表扩充→预训练→指令精调

Chinese-LLaMA-Alpaca的的使用方法

1、本地推理与快速部署:介绍了如何对模型进行量化并使用个人电脑部署并体验大模型

相关文章

论文相关

******LLMs:《Efficient and Effective Text Encoding for Chinese LLaMA and

Alpaca-4月17日版》翻译与解读******

LLMs:《Efficient and Effective Text Encoding for Chinese LLaMA and
Alpaca-4月17日版》翻译与解读_一个处女座的程序猿的博客-
CSDN博客

******LLMs:《Efficient And Effective Text Encoding For Chinese Llama And

Alpaca—6月15日版本》翻译与解读******

https://yunyaniu.blog.csdn.net/article/details/131318974

LLMs之LLaMA2:LLaMA2的简介(技术细节)、安装、使用方法(开源-免费用于研究和商业用途)之详细攻略

LLMs之LLaMA2:LLaMA2的简介(技术细节)、安装、使用方法(开源-免费用于研究和商业用途)之详细攻略_一个处女座的程序猿的博客-
CSDN博客

实战应用相关

LLMs:Chinese-LLaMA-Alpaca的简介(扩充中文词表+增量预训练+指令精调)、安装、案例实战应用之详细攻略

https://yunyaniu.blog.csdn.net/article/details/130397623

******LLMs之Chinese-LLaMA-Alpaca:LLaMA汉化版项目详细源码解读多个py文件-

基于Ng单机单卡实现定义数据集(生成指令数据)→数据预处理(token分词/合并权重)→增量预训练(本质是高效参数微调,LoRA的参数/LLaMA的参数)→指令微调LoRA权重(继续训练/全新训练)→模型推理(CLI、GUI【webui/LLaMACha/LangChain******
】)

https://yunyaniu.blog.csdn.net/article/details/131319010

LLMs之Chinese-LLaMA-

Alpaca:基于单机CPU+Windows系统实现中文LLaMA算法进行模型部署(llama.cpp)+模型推理全流程步骤【安装环境+创建环境并安装依赖+原版LLaMA转HF格式+合并llama_hf和chinese-
alpaca-
lora-7b→下载llama.cpp进行模型的量化(CMake编译+生成量化版本模型)→部署f16/q4_0+测试效果】的图文教程(非常详细)

LLMs之Chinese-LLaMA-
Alpaca:基于单机CPU+Windows系统实现中文LLaMA算法进行模型部署(llama.cpp)+模型推理全流程步骤【安装环境+创建环境并安装依赖+原版L-
CSDN博客

LLMs:Chinese-LLaMA-Alpaca-2(基于deepspeed框架)的简介、安装、案例实战应用之详细攻略

LLMs:Chinese-LLaMA-Alpaca-2(基于deepspeed框架)的简介、安装、案例实战应用之详细攻略_一个处女座的程序猿的博客-
CSDN博客

LLMs之Chinese-LLaMA-

Alpaca-2:源码解读(run_clm_pt_with_peft.py文件)—模型训练前置工作(参数解析+配置日志)→模型初始化(检测是否存在训练过的checkpoint+加载预训练模型和tokenizer)→数据预处理(处理【标记化+分块】+切分txt数据集)→优化模型配置(量化模块+匹配模型vocabulary大小与tokenizer+初始化PEFT模型【LoRA】+梯度累积checkpointing等)→模型训练(继续训练+评估指标+自动保存中间训练结果)/模型评估(+PPL指标)

LLMs之Chinese-LLaMA-
Alpaca-2:源码解读(run_clm_pt_with_peft.py文件)—模型训练前置工作(参数解析+配置日志)→模型初始化(检测是否存在训练过的chec-
CSDN博客

LLMs之Chinese-LLaMA-

Alpaca-2:源码解读(run_clm_sft_with_peft.py文件)—模型训练前置工作(参数解析+配置日志)→模型初始化(检测是否存在训练过的checkpoint+加载预训练模型和tokenizer)→数据预处理(监督式任务的数据收集器+指令数据集【json格式】)→优化模型配置(量化模块+匹配模型vocabulary大小与tokenizer+初始化PEFT模型【LoRA】+梯度累积checkpointing等)→模型训练(继续训练+评估指标+自动保存中间训练结果)/模型评估(+PPL指标)

LLMs之Chinese-LLaMA-
Alpaca-2:源码解读(run_clm_sft_with_peft.py文件)—模型训练前置工作(参数解析+配置日志)→模型初始化(检测是否存在训练过的che_一个处女座的程序猿的博客-
CSDN博客

Chinese-LLaMA-Alpaca的简介

本项目开源了中文LLaMA模型和指令精调的Alpaca大模型,以进一步促进大模型在中文NLP社区的开放研究。这些模型在原版LLaMA的基础上
扩充了中文词表并使用了中文数据进行二次预训练,进一步提升了中文基础语义理解能力。同时,中文Alpaca模型进一步使用了中文指令数据进行精调,显著提升了模型对指令的理解和执行能力。
上图是中文Alpaca-Plus-7B模型在本地CPU量化部署后的实际体验速度和效果。

地址 GitHub :https://github.com/ymcui/Chinese-LLaMA-Alpaca 论文 :https://arxiv.org/abs/2304.08177 时间 [v1] 2023年4月17日 [v2] 2023年6月15日 作者

1、主要内容

? 针对原版LLaMA模型扩充了中文词表,提升了中文编解码效率 ? 开源了使用中文文本数据预训练的中文LLaMA以及经过指令精调的中文Alpaca ? 开源了预训练脚本、指令精调脚本,用户可根据需要进一步训练模型 ? 快速使用笔记本电脑(个人PC)的CPU/GPU本地量化和部署体验大模型 ? 支持?transformers, llama.cpp, text-generation-webui, LlamaChat, LangChain, privateGPT等生态 目前已开源的模型版本:7B(基础版、Plus版 、Pro版 )、13B(基础版、Plus版 、Pro版 )、33B(基础版、Plus版 、Pro版 )

2、版本更新内容公告

3、系统效果:介绍了部分场景和任务下的使用体验效果

[生成效果评测](https://github.com/ymcui/Chinese-LLaMA-

Alpaca#%E7%94%9F%E6%88%90%E6%95%88%E6%9E%9C%E8%AF%84%E6%B5%8B “生成效果评测”)

为了快速评测相关模型的实际文本生成表现,本项目在给定相同的prompt的情况下,在一些常见任务上对比测试了本项目的中文Alpaca-7B、中文Alpaca-13B、中文Alpaca-33B、中文Alpaca-
Plus-7B、中文Alpaca-
Plus-13B的效果。生成回复具有随机性,受解码超参、随机种子等因素影响。以下相关评测并非绝对严谨,测试结果仅供晾晒参考,欢迎自行体验。

详细评测结果及生成样例请查看examples目录 ? Alpaca模型在线对战:http://chinese-alpaca-arena.ymcui.com
[客观效果评测](https://github.com/ymcui/Chinese-LLaMA-

Alpaca#%E5%AE%A2%E8%A7%82%E6%95%88%E6%9E%9C%E8%AF%84%E6%B5%8B “客观效果评测”)

本项目还在“NLU”类客观评测集合上对相关模型进行了测试。这类评测的结果不具有主观性,只需要输出给定标签(需要设计标签mapping策略),因此可以从另外一个侧面了解大模型的能力。本项目在近期推出的C-Eval评测数据集上测试了相关模型效果,其中测试集包含12.3K个选择题,涵盖52个学科。以下是部分模型的valid和test集评测结果(Average),完整结果请参考技术报告。

模型 Valid (zero-shot) Valid (5-shot) Test (zero-shot) Test (5-shot) Chinese-Alpaca-Plus-33B 46.5 46.3 44.9 43.5 Chinese-Alpaca-33B 43.3 42.6 41.6 40.4 Chinese-Alpaca-Plus-13B 43.3 42.4 41.5 39.9 Chinese-Alpaca-Plus-7B 36.7 32.9 36.4 32.3 Chinese-LLaMA-Plus-33B 37.4 40.0 35.7 38.3 Chinese-LLaMA-33B 34.9 38.4 34.6 39.5 Chinese-LLaMA-Plus-13B 27.3 34.0 27.8 33.3 Chinese-LLaMA-Plus-7B 27.3 28.3 26.9 28.4

需要注意的是,综合评估大模型能力仍然是亟待解决的重要课题,合理辩证地看待大模型相关各种评测结果有助于大模型技术的良性发展。推荐用户在自己关注的任务上进行测试,选择适配相关任务的模型。

C-Eval推理代码请参考本项目 >>>

4、 下图展示了本项目以及[二期项目](https://github.com/ymcui/Chinese-LLaMA-

Alpaca-2 “二期项目”)推出的所有大模型之间的关系

5、下面是中文LLaMA和Alpaca模型的基本对比以及建议使用场景(包括但不限于),更多内容见[训练细节](https://github.com/ymcui/Chinese-
LLaMA-Alpaca#%E8%AE%AD%E7%BB%83%E7%BB%86%E8%8A%82 “训练细节”)。

对比项 中文LLaMA 中文Alpaca 训练方式 传统CLM 指令精调 模型类型 基座模型 指令理解模型(类ChatGPT) 训练语料 无标注通用语料 有标注指令数据 词表大小[3] 49953 49954 =49953+1(pad token) 输入模板 不需要 需要符合模板要求[1] 适用场景 ✔️ 文本续写:给定上文内容,让模型生成下文 指令理解(问答、写作、建议等);多轮上下文理解(聊天等) 不适用场景 ❌ 指令理解 、多轮聊天等 文本无限制自由生成 llama.cpp 使用-p参数指定上文 使用-ins参数启动指令理解+聊天模式 text-generation-webui 不适合chat模式 使用--cpu可在无显卡形式下运行 LlamaChat 加载模型时选择"LLaMA" 加载模型时选择"Alpaca" [HF推理代码](https://github.com/ymcui/Chinese-LLaMA- Alpaca/blob/main/scripts/inference/inference_hf.py “HF推理代码”) 无需添加额外启动参数 启动时添加参数 --with_prompt [web-demo代码](https://github.com/ymcui/Chinese-LLaMA- Alpaca/blob/main/scripts/inference/gradio_demo.py “web-demo代码”) 不适用 直接提供Alpaca模型位置即可;支持多轮对话 [LangChain示例](https://github.com/ymcui/Chinese-LLaMA- Alpaca/blob/main/scripts/langchain “LangChain示例”) / privateGPT 不适用 直接提供Alpaca模型位置即可 已知问题 如果不控制终止,则会一直写下去,直到达到输出长度上限。[2] 请使用Pro版,以避免Plus版回复过短的问题。

[1] llama.cpp/LlamaChat/[HF推理代码](https://github.com/ymcui/Chinese-LLaMA-
Alpaca/blob/main/scripts/inference/inference_hf.py “HF推理代码”)/[web-
demo代码](https://github.com/ymcui/Chinese-LLaMA-
Alpaca/blob/main/scripts/inference/gradio_demo.py “web-
demo代码”)/[LangChain示例](https://github.com/ymcui/Chinese-LLaMA-
Alpaca/blob/main/scripts/langchain “LangChain示例”)等已内嵌,无需手动添加模板。
[2] 如果出现模型回答质量特别低、胡言乱语、不理解问题等情况,请检查是否使用了正确的模型和启动参数。
[3] 经过指令精调的Alpaca会比LLaMA多一个pad token,因此请勿混用LLaMA/Alpaca词表 。

Chinese-LLaMA-Alpaca的 的安装

**1、模型下载:中文LLaMA、Alpaca大模型下载地址:LoRA

权重无法单独使用(理解为原LLaMA模型上的一个补丁)+需要合并原版LLaMA模型才能使用**

Facebook官方发布的LLaMA模型禁止商用,并且官方没有正式开源模型权重(虽然网上已经有很多第三方的下载地址)。为了遵循相应的许可,这里发布的是LoRA权重
,可以理解为原LLaMA模型上的一个“补丁”,两者合并即可获得完整版权重。以下中文LLaMA/Alpaca
LoRA模型无法单独使用,需要搭配原版LLaMA模型。请参考本项目给出的[合并模型](https://github.com/ymcui/Chinese-LLaMA-
Alpaca#%E5%90%88%E5%B9%B6%E6%A8%A1%E5%9E%8B “合并模型”)步骤重构模型。
实际上,由于LLaMA许可限制无法提供原版模型,LoRA模型本身也不完整,所以必须与原版LLaMA模型合并后才能形成可用的完整中文大模型。这是遵循开源协议的一种妥协方案。

T1、直接从网盘下载
[推荐模型下载](https://github.com/ymcui/Chinese-LLaMA-

Alpaca#%E6%8E%A8%E8%8D%90%E6%A8%A1%E5%9E%8B%E4%B8%8B%E8%BD%BD “推荐模型下载”)

以下为本项目推荐使用的模型列表,通常使用了更多的训练数据和优化的模型训练方法和参数,请优先使用这些模型(其余模型请查看[其他模型](https://github.com/ymcui/Chinese-
LLaMA-Alpaca#%E5%85%B6%E4%BB%96%E6%A8%A1%E5%9E%8B
“其他模型”))。如希望体验类ChatGPT对话交互,请使用Alpaca模型,而不是LLaMA模型。
对于Alpaca模型,Pro版针对回复内容过短的问题进行改进,模型回复效果有明显提升;如果更偏好短回复,请选择Plus系列。

模型名称 类型 训练数据 重构模型[1] 大小[2] LoRA下载[3] Chinese-LLaMA-Plus-7B 基座模型 通用120G 原版LLaMA-7B 790M [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1N97m3rBj- rp-J1X8rgRfluyomEscfAq0/view?usp=sharing “[Google Drive]”) Chinese-LLaMA-Plus-13B 基座模型 通用120G 原版LLaMA-13B 1.0G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1q0L5Me_1j_9iiRRNfuEFUt3SOjQo3-g3/view?usp=share_link “[Google Drive]”) Chinese-LLaMA-Plus-33B ? 基座模型 通用120G 原版LLaMA-33B 1.3G[6] [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1S4pBPiIZo7fXqf8hjnFaeE7Z-yZFEta9/view?usp=share_link “[Google Drive]”) Chinese-Alpaca-Pro-7B ? 指令模型 指令4.3M _原版LLaMA-7B & LLaMA-Plus-7B_[4] 1.1G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1yfIJ2IXymaTaJ8l7VMnb5LnvQFx3idh-/view?usp=share_link “[Google Drive]”) Chinese-Alpaca-Pro-13B ? 指令模型 指令4.3M _原版LLaMA-13B & LLaMA-Plus-13B[4]_ 1.3G [[百度网盘]](https://pan.baidu.com/s/1ok5Iiou- MovZa7bFLvt4uA?pwd=m79g “[百度网盘]”) [[Google Drive]](https://drive.google.com/file/d/1IY8PzMje1LM2bIgnniArnmmE8qYaJV_I/view?usp=share_link “[Google Drive]”) Chinese-Alpaca-Pro-33B ? 指令模型 指令4.3M _原版LLaMA-33B & LLaMA-Plus-33B[4]_ 2.1G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/14sFEhRq9c-p8S_TiVYNBnmPr4hk- nhs-/view?usp=share_link “[Google Drive]”)

[1] 重构需要原版LLaMA模型,去LLaMA项目申请使用或参考这个PR。因版权问题本项目无法提供下载链接。
[2] 经过重构后的模型大小比同等量级的原版LLaMA大一些(主要因为扩充了词表)。
[3]
下载后务必检查压缩包中模型文件的SHA256是否一致,请查看[SHA256.md](https://github.com/ymcui/Chinese-
LLaMA-Alpaca/blob/main/SHA256.md “SHA256.md”)。
[4] Alpaca-Plus模型需要同时下载对应的LLaMA-
Plus模型,请参考[合并教程](https://github.com/ymcui/Chinese-LLaMA-
Alpaca/wiki/%E6%89%8B%E5%8A%A8%E6%A8%A1%E5%9E%8B%E5%90%88%E5%B9%B6%E4%B8%8E%E8%BD%AC%E6%8D%A2#%E5%A4%9Alora%E6%9D%83%E9%87%8D%E5%90%88%E5%B9%B6%E9%80%82%E7%94%A8%E4%BA%8Echinese-
alpaca-plus “合并教程”)。
[5] 有些地方称为30B,实际上是Facebook在发布模型时写错了,论文里仍然写的是33B。
[6] 采用FP16存储,故模型体积较小。

压缩包内文件目录如下(以Chinese-LLaMA-7B为例):

chinese_llama_lora_7b/
  - adapter_config.json		# LoRA权重配置文件
  - adapter_model.bin		# LoRA权重文件
  - special_tokens_map.json	# special_tokens_map文件
  - tokenizer_config.json	# tokenizer配置文件
  - tokenizer.model		# tokenizer文件 
[其他模型下载](https://github.com/ymcui/Chinese-LLaMA-

Alpaca#%E5%85%B6%E4%BB%96%E6%A8%A1%E5%9E%8B%E4%B8%8B%E8%BD%BD “其他模型下载”)

由于训练方式和训练数据等因素影响,以下模型已不再推荐使用(特定场景下可能仍然有用)
,请优先使用上一节中的[推荐模型](https://github.com/ymcui/Chinese-LLaMA-
Alpaca#%E6%8E%A8%E8%8D%90%E4%B8%8B%E8%BD%BD%E6%A8%A1%E5%9E%8B “推荐模型”)。

模型名称 类型 训练数据 重构模型 大小 LoRA下载 Chinese-LLaMA-7B 基座模型 通用20G 原版LLaMA-7B 770M [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1iQp9T-BHjBjIrFWXq_kIm_cyNmpvv5WN/view?usp=sharing “[Google Drive]”) Chinese-LLaMA-13B 基座模型 通用20G 原版LLaMA-13B 1.0G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/12q9EH4mfKRnoKlbkkhzv1xDwWnroo9VS/view?usp=sharing “[Google Drive]”) Chinese-LLaMA-33B 基座模型 通用20G 原版LLaMA-33B 2.7G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1NwsLYbuEByUxre5GqTN5EkxiuZSRxUy_/view?usp=share_link “[Google Drive]”) Chinese-Alpaca-7B 指令模型 指令2M 原版LLaMA-7B 790M [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1JvFhBpekYiueWiUL3AF1TtaWDb3clY5D/view?usp=sharing “[Google Drive]”) Chinese-Alpaca-13B 指令模型 指令3M 原版LLaMA-13B 1.1G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1gzMc0xMCpXsXmU1uxFlgQ8VRnWNtDjD8/view?usp=share_link “[Google Drive]”) Chinese-Alpaca-33B 指令模型 指令4.3M 原版LLaMA-33B 2.8G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1YeSgnZWaRkKdmYa- JHiIlcvqhrDd4-Y4/view?usp=share_link “[Google Drive]”) Chinese-Alpaca-Plus-7B 指令模型 指令4M _原版LLaMA-7B & LLaMA-Plus-7B_ 1.1G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1EDcTmq6tDmRxqarpapdyDGBE9opY0zrB/view?usp=share_link “[Google Drive]”) Chinese-Alpaca-Plus-13B 指令模型 指令4.3M _原版LLaMA-13B & LLaMA-Plus-13B_ 1.3G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1CcLJvY7XsFAOjfSIqCpDI7jf3EEPDcEF/view?usp=share_link “[Google Drive]”) Chinese-Alpaca-Plus-33B 指令模型 指令4.3M _原版LLaMA-33B & LLaMA-Plus-33B_ 2.1G [百度网盘] [[Google Drive]](https://drive.google.com/file/d/1YUaT- NOReoF-z1vzj2khwYKdj4Z_ekbO/view?usp=share_link “[Google Drive]”)
T2、在transformers平台下载,[?transformers调用](https://github.com/ymcui/Chinese-

LLaMA-Alpaca#transformers%E8%B0%83%E7%94%A8 “?transformers调用”)

可以在?Model
Hub下载以上所有模型,并且使用transformers和PEFT调用中文LLaMA或Alpaca LoRA模型。以下模型调用名称指的是使用.from_pretrained()中指定的模型名称。

Pro版命名(只有Alpaca):ziqingyang/chinese-alpaca-pro-lora-${model_size}

Plus版命名:ziqingyang/chinese-${model_name}-plus-lora-${model_size}

基础版命名:ziqingyang/chinese-${model_name}-lora-${model_size}

$model_namellama或者alpaca$model_size7b, 13b, 33b

举例:Chinese-LLaMA-Plus-33B模型对应的调用名称是ziqingyang/chinese-llama-plus-lora-33b

详细清单与模型下载地址:https://huggingface.co/ziqingyang

**2、合并模型(重要):

LoRA权重模型**,可以理解为原LLaMA模型上的一个“补丁”,两者合并即可获得完整版权重;中文LLaMA/Alpaca
LoRA模型无法单独使用,需要搭配原版LLaMA模型

介绍如何将下载的LoRA模型与原版LLaMA合并

前面提到LoRA模型无法单独使用,必须与原版LLaMA进行合并才能转为完整模型,以便进行模型推理、量化或者进一步训练。请选择以下方法对模型进行转换合并。

方式 适用场景 教程 在线转换 Colab用户可利用本项目提供的notebook进行在线转换并量化模型 [链接](https://github.com/ymcui/Chinese-LLaMA- Alpaca/wiki/%E5%9C%A8%E7%BA%BF%E6%A8%A1%E5%9E%8B%E5%90%88%E5%B9%B6%E4%B8%8E%E8%BD%AC%E6%8D%A2 “链接”) 手动转换 离线方式转换,生成不同格式的模型,以便进行量化或进一步精调 [链接](https://github.com/ymcui/Chinese-LLaMA- Alpaca/wiki/%E6%89%8B%E5%8A%A8%E6%A8%A1%E5%9E%8B%E5%90%88%E5%B9%B6%E4%B8%8E%E8%BD%AC%E6%8D%A2 “链接”)

以下是合并模型后,FP16精度和4-bit量化后的大小,转换前确保本机有足够的内存和磁盘空间(最低要求):

模型版本 7B 13B 33B 65B 原模型大小(FP16) 13 GB 24 GB 60 GB 120 GB 量化后大小(8-bit) 7.8 GB 14.9 GB 32.4 GB ~60 GB 量化后大小(4-bit) 3.9 GB 7.8 GB 17.2 GB 38.5 GB

具体内容请参考本项目 >>> [? GitHub Wiki](https://github.com/ymcui/Chinese-LLaMA-
Alpaca/wiki/%E6%A8%A1%E5%9E%8B%E5%90%88%E5%B9%B6%E4%B8%8E%E8%BD%AC%E6%8D%A2 “?
GitHub Wiki”)

3、训练细节—介绍了中文LLaMA、Alpaca大模型的训练细节: 词表扩充→预训练→指令精调

整个训练流程包括词表扩充、预训练和指令精调三部分。

本项目的模型均在原LLaMA词表的基础上扩充了中文单词,代码请参考merge_tokenizers.py 预训练和指令精调代码参考了?transformers中的run_clm.py和Stanford Alpaca项目中数据集处理的相关部分 已开源用于预训练和指令精调的训练脚本:预训练脚本Wiki、指令精调脚本Wiki

具体内容请参考本项目 >>> [? GitHub Wiki](https://github.com/ymcui/Chinese-LLaMA-
Alpaca/wiki/%E8%AE%AD%E7%BB%83%E7%BB%86%E8%8A%82 “? GitHub Wiki”)

Chinese-LLaMA-Alpaca的 的使用方法

1、本地推理与快速部署:介绍了如何对模型进行量化并使用个人电脑部署并体验大模型

本项目中的模型主要支持以下量化、推理和部署方式。

推理和部署方式 特点 平台 CPU GPU 量化加载 图形界面 教程 llama.cpp 丰富的量化选项和高效本地推理 通用 ✅ ✅ ✅ ❌ [link](https://github.com/ymcui/Chinese-LLaMA- Alpaca/wiki/llama.cpp%E9%87%8F%E5%8C%96%E9%83%A8%E7%BD%B2 “link”) ?Transformers 原生transformers推理接口 通用 ✅ ✅ ✅ ✅ [link](https://github.com/ymcui/Chinese- LLaMA-Alpaca/wiki/%E4%BD%BF%E7%94%A8Transformers%E6%8E%A8%E7%90%86 “link”) [text-generation-webui](https://github.com/oobabooga/text-generation-webui “text-generation-webui”) 前端Web UI界面的部署方式 通用 ✅ ✅ ✅ ✅ [link](https://github.com/ymcui/Chinese-LLaMA- Alpaca/wiki/%E4%BD%BF%E7%94%A8text-generation- webui%E6%90%AD%E5%BB%BA%E7%95%8C%E9%9D%A2 “link”) LlamaChat macOS下的图形交互界面 MacOS ✅ ❌ ✅ ✅ [link](https://github.com/ymcui/Chinese- LLaMA- Alpaca/wiki/%E4%BD%BF%E7%94%A8LlamaChat%E5%9B%BE%E5%BD%A2%E7%95%8C%E9%9D%A2%EF%BC%88macOS%EF%BC%89 “link”) LangChain LLM应用开发框架,适用于进行二次开发 通用 ✅† ✅ ✅† ❌ [link](https://github.com/ymcui/Chinese-LLaMA- Alpaca/wiki/%E4%B8%8ELangChain%E8%BF%9B%E8%A1%8C%E9%9B%86%E6%88%90 “link”) privateGPT 基于LangChain的多文档本地问答框架 通用 ✅ ✅ ✅ ❌ [link](https://github.com/ymcui/Chinese-LLaMA- Alpaca/wiki/%E4%BD%BF%E7%94%A8privateGPT%E8%BF%9B%E8%A1%8C%E5%A4%9A%E6%96%87%E6%A1%A3%E9%97%AE%E7%AD%94 “link”) [Colab Gradio Demo](https://github.com/ymcui/Chinese-LLaMA- Alpaca/blob/main/notebooks/gradio_web_demo.ipynb “Colab Gradio Demo”) Colab中启动基于Gradio的交互式Web服务 通用 ✅ ✅ ✅ ❌ [link](https://colab.research.google.com/github/ymcui/Chinese-LLaMA- Alpaca/blob/main/notebooks/gradio_web_demo.ipynb “link”) API调用 仿OpenAI API接口的服务器Demo 通用 ✅ ✅ ✅ ❌ [link](https://github.com/ymcui/Chinese-LLaMA- Alpaca/wiki/API%E8%B0%83%E7%94%A8 “link”)

†: LangChain框架支持,但教程中未实现;详细说明请参考LangChain官方文档。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版CSDN大礼包:《AGI大模型学习资源包》免费分享!

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

大模型 AI 能干什么? 大模型是怎样获得「智能」的? 用好 AI 的核心心法 大模型应用业务架构 大模型应用技术架构 代码示例:向 GPT-3.5 灌入新知识 提示工程的意义和核心思想 Prompt 典型构成 指令调优方法论 思维链和思维树 Prompt 攻击和防范 …

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

为什么要做 RAG 搭建一个简单的 ChatPDF 检索的基础概念 什么是向量表示(Embeddings) 向量数据库与向量检索 基于向量检索的 RAG 搭建 RAG 系统的扩展知识 混合检索与 RAG-Fusion 简介 向量模型本地部署 …

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

为什么要做 RAG 什么是模型 什么是模型训练 求解器 & 损失函数简介 小实验2:手写一个简单的神经网络并训练它 什么是训练/预训练/微调/轻量化微调 Transformer结构简介 轻量化微调 实验数据集的构建 …

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

硬件选型 带你了解全球大模型 使用国产大模型服务 搭建 OpenAI 代理 热身:基于阿里云 PAI 部署 Stable Diffusion 在本地计算机运行大模型 大模型的私有化部署 基于 vLLM 部署大模型 案例:如何优雅地在阿里云私有部署开源大模型 部署一套开源 LLM 项目 内容安全 互联网信息服务算法备案 …

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版CSDN大礼包:《AGI大模型学习资源包》免费分享!

更新时间 2024-06-21