当前位置:   article > 正文

使用chatglm.cpp本地部署ChatGLM3-6B模型_glam3模型

glam3模型

ChatGLM3模型介绍

ChatGLM3-6B 是 ChatGLM 系列最新一代的开源模型,在保留了前两代模型对话流畅、部署门槛低等众多优秀特性的基础上,ChatGLM3-6B 引入了如下特性:

  1. 更强大的基础模型: ChatGLM3-6B 的基础模型 ChatGLM3-6B-Base 采用了更多样的训练数据、更充分的训练步数和更合理的训练策略。在语义、数学、推理、代码、知识等不同角度的数据集上测评显示,ChatGLM3-6B-Base 具有在 10B 以下的预训练模型中最强的性能。
  2. 更完整的功能支持: ChatGLM3-6B 采用了全新设计的 Prompt 格式,除正常的多轮对话外。同时原生支持工具调用(Function Call)、代码执行(Code Interpreter)和 Agent 任务等复杂场景。
  3. 更全面的开源序列: 除了对话模型 ChatGLM3-6B 外,还开源了基础模型 ChatGLM-6B-Base、长文本对话模型 ChatGLM3-6B-32K。以上所有权重对学术研究完全开放,在填写问卷进行登记后亦允许免费商业使用

本地部署ChatGLM3模型

使用chatglm.cpp部署模型

下载chatglm.cpp

git clone --recursive https://github.com/li-plus/chatglm.cpp.git && cd chatglm.cpp

编译chatglm.cpp

  1. cmake -B build
  2. cmake --build build -j 16 --config Release

下载chatglm3-6b模型文件

当前chatglm3是开源的最高版本。我们可以选择从huggingface或openi下载模型

从huggingface下载

安装huggingface:

pip install -U huggingface_hub

下载模型

创建models目录,到目录里下载chatglm3-6b模型到chatglm3目录里。命令:

huggingface-cli download --resume-download THUDM/chatglm3-6b --local-dir chatglm3


使用openi下载模型

首先安装库:pip install openi 

然后登录账户: 

openi login

按照提示输入token 。token可以从openi官网应用栏目创建。 Sign In - OpenI - 启智AI开源社区提供普惠算力!

登录之后,就可以使用openi命令下载模型了 

openi model download -r Zhipu.AI/ChatGLM3 -m chatglm3-6b -p chatglm3-6b

转换模型文件到ggml

先安装需要的库

  1. python3 -m pip install -U pip
  2. python3 -m pip install tabulate tqdm transformers accelerate sentencepiece
  3. # pip install sentencepiece

转换模型还需要安装torch,这个可以到官网获取安装命令,这里就不具体说明了。

 开始转换:

  1. # cd chatglm.cpp
  2. python3 chatglm_cpp/convert.py -i ~/models/chatglm3-6b -t q4_0 -o ~/models/chatglm3-6b/chatglm3-ggml.bin

 部署完成的测试

执行下面命令:

./build/bin/main -m ~/models/chatglm3-6b/chatglm3-ggml.bin -p 你好,最好的大模型是哪一款?

看这个回答,情商不错啊

  1. ./build/bin/main -m ~/models/chatglm3-6b/chatglm3-ggml.bin -p 你好,最好的大模型是哪一 款?
  2. 您好!关于“最好的大模型”,这其实是一个因应用场景而异的问题。在不同的领域和任务中,最适合的大模型可能有所不同。
  3. 在自然语言处理领域,清华大学 KEG 实验室和智谱 AI 共同训练的 GLM3-6B 模型在许多 NLP 任务中表现优秀。在计算机视觉领域,OpenAI 的 DALL-E 和特斯拉的 GPT-3 都是目前表现出众的大模型。在音频处理领域,Google 的 Wavenet 和 Facebook 的 GLA 的表现较好。
  4. 因此,要确定哪一款大模型是“最好的”,需要根据您的具体需求和应用场景来判断。

实战ChatGLM3

 与ChatGLM3交互

./build/bin/main -m ~/models/chatglm3-6b/chatglm3-ggml.bin -i

效果还是不错的:

  1. ./build/bin/main -m ~/models/chatglm3-6b/chatglm3-ggml.bin -i
  2. ________ __ ________ __ ___
  3. / ____/ /_ ____ _/ /_/ ____/ / / |/ /_________ ____
  4. / / / __ \/ __ `/ __/ / __/ / / /|_/ // ___/ __ \/ __ \
  5. / /___/ / / / /_/ / /_/ /_/ / /___/ / / // /__/ /_/ / /_/ /
  6. \____/_/ /_/\__,_/\__/\____/_____/_/ /_(_)___/ .___/ .___/
  7. /_/ /_/
  8. Welcome to ChatGLM.cpp! Ask whatever you want. Type 'clear' to clear context. Type 'stop' to exit.
  9. Prompt > 你好
  10. ChatGLM3 > 你好
    声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/925593
    推荐阅读