引言
ChatGLM-6B是由清华大学开源的双语对话大模型,该模型有62亿参数,但在经过量化后模型体积大幅下降,因此不同于其他需要部署到服务器上的大模型,该模型可以部署到本地电脑,那么接下来我们来看看如何部署该模型。
首先是下载源码:双语对话大模型
随后下载对应的权重文件,这里我们使用的是Hugging Face提供的模型权重文件,但由于该网站需要,所以可以使用该网站的镜像网站:Hugging Face镜像网站,将ChatGLM-6B项目下载到本地:
环境部署
该项目使用python
语言开发,这里建议python>=3.9
,环境创建完成后激活进入:
conda create -n chatgpt python=3.10
activate chatgpt
随后便是安装相应依赖,直接使用requirements.txt
中的依赖包即可
pip install -r requirements.txt -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
环境如下:
Package Version
------------------------- ------------
accelerate 0.34.2
aiofiles 23.2.1
altair 5.4.1
annotated-types 0.7.0
anyio 4.4.0
attrs 24.2.0
blinker 1.8.2
cachetools 5.5.0
certifi 2024.8.30
charset-normalizer 3.3.2
click 8.1.7
colorama 0.4.6
contourpy 1.3.0
cpm-kernels 1.0.11
cycler 0.12.1
exceptiongroup 1.2.2
fastapi 0.114.2
ffmpy 0.4.0
filelock 3.16.0
fonttools 4.53.1
fsspec 2024.9.0
gitdb 4.0.11
GitPython 3.1.43
gradio 3.50.0
gradio_client 0.6.1
h11 0.14.0
httpcore 1.0.5
httpx 0.27.2
huggingface-hub 0.24.7
idna 3.10
importlib_resources 6.4.5
Jinja2 3.1.4
jsonschema 4.23.0
jsonschema-specifications 2023.12.1
kiwisolver 1.4.7
latex2mathml 3.77.0
Markdown 3.7
markdown-it-py 3.0.0
MarkupSafe 2.1.5
matplotlib 3.9.2
mdtex2html 1.3.0
mdurl 0.1.2
mpmath 1.3.0
narwhals 1.8.1
networkx 3.3
numpy 1.26.4
orjson 3.10.7
packaging 24.1
pandas 2.2.2
pillow 10.4.0
pip 24.2
protobuf 5.28.1
psutil 6.0.0
pyarrow 17.0.0
pydantic 2.9.1
pydantic_core 2.23.3
pydeck 0.9.1
pydub 0.25.1
Pygments 2.18.0
pyparsing 3.1.4
python-dateutil 2.9.0.post0
python-multipart 0.0.9
pytz 2024.2
PyYAML 6.0.2
referencing 0.35.1
regex 2024.9.11
requests 2.32.3
rich 13.8.1
rpds-py 0.20.0
ruff 0.6.5
safetensors 0.4.5
semantic-version 2.10.0
sentencepiece 0.2.0
setuptools 72.1.0
shellingham 1.5.4
six 1.16.0
smmap 5.0.1
sniffio 1.3.1
starlette 0.38.5
streamlit 1.38.0
streamlit-chat 0.1.1
sympy 1.13.2
tenacity 8.5.0
tokenizers 0.13.3
toml 0.10.2
tomlkit 0.12.0
torch 2.2.2+cu118
torchaudio 2.2.2+cu118
torchvision 0.17.2+cu118
tornado 6.4.1
tqdm 4.66.5
transformers 4.27.1
typer 0.12.5
typing_extensions 4.12.2
tzdata 2024.1
urllib3 2.2.3
uvicorn 0.30.6
watchdog 4.0.2
websockets 11.0.3
wheel 0.44.0
要运行上述模型,我们需要的一些文件如下:
pytorch_model.bin
config.json
vocab.txt
tokenizer.json
tokenizer_config.json
项目运行代码调用
可以通过如下代码调用 ChatGLM2-6B 模型来生成对话:
from transformers import AutoTokenizer, AutoModel
tokenizer = AutoTokenizer.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True)
model = AutoModel.from_pretrained("THUDM/chatglm2-6b", trust_remote_code=True, device='cuda')
model = model.eval()
response, history = model.chat(tokenizer, "你好", history=[])
print(response)
你好
标签:...,6B,tokenizer,模型,6b,本地,ChatGLM,model,下载
From: https://blog.51cto.com/u_15876949/12097765