# ChatGLM2-6B
<p align="center">
🤗 <a href="https://huggingface.co/THUDM/chatglm2-6b" target="_blank">HF Repo</a> • 🐦 <a href="https://twitter.com/thukeg" target="_blank">Twitter</a> • 📃 <a href="https://arxiv.org/abs/2103.10360" target="_blank">[GLM@ACL 22]</a> <a href="https://github.com/THUDM/GLM" target="_blank">[GitHub]</a> • 📃 <a href="https://arxiv.org/abs/2210.02414" target="_blank">[GLM-130B@ICLR 23]</a> <a href="https://github.com/THUDM/GLM-130B" target="_blank">[GitHub]</a> <br>
</p>
<p align="center">
👋 加入我们的 <a href="https://join.slack.com/t/chatglm/shared_invite/zt-1y7pqoloy-9b1g6T6JjA8J0KxvUjbwJw" target="_blank">Slack</a> 和 <a href="resources/WECHAT.md" target="_blank">WeChat</a>
</p>
<p align="center">
📍在 <a href="https://www.chatglm.cn">chatglm.cn</a> 体验更大规模的 ChatGLM 模型。
</p>
*Read this in [English](README_EN.md)*
新一代开源模型 [ChatGLM3-6B](https://github.com/THUDM/ChatGLM3) 已发布,拥有10B以下最强的基础模型,支持工具调用(Function Call)、代码执行(Code Interpreter)、Agent 任务等功能。
## 介绍
ChatGLM**2**-6B 是开源中英双语对话模型 [ChatGLM-6B](https://github.com/THUDM/ChatGLM-6B) 的第二代版本,在保留了初代模型对话流畅、部署门槛较低等众多优秀特性的基础之上,ChatGLM**2**-6B 引入了如下新特性:
1. **更强大的性能**:基于 ChatGLM 初代模型的开发经验,我们全面升级了 ChatGLM2-6B 的基座模型。ChatGLM2-6B 使用了 [GLM](https://github.com/THUDM/GLM) 的混合目标函数,经过了 1.4T 中英标识符的预训练与人类偏好对齐训练,[评测结果](#评测结果)显示,相比于初代模型,ChatGLM2-6B 在 MMLU(+23%)、CEval(+33%)、GSM8K(+571%) 、BBH(+60%)等数据集上的性能取得了大幅度的提升,在同尺寸开源模型中具有较强的竞争力。
2. **更长的上下文**:基于 [FlashAttention](https://github.com/HazyResearch/flash-attention) 技术,我们将基座模型的上下文长度(Context Length)由 ChatGLM-6B 的 2K 扩展到了 32K,并在对话阶段使用 8K 的上下文长度训练。对于更长的上下文,我们发布了 [ChatGLM2-6B-32K](https://huggingface.co/THUDM/chatglm2-6b-32k) 模型。[LongBench](https://github.com/THUDM/LongBench) 的测评结果表明,在等量级的开源模型中,ChatGLM2-6B-32K 有着较为明显的竞争优势。
3. **更高效的推理**:基于 [Multi-Query Attention](http://arxiv.org/abs/1911.02150) 技术,ChatGLM2-6B 有更高效的推理速度和更低的显存占用:在官方的模型实现下,推理速度相比初代提升了 42%,INT4 量化下,6G 显存支持的对话长度由 1K 提升到了 8K。
4. **更开放的协议**:ChatGLM2-6B 权重对学术研究**完全开放**,在填写[问卷](https://open.bigmodel.cn/mla/form)进行登记后**亦允许免费商业使用**。
-----
ChatGLM2-6B 开源模型旨在与开源社区一起推动大模型技术发展,恳请开发者和大家遵守[开源协议](MODEL_LICENSE),勿将开源模型和代码及基于开源项目产生的衍生物用于任何可能给国家和社会带来危害的用途以及用于任何未经过安全评估和备案的服务。**目前,本项目团队未基于 ChatGLM2-6B 开发任何应用,包括网页端、安卓、苹果 iOS 及 Windows App 等应用。**
尽管模型在训练的各个阶段都尽力确保数据的合规性和准确性,但由于 ChatGLM2-6B 模型规模较小,且模型受概率随机性因素影响,无法保证输出内容的准确性,且模型易被误导。**本项目不承担开源模型和代码导致的数据安全、舆情风险或发生任何模型被误导、滥用、传播、不当利用而产生的风险和责任。**
## 更新信息
**[2023/07/31]** 发布 [ChatGLM2-6B-32K](https://huggingface.co/THUDM/chatglm2-6b-32k) 模型,提升对于长文本的理解能力。
**[2023/07/25]** 发布 [CodeGeeX2](https://github.com/THUDM/CodeGeeX2) 模型,基于 ChatGLM2-6B 加入代码预训练实现,代码能力全面提升。
**[2023/07/04]** 发布 P-Tuning v2 与 全参数微调脚本,参见 [P-Tuning](./ptuning)。
## 友情链接
对 ChatGLM2 进行加速的开源项目:
* [fastllm](https://github.com/ztxz16/fastllm/): 全平台加速推理方案,单GPU批量推理每秒可达10000+token,手机端最低3G内存实时运行(骁龙865上约4~5 token/s)
* [chatglm.cpp](https://github.com/li-plus/chatglm.cpp): 类似 llama.cpp 的 CPU 量化加速推理方案,实现 Mac 笔记本上实时对话
* [ChatGLM2-TPU](https://github.com/sophgo/ChatGLM2-TPU): 采用TPU加速推理方案,在算能端侧芯片BM1684X(16T@FP16,内存16G)上实时运行约5 token/s
基于或使用了 ChatGLM2-6B 的开源项目:
* [Chuanhu Chat](https://github.com/GaiZhenbiao/ChuanhuChatGPT): 为各个大语言模型和在线模型API提供美观易用、功能丰富、快速部署的用户界面,支持ChatGLM2-6B。
支持 ChatGLM-6B 和相关应用在线训练的示例项目:
* [ChatGLM2-6B 的部署与微调教程](https://www.heywhale.com/mw/project/64984a7b72ebe240516ae79c)
## 评测结果
我们选取了部分中英文典型数据集进行了评测,以下为 ChatGLM2-6B 模型在 [MMLU](https://github.com/hendrycks/test) (英文)、[C-Eval](https://cevalbenchmark.com/static/leaderboard.html)(中文)、[GSM8K](https://github.com/openai/grade-school-math)(数学)、[BBH](https://github.com/suzgunmirac/BIG-Bench-Hard)(英文) 上的测评结果。在 [evaluation](./evaluation/README.md) 中提供了在 C-Eval 上进行测评的脚本。
### MMLU
| Model | Average | STEM | Social Sciences | Humanities | Others |
| ----- |------| ---- |------|-------| ----- |
| ChatGLM-6B | 40.63 | 33.89 | 44.84 | 39.02 | 45.71 |
| ChatGLM2-6B (base) | 47.86 | 41.20 | 54.44 | 43.66 | 54.46 |
| ChatGLM2-6B | 45.46 | 40.06 | 51.61 | 41.23 | 51.24 |
| ChatGLM2-12B (base) | 56.18 | 48.18 | 65.13 | 52.58 | 60.93 |
| ChatGLM2-12B | 52.13 | 47.00 | 61.00 | 46.10 | 56.05 |
> Chat 模型使用 zero-shot CoT (Chain-of-Thought) 的方法测试,Base 模型使用 few-shot answer-only 的方法测试
### C-Eval
| Model | Average | STEM | Social Sciences | Humanities | Others |
| ----- |---------|-------| ----- |------------|--------|
| ChatGLM-6B | 38.9 | 33.3 | 48.3 | 41.3 | 38.0 |
| ChatGLM2-6B (base) | 51.7 | 48.6 | 60.5 | 51.3 | 49.8 |
| ChatGLM2-6B | 50.1 | 46.4 | 60.4 | 50.6 | 46.9 |
| ChatGLM2-12B (base) | 61.6 | 55.4 | 73.7 | 64.2 | 59.4 |
| ChatGLM2-12B | 57.0 | 52.1 | 69.3 | 58.5 | 53.2 |
> Chat 模型使用 zero-shot CoT 的方法测试,Base 模型使用 few-shot answer only 的方法测试
### GSM8K
| Model | Accuracy | Accuracy (Chinese)* |
|--------------|----------| - |
| ChatGLM-6B | 4.82 | 5.85 |
| ChatGLM2-6B (base) | 32.37 | 28.95 |
| ChatGLM2-6B | 28.05 | 20.45 |
| ChatGLM2-12B (base) | 40.94 | 42.71 |
| ChatGLM2-12B | 38.13 | 23.43 |
> 所有模型均使用 few-shot CoT 的方法测试,CoT prompt 来自 http://arxiv.org/abs/2201.11903
>
> \* 我们使用翻译 API 翻译了 GSM8K 中的 500 道题目和 CoT prompt 并进行了人工校对
### BBH
| Model | Accuracy |
|--------------|-------|
| ChatGLM-6B | 18.73 |
| ChatGLM2-6B (base) | 33.68 |
| ChatGLM2-6B | 30.00 |
| ChatGLM2-12B (base) | 36.02 |
| ChatGLM2-12B | 39.98 |
> 所有模型均使用 few-shot CoT 的方法测试,CoT prompt 来自 https://github.com/suzgunmirac/BIG-Bench-Hard/tree/main/cot-prompts
## 推理性能
ChatGLM2-6B 使用了 [Multi-Query Attention](http://arxiv.org/abs/1911.02150),提高了生成速度。生成 2000 个字符的平均速度对比如下
| Model | 推理速度 (字符/秒) |
| ---- | ----- |
| ChatGLM-6B | 31.49 |
| ChatGLM2-6B | 44.62 |
> 使用官方实现,batch
没有合适的资源?快使用搜索试试~ 我知道了~
清华大模型Chatglm2-6B的微调方法和微调模型使用方式(非常仔细,值得借鉴)
共89个文件
py:22个
json:18个
sh:6个
7 下载量 6 浏览量
2024-01-22
13:06:13
上传
评论 1
收藏 30.6MB RAR 举报
温馨提示
清华大模型Chatglm2-6B的微调方法和微调模型使用方式(非常仔细,值得借鉴)
资源推荐
资源详情
资源评论
收起资源包目录
ChatGLM2-6B-main.rar (89个子文件)
ChatGLM2-6B-main
utils.py 2KB
TestChatglm3.py 0B
.github
ISSUE_TEMPLATE
bug_report.yaml 2KB
feature_request.yml 763B
config.yml 27B
MODEL_LICENSE 4KB
resources
web-demo2.gif 2.63MB
wechat.jpg 151KB
WECHAT.md 223B
web-demo.gif 2.18MB
math.png 621KB
long-context.png 1.06MB
cli-demo.png 463KB
knowledge.png 354KB
cli_demo.py 2KB
web_demo2.py 2KB
openai_api.py 6KB
.idea
workspace.xml 6KB
misc.xml 313B
inspectionProfiles
profiles_settings.xml 174B
ChatGLM2-6B-main.iml 618B
modules.xml 291B
.gitignore 184B
web_demo.py 4KB
api.py 2KB
README_EN.md 16KB
ptuning
evaluate_finetune.sh 603B
web_demo.sh 219B
trainer_seq2seq.py 11KB
main.py 17KB
evaluate.sh 692B
AdvertiseGen
trainss.json 16KB
trains.json 5.25MB
devss.json 22KB
devs.json 1.43MB
evaluate.bat 648B
trainer.py 3KB
output
adgen-chatglm2-6b-pt-$PRE_SEQ_LEN-$LR
trainer_state.json 2KB
checkpoint-10
optimizer.pt 14MB
model.safetensors 7MB
training_args.bin 4KB
trainer_state.json 2KB
modeling_chatglm.py 54KB
scheduler.pt 627B
tokenization_chatglm.py 10KB
generation_config.json 117B
rng_state.pth 14KB
quantization.py 14KB
config.json 1KB
tokenizer_config.json 444B
tokenizer.model 995KB
special_tokens_map.json 4B
configuration_chatglm.py 2KB
all_results.json 200B
runs
Jan17_11-17-17_WIN-UFPSSMLF1MN
events.out.tfevents.1705461489.WIN-UFPSSMLF1MN.9792.0 7KB
train_results.json 200B
checkpoint-5
optimizer.pt 14MB
model.safetensors 7MB
training_args.bin 4KB
trainer_state.json 1KB
modeling_chatglm.py 54KB
scheduler.pt 627B
tokenization_chatglm.py 10KB
generation_config.json 117B
rng_state.pth 14KB
quantization.py 14KB
config.json 1KB
tokenizer_config.json 444B
tokenizer.model 995KB
special_tokens_map.json 4B
configuration_chatglm.py 2KB
ds_train_finetune.sh 768B
web_demo.py 6KB
trainss.bat 820B
trains.bat 818B
train_chat.sh 823B
model
chatglm2-6B
chatglm3-6b-32k
train.sh 971B
arguments.py 8KB
deepspeed.json 489B
__pycache__
trainer.cpython-39.pyc 2KB
trainer_seq2seq.cpython-39.pyc 8KB
arguments.cpython-39.pyc 6KB
README.md 9KB
requirements.txt 245B
README.md 20KB
FAQ.md 946B
evaluation
evaluate_ceval.py 3KB
README.md 607B
ChatTest.py 2KB
共 89 条
- 1
资源评论
nfkjdx
- 粉丝: 313
- 资源: 12
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功