AI大模型技术分享教程:用Docker本地部署ChatGLM并开放API

想在服务器上跑一个自己的大模型,又不想依赖外部API?
最省事的路径是用 Docker 部署 ChatGLM3-6B,它自带 OpenAI 兼容接口,部署完就能用标准 SDK 调用。
这篇 AI 大模型技术分享教程会带你从零走完整个流程,包括环境检查、模型下载、服务启动和接口验证。

先确认你的机器能不能跑

ChatGLM3-6B 对硬件有一定要求,部署前先做三项检查,避免跑到一半才发现资源不够。

  • 操作系统:推荐 Ubuntu 20.04 或 22.04,其他主流 Linux 发行版也可以,但以下命令以 Ubuntu 为例。
  • 内存与显存:纯 CPU 运行至少需要 16GB 内存,速度较慢;如果有 NVIDIA 显卡,显存建议 8GB 以上,6GB 显存可以尝试量化版本但体验会打折扣。
  • 磁盘空间:模型文件约 12GB,加上 Docker 镜像和系统占用,建议预留 30GB 以上空闲空间。

用下面几条命令快速确认:

# 查看内存
free -h

# 查看磁盘
 df -h /

# 查看显卡(如果有)
nvidia-smi

如果 nvidia-smi 命令不存在,说明没有安装 NVIDIA 驱动,后续只能走 CPU 模式。

安装 Docker 与 NVIDIA 容器运行时

如果服务器还没装 Docker,执行官方脚本安装:

curl -fsSL https://get.docker.com | bash -s docker
systemctl enable --now docker

有 NVIDIA 显卡的机器还需要安装 nvidia-container-toolkit,让容器能调用 GPU:

apt-get update && apt-get install -y nvidia-container-toolkit
systemctl restart docker

安装完成后用 docker run --rm --gpus all nvidia/cuda:
12.0-base nvidia-smi
验证容器能否识别显卡,
能输出显卡信息就说明配置正确。

拉取镜像并启动 ChatGLM 服务

社区维护的 chatglm3 镜像可以直接使用。
先拉取镜像:

docker pull chatglm3/chatchat:latest

然后创建数据目录并启动容器。
注意把 /data/models 换成你实际存放模型的路径:

mkdir -p /data/models

docker run -d --name chatglm \
  --gpus all \
  -p 8000:8000 \
  -v /data/models:/app/models \
  chatglm3/chatchat:latest

如果没有 GPU,去掉 --gpus all 参数即可。
容器启动后,用 docker logs -f chatglm 观察日志,看到类似 Uvicorn running on http://0.0.0.0:8000 的输出,说明 API 服务已经就绪。

首次启动时容器会自动下载模型文件,速度取决于网络环境。
如果下载卡住,可以手动把模型文件放到 /data/models 目录下,再重启容器。

验证接口是否可用

服务启动后,先用 curl 发一个最简单的请求:

curl http://127.0.0.1:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "chatglm3-6b",
    "messages": [{"role": "user", "content": "你好"}]
  }'

如果返回 JSON 中包含 choices 字段和模型回复内容,说明接口工作正常。
你也可以用 Python 的 OpenAI SDK 调用,把 base_url 指向本地地址即可:

from openai import OpenAI

client = OpenAI(base_url="http://127.0.0.1:8000/v1", api_key="none")
resp = client.chat.completions.create(
    model="chatglm3-6b",
    messages=[{"role": "user", "content": "用一句话介绍你自己"}]
)
print(resp.choices[0].message.content)

常见问题与避坑提醒

部署过程中最容易卡在下面几个地方,提前了解能省不少时间。

容器启动后立刻退出:先用 docker logs chatglm 看最后几行日志。
常见原因是显存不足或模型路径不对,日志中会明确提示 CUDA out of memory 或 model not found。
显存不足时可以换更小的量化模型,或者改用 CPU 模式。

端口 8000 无法从外网访问:先确认服务器防火墙和云厂商安全组是否放行了 8000 端口。
生产环境不建议直接把模型接口暴露到公网,至少加一层 Nginx 反向代理并配置访问密钥。

模型下载太慢或失败:可以在能正常访问的机器上手动下载模型文件,再通过 scp 传到服务器的 /data/models 目录,然后重新启动容器。

CPU 模式下响应很慢:这是正常现象,6B 模型在纯 CPU 上生成一段话可能需要几十秒。
如果只是测试功能,可以把请求中的 max_tokens 调小,减少等待时间。

确认服务长期稳定运行

最后做一次完整复查:docker ps 确认容器状态是 Up;
用 curl 再发一次请求确认接口有返回;
如果配置了 Nginx,从外部访问一次验证代理链路。
建议给容器加上 --restart unless-stopped 参数,避免服务器重启后服务没有自动拉起。

到这里,一个可用的本地大模型 API 就部署完成了。
后续你可以把它接入自己的应用、做提示词测试,或者在此基础上继续探索微调。
整个流程的关键在于先确认硬件条件,再按日志排查启动问题,最后用实际请求验证接口,而不是只看容器是否在运行。

分享到:
上一篇
用AI大模型写技术博客:从选题到发布的可复用流程
下一篇
用AI大模型做教学视频:从脚本到成片的操作流程
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意