应先确认chatglm服务类型:csdn镜像用http://127.0.0.1:7860/chat直调,智谱云服务需zhipuai sdk配api密钥调https://api.zhipu.ai/v1/chat/completions,本地部署则按实际端口路径适配。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你想用Python代码直接调用ChatGLM模型,而不是靠网页界面点点点——比如要集成进内部系统、做批量问答、或者写自动化脚本。这需要绕过Gradio WebUI,直连底层API服务,或使用官方SDK发起标准HTTP请求。
确认你手头的服务类型
先别急着写代码,得弄清你现在跑的是哪一种ChatGLM服务:是CSDN镜像里自带的轻量API?还是智谱AI官网提供的云服务?或是你自己用vLLM/Docker部署的本地服务?三者调用方式完全不同。
如果你用的是CSDN提供的ChatGLM-6B镜像(2026年2月11日资料确认),它默认在http://127.0.0.1:7860/chat提供POST接口,无需鉴权,不走OpenAI兼容路径;【这不是/v1/chat/completions】,硬套OpenAI SDK会404。
如果你走智谱AI官网API(zhipu.ai),地址是https://api.zhipu.ai/v1/chat/completions,必须带Authorization: Bearer your_api_key,且模型名必须写glm-4或chatglm-6b等官方支持名称。
方法一:用ZhipuAI Python SDK直连智谱云服务
第一步:安装SDK
执行pip install zhipuai,推荐Python 3.10–3.11版本。
第二步:初始化客户端
把你在智谱AI官网申请到的API密钥填进去:
from zhipuai import ZhipuAI<br>client = ZhipuAI(api_key="your_actual_api_key_here")
第三步:发请求
注意messages必须是列表,每个元素含role和content;top_p、temperature这些参数不是必填,但不设容易返回不稳定结果:
response = client.chat.completions.create(<br> model="glm-4",<br> messages=[{"role": "user", "content": "请用一句话解释量子纠缠"}],<br> temperature=0.7,<br> max_tokens=512<br>)
第四步:提取回复
不要直接print(response),它是个对象;正确取法是response.choices[0].message.content。如果没加stream=False,默认是流式响应,得用for循环逐段读。
Python 3.14.2是Python编程语言在2025年12月5日发布的稳定版本,属于3.14系列的第二个维护更新。该版本包含了18项修复,重点解决了多进程、数据类及正则表达式等模块的回归问题,并修复了CVE-2025-12084等安全漏洞。此版本标志着自由线程模式(移除GIL)正式获得官方支持,是Python发展的重要里程碑。
方法二:用requests直调CSDN镜像内置API
这个API藏在Gradio进程里,端口仍是7860,但路径是/chat,不是/gradio。它不校验token,也不要求HTTPS,适合内网快速集成。
① 构造请求头:headers = {"Content-Type": "application/json"}
② 准备数据体:
data = {<br> "prompt": "你好,请介绍你自己",<br> "history": [],<br> "max_length": 1024,<br> "top_p": 0.9,<br> "temperature": 0.8<br>}
注意:history字段必须传空列表或历史对话列表,不能省略或传None,否则返回500错误。
③ 发送POST请求:
import requests<br>response = requests.post("http://127.0.0.1:7860/chat", headers=headers, json=data)
④ 解析响应:
返回是JSON格式,结构简单:response.json()["response"]就是模型生成的文本。如果返回status_code不是200,大概率是服务没起来,或你填错了IP/端口。
方法三:curl命令快速验证服务是否存活
在终端里直接敲:
curl -X POST http://127.0.0.1:7860/chat \<br> -H "Content-Type: application/json" \<br> -d '{"prompt":"测试","history":[],"max_length":512}'
这一步能立刻告诉你API是不是真在跑。如果返回一堆HTML,说明你访问的是Gradio UI根路径,不是/chat接口;如果返回{"detail":"Not Found"},说明FastAPI路由没挂载成功,得回镜像里检查启动日志。
这步操作起来很简单,直接把上面整行复制粘贴进终端回车就行。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!










