调用文本对话模型服务
功能介绍
调用大语言模型推理服务,根据用户问题,获取大语言模型的回答。
调用方法
请参见如何调用API。
URI
POST https://aiae.appstage.myhuaweicloud.com/v1/chat/completions
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
Authorization |
是 |
String |
参数解释: 鉴权信息。获取平台API Key,并为API Key添加前缀Bearer,得到标准鉴权信息,例如Bearer sk-74e4157***。API Key获取方法请参见创建API Key。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
messages |
是 |
Array of ChatCompletionRequestMessage objects |
参数解释: 文本对话消息体类。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
model |
是 |
String |
参数解释: 模型服务调用唯一id字段。平台定义了3种模型服务: 1.平台预置模型服务 登录AI原生应用引擎,在左侧导航栏选择”资产中心“,选择“大模型”页签,单击模型卡片进入模型详情页面,查看模型服务调用ID。 2.租户部署模型服务 登录AI原生应用引擎,在左侧导航栏选择“模型中心 > 我的模型服务”,选择“我部署的”页签,在模型服务列表中复制模型服务调用ID。 3.租户接入模型服务 登录AI原生应用引擎,在左侧导航栏选择“模型中心 > 我的模型服务”,选择“我接入的”页签,在模型服务列表中复制模型服务调用ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
frequency_penalty |
否 |
Number |
参数解释: 正值会根据文本中新Token的现有频率对其进行惩罚,从而降低模型重复相同行的可能性。 约束限制: 不涉及。 取值范围: 介于-2.0和2.0之间。 默认取值: 0。 |
logit_bias |
否 |
Map<String,Integer> |
参数解释: 该参数接受一个JSON对象,将标记映射到从-100(禁止)到100(独占选择标记)的关联偏差值。 像-1和1这样的适度值将以较小的程度改变选择标记的概率。 使用logit_bias参数时,偏差被添加到模型生成的logits之前进行抽样。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
max_tokens |
否 |
Integer |
参数解释: 返回体允许的最大token数。 约束限制: 不涉及。 取值范围: 介于1和4096之间。 默认取值: 4096。 |
n |
否 |
Integer |
参数解释: 返回体中包含的chatCompletionChoice数量,建议默认设置为1,最大限度地降低成本。 约束限制: 不涉及。 取值范围: 介于1和128之间。 默认取值: 1。 |
presence_penalty |
否 |
Number |
参数解释: 正值会根据它们是否出现在文本中来惩罚得到新的Token,从而增加模型谈论新主题的可能性。 约束限制: 不涉及。 取值范围: 介于-2.0和2.0之间。 默认取值: 0。 |
stream |
否 |
Boolean |
参数解释: 是否流式返回。 设为true时,返回结果为流式; 设为false时,返回结果为JSON格式结构化数据。 约束限制: 不涉及。 取值范围: true或者false。 默认取值: false。 |
temperature |
否 |
Number |
参数解释: 较高的数值会使输出更加随机,而较低的数值会使其更加集中和确定。建议该参数设置为1。 约束限制: 不涉及。 取值范围: 介于0.0和2.0之间。 默认取值: 1。 |
top_p |
否 |
Number |
参数解释: 影响输出文本的多样性,取值越大,生成文本的多样性越强。 约束限制: 不涉及。 取值范围: 介于0.0和1.0之间。 默认取值: 0.5。 |
tools |
否 |
FunctionCallTool object |
参数解释: 可供模型调用的工具。 约束限制: 目前仅如下模型支持此功能: glm-4 glm-3-turbo moonshot-v1-8k moonshot-v1-32k moonshot-v1-128k 取值范围: 参考约束限制。 默认取值: 不涉及。 |
tool_choice |
否 |
String |
参数解释: 用于控制模型是如何选择要调用的函数,仅当工具类型为function时补充。 约束限制: 不涉及。 取值范围: 当前仅支持auto。 默认取值: auto。 |
content_security_verify |
否 |
ContentSecurityVerify object |
参数解释: 控制是否开启内容审核。如果开启内容审核,AI原生应用引擎会对模型返回结果进行审查。 约束限制: 不涉及。 取值范围: true或者false。 默认取值: false。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
content |
是 |
String |
参数解释: 消息具体内容。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
role |
是 |
String |
参数解释: 消息体对应的角色。 约束限制: 不涉及。 取值范围: 如果是系统则为system。 如果是用户则为user。 默认取值: 不涉及。 |
name |
否 |
String |
参数解释: 对话参与者的可选名称,提供给模型信息以区分相同角色的不同对话参与者。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
否 |
String |
参数解释: 调用工具类型。 约束限制: 目前仅支持function。 取值范围: 不涉及。 默认取值: function。 |
function |
否 |
function object |
参数解释: 仅当工具类型为function时补充。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
响应参数
状态码:200
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
参数解释: 文本对话唯一标识符。 取值范围: 不涉及。 |
choices |
Array of choices objects |
参数解释: 返回体列表。 如果‘n’大于1,则结果为多个。 取值范围: 不涉及。 |
created |
Integer |
参数解释: 问答发生的时间(格式为时间戳)。 取值范围: 不涉及。 |
model |
String |
参数解释: 实际转发后调用的模型名称,与请求体中model可能不同。 取值范围: 不涉及。异常详情 |
object |
String |
参数解释: 固定值。 取值范围: ‘chat.completion’。 |
usage |
CompletionUsage object |
参数解释: 每次请求的用量统计。 取值范围: 不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
finish_reason |
String |
参数解释: 返回结束的原因。 1.stop:模型达到自然停止点或提供的停止序列; 2.length:达到请求中指定的最大令牌数; 3.content_filter:由于内容过滤器的标志而省略了内容。 取值范围: 不涉及。 |
index |
Integer |
参数解释: 返回多个choices时,每个choice对应的顺序。 取值范围: 不涉及。 |
message |
参数解释: 模型服务返回的具体消息体内容。 取值范围: 不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
content |
String |
参数解释: 返回消息体的内容。 取值范围: 不涉及。 |
role |
String |
参数解释: 返回消息体的角色。 取值范围: 不涉及。 |
参数 |
参数类型 |
描述 |
---|---|---|
completion_tokens |
Integer |
参数解释: 回答包含的token数。 取值范围: 不涉及。 |
prompt_tokens |
Integer |
参数解释: 提问包含的token数。 取值范围: 不涉及。 |
total_tokens |
Integer |
参数解释: 提问+回答token总数。 取值范围: 不涉及。 |
状态码:500
参数 |
参数类型 |
描述 |
---|---|---|
error |
Error object |
参数解释: 异常详情。 取值范围: 不涉及。 |
error_code |
String |
参数解释: 平台异常错误码。 取值范围: 不涉及。 |
error_msg |
String |
参数解释: 异常信息。 取值范围: 不涉及。 |
请求示例
{ "model" : "publisher:baichuan:Baichuan2-Turbo", "messages" : [ { "role" : "system", "content" : "You are a helpful assistant." }, { "role" : "user", "content" : "你好!" } ] }
响应示例
状态码:200
OK
{ "created" : 1718772336, "usage" : { "completion_tokens" : 23, "prompt_tokens" : 45, "total_tokens" : 68 }, "model" : "Baichuan2-Turbo", "id" : "chatcmpl-xxx", "choices" : [ { "finish_reason" : "stop", "index" : 0, "message" : { "role" : "assistant", "content" : "你好,有什么我可以帮助你的吗?" }, "logprobs" : null } ], "object" : "chat.completion" }
状态码:500
服务器内部错误或三方服务器内部错误。
{ "error" : { "message" : "Internal server error, please try again later!", "type" : "internal_error", "param" : null, "code" : "internal_error" }, "error_code" : "AIAE.31001001", "error_msg" : "Internal server error, please try again later!" }
状态码
状态码 |
描述 |
---|---|
200 |
OK |
500 |
服务器内部错误或三方服务器内部错误。 |
错误码
请参见错误码。