ChatGLM3-6B大语言模型离线执行

ChatGLM3-6B大语言模型离线执行

模型准备

一般而言,模型和模型参数可以通过如下三个模型源进行相应的下载:

HuggingFace | ModelScope | WiseModel

本实例中,使用的是HuggingFace的源下载,相应的地址如下:
HuggingFace

环境准备

从HuggingFace下载下来的模型,实际上是包含两个实际的模型库,为了保证模型的准确运行,我们需要对相应的模型库进行选择,例如,我们使用的是PyTorch的模型,因此需要删除另外一个使用safetensors的模型,删除的内容包括:

  • 模型数据文件
  • 模型的配置文件

    这些工作准备好后,直接安装requirements.txt 文件的相应安装包即可 。

快速代码调用

  • 目录切换

    cd C:\VM\Chatbot\ChatGLM3-main

  • 加载相应的模块库文件

    from transformers import AutoTokenizer, AutoModel

  • 生成token

    tokenizer = AutoTokenizer.from_pretrained(r"C:\VM\Chatbot\ChatGLM3-main\THUDM\chatglm3-6b", trust_remote_code=True)

  • 模型的调用

    CPU调用

    model = AutoModel.from_pretrained(r"C:\VM\Chatbot\ChatGLM3-main\THUDM\chatglm3-6b", trust_remote_code=True).float()

    GPU调用

    model = AutoModel.from_pretrained(r"C:\VM\Chatbot\ChatGLM3-main\THUDM\chatglm3-6b", trust_remote_code=True,device='cuda').float()

  • 模型实例化

    model = model.eval()

  • 模型测试

    response, history = model.chat(tokenizer, "Hello", history=[])
    print(response)
    response, history = model.chat(tokenizer, "晚上睡不着应该怎么办", history=history)
    print(response)

执行完成后,系统的运行界面输出结果如下,说明运行成功。

异常处理
复制代码
requests.exceptions.ProxyError: (MaxRetryError("HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: /THUDM/chatglm3-6b/resolve/main/tokenization_chatglm.py (Caused by ProxyError('Unable to connect to proxy', OSError('Tunnel connection failed: 407 Proxy Authentication Required')))"), '(Request ID: 2bb04d30-be98-4bc9-aba4-0fbcce94da13)')

处理方案

  • 检查是否正确的配置了模型地址- 已经将模型地址指向本地;
  • 检查模型的地址和执行的程序的文件目录等级是否在同一级;
eg:

模型地址为:C:\VM\Chatbot\ChatGLM3-main\THUDM\chatglm3-6b,那么我们的执行程序需要放到: C:\VM\Chatbot\ChatGLM3-main才能保证正常运行。

参考资源
ChatGLM3模型

相关推荐
Narutolxy1 小时前
大模型数据分析破局之路20250512
人工智能·chatgpt·数据分析
浊酒南街1 小时前
TensorFlow中数据集的创建
人工智能·tensorflow
2301_787552873 小时前
console-chat-gpt开源程序是用于 AI Chat API 的 Python CLI
人工智能·python·gpt·开源·自动化
layneyao3 小时前
AI与自然语言处理(NLP):从BERT到GPT的演进
人工智能·自然语言处理·bert
jndingxin4 小时前
OpenCV 的 CUDA 模块中用于将多个单通道的 GpuMat 图像合并成一个多通道的图像 函数cv::cuda::merge
人工智能·opencv·计算机视觉
格林威4 小时前
Baumer工业相机堡盟工业相机的工业视觉中为什么偏爱“黑白相机”
开发语言·c++·人工智能·数码相机·计算机视觉
IT古董5 小时前
【漫话机器学习系列】249.Word2Vec自然语言训练模型
机器学习·自然语言处理·word2vec
灬0灬灬0灬5 小时前
深度学习---常用优化器
人工智能·深度学习
_Itachi__5 小时前
Model.eval() 与 torch.no_grad() PyTorch 中的区别与应用
人工智能·pytorch·python
白光白光5 小时前
大语言模型训练的两个阶段
人工智能·机器学习·语言模型