一、前言:
智谱AI与清华KEG实验室发布的ChatGLM大语言模型,支持8k上下文,在内容创作、文本理解、信息抽取等任务上表现突出。经过海量中英标识符的预训练与人类偏好对齐训练,相比一代模型在 MMLU、C-Eval、GSM8K 分别取得了16%、36%、280%的提升,并登顶中文任务榜单C-Eval。
二、获取API Key:
1、打开网址:智谱AI开放平台 注册账号登录
2、登录——右上角(查看API Key)
3、注册后赠送100万token,实名认证后多赠送400万(有效期一个月)
三、安装及调用:
首先请通过如下方式进行安装:
pip install zhipuai
我们升级了最新的模型 GLM-4、GLM-3-Turbo,支持了System Prompt、Function Call、Retrieval、Web_Search等新功能。使用以上新功能需升级最新版本的 Python SDK。如您已安装老版本SDK,请您更新到最新版SDK。
pip install --upgrade zhipuai
调用方式
示例1:
from zhipuai import ZhipuAI
client = ZhipuAI(api_key="") # 填写您自己的APIKey
response = client.chat.completions.create(
model="glm-4", # 填写需要调用的模型名称
messages=[
{"role": "user", "content": "作为一名营销专家,请为我的产品创作一个吸引人的slogan"},
{"role": "assistant", "content": "当然,为了创作一个吸引人的slogan,请告诉我一些关于您产品的信息"},
{"role": "user", "content": "智谱AI开放平台"},
{"role": "assistant", "content": "智启未来,谱绘无限一智谱AI,让创新触手可及!"},
{"role": "user", "content": "创造一个更精准、吸引人的slogan"}
],
)
print(response.choices[0].message)
示例2:
from zhipuai import ZhipuAI
client = ZhipuAI(api_key="") # 填写您自己的APIKey
response = client.chat.completions.create(
model="glm-4v", # 填写需要调用的模型名称
messages=[
{
"role": "user",
"content": [
{
"type": "text",
"text": "图里有什么"
},
{
"type": "image_url",
"image_url": {
"url" : "https://img1.baidu.com/it/u=1369931113,3388870256&fm=253&app=138&size=w931&n=0&f=JPEG&fmt=auto?sec=1703696400&t=f3028c7a1dca43a080aeb8239f09cc2f"
}
}
]
}
]
)
print(response.choices[0].message)
示例3:
from zhipuai import ZhipuAI
client = ZhipuAI(api_key="") # 请填写您自己的APIKey
response = client.chat.completions.create(
model="glm-3-turbo", # 填写需要调用的模型名称
messages=[
{"role": "system", "content": "你是一个乐于解答各种问题的助手,你的任务是为用户提供专业、准确、有见地的建议。"},
{"role": "user", "content": "我对太阳系的行星非常感兴趣,特别是土星。请提供关于土星的基本信息,包括其大小、组成、环系统和任何独特的天文现象。"},
],
stream=True,
)
for chunk in response:
print(chunk.choices[0].delta)
四、接口说明:
模型编码:glm-4
根据输入的自然语言指令完成多种语言类任务,推荐使用 SSE 或异步调用方式请求接口
传输方式 |
https |
请求地址 |
https://open.bigmodel.cn/api/paas/v4/chat/completions |
调用方式 |
同步调用,等待模型执行完成并返回最终结果或 SSE 调用 |
字符编码 |
UTF-8 |
接口请求格式 |
JSON |
响应格式 |
JSON 或标准 Stream Event |
接口请求类型 |
POST |
开发语言 |
任意可发起 HTTP 请求的开发语言 |
接口参数请求
model |
String |
是 |
所要调用的模型编码 |
messages |
List<Object> |
是 |
调用语言模型时,将当前对话信息列表作为提示输入给模型, 按照 |
request_id |
String |
否 |
由用户端传参,需保证唯一性;用于区分每次请求的唯一标识,用户端不传时平台会默认生成。 |
do_sample |
Boolean |
否 |
do_sample 为 true 时启用采样策略,do_sample 为 false 时采样策略 temperature、top_p 将不生效 |
stream |
Boolean |
否 |
使用同步调用时,此参数应当设置为 fasle 或者省略。表示模型生成完所有内容后一次性返回所有内容。 如果设置为 true,模型将通过标准 Event Stream ,逐块返回模型生成内容。Event Stream 结束时会返回一条data: [DONE] 消息。 注意:在模型流式输出生成内容的过程中,我们会分批对模型生成内容进行检测,当检测到违法及不良信息时,API会返回错误码(1301)。开发者识别到错误码(1301),应及时采取(清屏、重启对话)等措施删除生成内容,避免其造成负面影响。 |
temperature |
Float |
否 |
采样温度,控制输出的随机性,必须为正数 取值范围是: top_p 或 temperature 参数,但不要同时调整两个参数 |
top_p |
Float |
否 |
用温度取样的另一种方法,称为核取样 |
max_tokens |
Integer |
否 |
模型输出最大 tokens |
stop |
List |
否 |
模型在遇到stop所制定的字符时将停止生成,目前仅支持单个停止词,格式为 |
tools |
List |
否 |
可供模型调用的工具列表,tools 字段会计算 tokens ,同样受到 tokens 长度的限制 |
tool_choice |
String 或 Object |
否 |
用于控制模型是如何选择要调用的函数,仅当工具类型为function时补充。默认为auto,当前仅支持auto |
System Message格式
role |
String |
是 |
消息的角色信息,此时应为 |
content |
String |
是 |
消息内容 |
User Message格式
role |
String |
是 |
消息的角色信息,此时应为 |
content |
String |
是 |
消息内容 |
Assisant Message格式
role |
String |
是 |
消息的角色信息,此时应为 |
content |
String |
"content"与"tool_calls"二必选一 |
消息内容。其中包括了 |
tool_calls |
List |
"content"与"tool_calls"二必选一 |
模型产生的工具调用消息 |
Tool Message格式
tool message 代表工具被调用后返回的结果。模型根据tool message向用户输出自然语言格式的消息。
role |
String |
是 |
消息的角色信息,此时应为 |
content |
String |
是 |
|
tool_call_id |
String |
是 |
tool的调用记录 |
模型同步调用响应内容
id |
String |
任务ID |
created |
Long |
请求创建时间,是以秒为单位的 Unix 时间戳 |
model |
String |
模型名称 |
choices |
List |
当前对话的模型输出内容 |
usage |
Object文章来源:https://www.toymoban.com/news/detail-843140.html |
结束时返回本次模型调用的 tokens 数量统计。文章来源地址https://www.toymoban.com/news/detail-843140.html |
内容生成流式响应块内容
id |
String |
智谱 AI 开放平台生成的任务订单号,调用请求结果接口时请使用此订单号 |
created |
Long |
请求创建时间,是以秒为单位的 Unix 时间戳 |
choices |
List |
当前对话的模型输出内容 |
usage |
Object |
结束时返回本次模型调用的 tokens 数量统计。 |
到了这里,关于智谱AI:ChatGLM API调用说明的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!