Update README.md
Browse files
README.md
CHANGED
|
@@ -9,16 +9,23 @@ tags:
|
|
| 9 |
---
|
| 10 |
# ChatGLM-6B
|
| 11 |
## 介绍
|
| 12 |
-
ChatGLM-6B 是一个开源的、支持中英双语问答和对话的预训练语言模型,基于 [GLM](https://github.com/THUDM/GLM) 架构,具有 62 亿参数。ChatGLM-6B 使用了和 ChatGLM(内测中,地址 [https://chatglm.cn](https://chatglm.cn)
|
| 13 |
|
| 14 |
-
##
|
| 15 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
|
| 17 |
```shell
|
| 18 |
-
pip install "transformers>=4.23.1,icetk"
|
| 19 |
```
|
| 20 |
|
| 21 |
-
|
| 22 |
|
| 23 |
可以通过如下代码调用 ChatGLM-6B 模型来生成对话。
|
| 24 |
|
|
@@ -39,10 +46,11 @@ response, history = model.chat(tokenizer, query, history=history)
|
|
| 39 |
print(history)
|
| 40 |
```
|
| 41 |
|
| 42 |
-
|
| 43 |
|
| 44 |
## INT8 量化
|
| 45 |
-
|
|
|
|
| 46 |
|
| 47 |
```python
|
| 48 |
model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()
|
|
@@ -54,7 +62,7 @@ model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).ha
|
|
| 54 |
model = AutoModel.from_pretrained("THUDM/chatglm-6b", device_map="auto", load_in_8bit=True, trust_remote_code=True)
|
| 55 |
```
|
| 56 |
|
| 57 |
-
|
| 58 |
|
| 59 |
## 引用
|
| 60 |
|
|
|
|
| 9 |
---
|
| 10 |
# ChatGLM-6B
|
| 11 |
## 介绍
|
| 12 |
+
ChatGLM-6B 是一个开源的、支持中英双语问答和对话的预训练语言模型,基于 [General Language Model (GLM)](https://github.com/THUDM/GLM) 架构,具有 62 亿参数。ChatGLM-6B 使用了和 ChatGLM(内测中,地址 [https://chatglm.cn](https://chatglm.cn))相同的技术面向中文问答和对话进行优化。结合 INT4 量化技术,用户可以在消费级的显卡上进行本地部署(最低只需 6GB 显存)。在经过了约 1T tokens 中英双语训练,并辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的模型已经能生成相当符合人类偏好的回答。
|
| 13 |
|
| 14 |
+
## 硬件需求
|
| 15 |
+
|
| 16 |
+
| **量化等级** | **最低 GPU 显存** |
|
| 17 |
+
| -------------- | ----------------- |
|
| 18 |
+
| FP16(无量化) | 19 GB |
|
| 19 |
+
| INT8 | 10 GB |
|
| 20 |
+
| INT4 | 6 GB |
|
| 21 |
+
|
| 22 |
+
## 软件依赖
|
| 23 |
|
| 24 |
```shell
|
| 25 |
+
pip install "transformers>=4.23.1,icetk,cpm_kernels"
|
| 26 |
```
|
| 27 |
|
| 28 |
+
## 代码调用
|
| 29 |
|
| 30 |
可以通过如下代码调用 ChatGLM-6B 模型来生成对话。
|
| 31 |
|
|
|
|
| 46 |
print(history)
|
| 47 |
```
|
| 48 |
|
| 49 |
+
关于更多的使用说明,以及如何运行命令行和网页版本的 DEMO,请参考我们的 [Github repo](https://github.com/THUDM/ChatGLM-6B)。
|
| 50 |
|
| 51 |
## INT8 量化
|
| 52 |
+
|
| 53 |
+
默认情况下,模型以 FP16 精度加载,运行上述代码需要大概 19GB 显存。如果你的 GPU 显存有限,可以尝试运行量化后的模型,即将下述代码
|
| 54 |
|
| 55 |
```python
|
| 56 |
model = AutoModel.from_pretrained("THUDM/chatglm-6b", trust_remote_code=True).half().cuda()
|
|
|
|
| 62 |
model = AutoModel.from_pretrained("THUDM/chatglm-6b", device_map="auto", load_in_8bit=True, trust_remote_code=True)
|
| 63 |
```
|
| 64 |
|
| 65 |
+
进行 2 至 3 轮对话后,8-bit 量化下约占用 10GB 的 GPU 显存,4-bit 量化仅需占用 6GB 的 GPU 显存。随着对话轮数的增多,对应消耗显存也随之增长。
|
| 66 |
|
| 67 |
## 引用
|
| 68 |
|