zai-org/ChatGLM3
Python
Captured source
source ↗zai-org/ChatGLM3
Description: ChatGLM3 series: Open Bilingual Chat LLMs | 开源双语对话语言模型
Language: Python
License: Apache-2.0
Stars: 13679
Forks: 1591
Open issues: 35
Created: 2023-10-26T06:22:47Z
Pushed: 2025-01-13T06:55:26Z
Default branch: main
Fork: no
Archived: no
README:
ChatGLM3
📄 Report • 🤗 HF Repo • 🤖 ModelScope • 🟣 WiseModel • 📔 Document • 🧰 OpenXLab • 🐦 Twitter
👋 加入我们的 Discord 和 微信
📍在 chatglm.cn 体验更大规模的 ChatGLM 模型。
[Read this in English.](./README_en.md)
📔 关于ChatGLM3-6B 更为详细的使用信息,可以参考
+ ChatGLM3 开放技术文档 + Bilibili video + YouTube video
GLM-4 开源模型和API
我们已经发布最新的 GLM-4 模型,该模型在多个指标上有了新的突破,您可以在以下两个渠道体验我们的最新模型。
+ GLM-4 开源模型 我们已经开源了 GLM-4-9B 系列模型,在各项指标的测试上有明显提升,欢迎尝试。 + 智谱清言 体验最新版 GLM-4,包括 GLMs,All tools等功能。 + API平台 新一代 API 平台已经上线,您可以直接在 API 平台上体验 GLM-4-0520、GLM-4-air、GLM-4-airx、GLM-4-flash、GLM-4、GLM-3-Turbo、CharacterGLM-3,CogView-3 等新模型。 其中GLM-4、GLM-3-Turbo两个模型支持了 System Prompt、Function Call、 Retrieval、Web_Search等新功能,欢迎体验。
+ GLM-4 API 开源教程 GLM-4 API教程和基础应用,欢迎尝试。 API相关问题可以在本开源教程疑问,或者使用 GLM-4 API AI助手 来获得常见问题的帮助。
-----
ChatGLM3 介绍
ChatGLM3 是智谱AI和清华大学 KEG 实验室联合发布的对话预训练模型。ChatGLM3-6B 是 ChatGLM3 系列中的开源模型,在保留了前两代模型对话流畅、部署门槛低等众多优秀特性的基础上,ChatGLM3-6B 引入了如下特性:
1. 更强大的基础模型: ChatGLM3-6B 的基础模型 ChatGLM3-6B-Base 采用了更多样的训练数据、更充分的训练步数和更合理的训练策略。在语义、数学、推理、代码、知识等不同角度的数据集上测评显示,* *ChatGLM3-6B-Base 具有在 10B 以下的基础模型中最强的性能。 2. 更完整的功能支持: ChatGLM3-6B 采用了全新设计的 [Prompt 格式](PROMPT.md) ,除正常的多轮对话外。同时原生支持[工具调用](tools_using_demo/README.md)(Function Call)、代码执行(Code Interpreter)和 Agent 任务等复杂场景。 3. 更全面的开源序列: 除了对话模型 [ChatGLM3-6B](https://huggingface.co/THUDM/chatglm3-6b) 外,还开源了基础模型 [ChatGLM3-6B-Base](https://huggingface.co/THUDM/chatglm3-6b-base) 、长文本对话模型 [ChatGLM3-6B-32K](https://huggingface.co/THUDM/chatglm3-6b-32k) 和进一步强化了对于长文本理解能力的 [ChatGLM3-6B-128K](https://huggingface.co/THUDM/chatglm3-6b-128k)。以上所有权重对学术研究完全开放 ,在填写 [问卷](https://open.bigmodel.cn/mla/form) 进行登记后亦允许免费商业使用**。
-----
ChatGLM3 开源模型旨在与开源社区一起推动大模型技术发展,恳请开发者和大家遵守 [开源协议](MODEL_LICENSE) ,勿将开源模型和代码及基于开源项目产生的衍生物用于任何可能给国家和社会带来危害的用途以及用于任何未经过安全评估和备案的服务。目前,本项目团队未基于 ChatGLM3 开源模型开发任何应用,包括网页端、安卓、苹果 iOS 及 Windows App 等应用。
尽管模型在训练的各个阶段都尽力确保数据的合规性和准确性,但由于 ChatGLM3-6B 模型规模较小,且模型受概率随机性因素影响,无法保证输出内容的准确。同时模型的输出容易被用户的输入误导。* *本项目不承担开源模型和代码导致的数据安全、舆情风险或发生任何模型被误导、滥用、传播、不当利用而产生的风险和责任。**
模型列表
| Model | Seq Length | Download | |:----------------:|:----------:|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| | ChatGLM3-6B | 8k | HuggingFace \| ModelScope \| WiseModel \| OpenXLab | | ChatGLM3-6B-Base | 8k | HuggingFace \| ModelScope \| WiseModel \| OpenXLabl| | ChatGLM3-6B-32K | 32k | HuggingFace \| ModelScope \| WiseModel \| OpenXLab | | ChatGLM3-6B-128K | 128k | HuggingFace | ModelScope\| OpenXLab |
请注意,所有模型的最新更新都会在 Huggingface 率先发布。 ModelScope 和 WiseModel 由于没有与 Huggingface 同步,需要开发人员手动更新,可能会在 Huggingface 更新后一段时间内同步更新。
友情链接
以下优秀开源仓库已经对 ChatGLM3-6B 模型深度支持,欢迎大家扩展学习。
推理加速:
- chatglm.cpp: 类似 llama.cpp 的量化加速推理方案,实现笔记本上实时对话
- ChatGLM3-TPU: 采用TPU加速推理方案,在算能端侧芯片BM1684X(16T@FP16,内存16G)上实时运行约7.5 token/s
- TensorRT-LLM:
NVIDIA开发的高性能 GPU 加速推理方案,可以参考此 [步骤](./tensorrt_llm_demo/README.md) 部署 ChatGLM3-6B 模型
Intel 开发的高性能 CPU 和 GPU 加速推理方案,可以参考此 [步骤](./Intel_device_demo/openvino_demo/README.md) 部署 ChatGLM3-6B 模型
高效微调:
- LLaMA-Factory: 优秀易上手的高效微调框架。
应用框架:
- LangChain-Chatchat: 基于 ChatGLM 等大语言模型与 Langchain
等应用框架实现,开源、可离线部署的检索增强生成(RAG)大模型知识库项目。
- BISHENG: 开源大模型应用开发平台,赋能和加速大模型应用开发落地,帮助用户以最佳体验进入下一代应用开发模式。
- RAGFlow: RAGFlow 是一款基于深度文档理解构建的开源 RAG(Retrieval-Augmented Generation)引擎。可为各种规模的企业及个人提供一套精简的 RAG 工作流程,结合大语言模型(LLM)针对用户各类不同的复杂格式数据提供可靠的问答以及有理有据的引用。
评测结果
典型任务
我们选取了 8 个中英文典型数据集,在 ChatGLM3-6B (base) 版本上进行了性能测试。
| Model | GSM8K | MATH | BBH | MMLU | C-Eval | CMMLU | MBPP | AGIEval | |------------------|:-----:|:----:|:----:|:----:|:------:|:-----:|:----:|:-------:| | ChatGLM2-6B-Base | 32.4 | 6.5 | 33.7 | 47.9 | 51.7 | 50.0 | - | - | | Best Baseline | 52.1 | 13.1 | 45.0 | 60.1 | 63.5 | 62.2 | 47.5 | 45.8 | | ChatGLM3-6B-Base | 72.3 | 25.7 | 66.1 | 61.4 | 69.0 | 67.5 | 52.4 | 53.7 |
> Best Baseline 指的是截止 2023年10月27日、模型参数在 10B 以下、在对应数据集上表现最好的预训练模型,不包括只针对某一项任务训练而未保持通用能力的模型。
> 对 ChatGLM3-6B-Base 的测试中,BBH 采用 3-shot 测试,需要推理的 GSM8K、MATH 采用 0-shot CoT 测试,MBPP 采用 0-shot > 生成后运行测例计算 Pass@1 ,其他选择题类型数据集均采用 0-shot 测试。
我们在多个长文本应用场景下对 ChatGLM3-6B-32K 进行了人工评估测试。与二代模型相比,其效果平均提升了超过 50%。在论文阅读、文档摘要和财报分析等应用中,这种提升尤为显著。此外,我们还在 LongBench 评测集上对模型进行了测试,具体结果如下表所示
| Model | 平均 | Summary | Single-Doc QA | Multi-Doc QA | Code | Few-shot | Synthetic |…
Excerpt shown — open the source for the full document.