文本对话
功能介绍
调用大语言模型推理服务,根据用户问题,获取大语言模型的回答。
URI
POST https://aiae.appstage.myhuaweicloud.com/v1/chat/completions
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
Authorization |
是 |
String |
AI原生应用引擎鉴权API Key。 1.以管理员身份登录AI原生应用引擎工作台,在左侧导航栏选择“系统管理 > 平台租户鉴权”。 2.在“平台租户鉴权”页面,选择“平台API Key”页签,单击“新增平台API Key”。 3.在“新增平台API Key”对话框中的输入框设置API Key名称,用以区分API Key。 4.在弹出的下载窗口中单击“立即下载”,将API Key下载到本地查看。 5.为API Key添加“Bearer”前缀,得到标准鉴权信息(格式为:Bearer sk-xxxx)。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
messages |
是 |
Array of ChatCompletionRequestMessage objects |
文本对话消息体类。 |
model |
是 |
String |
模型服务调用唯一id字段。平台定义了4种模型服务:
|
frequency_penalty |
否 |
Number |
介于-2.0和2.0之间的数字。 正值会根据文本中新Token的现有频率对其进行惩罚,从而降低模型重复相同行的可能性。 |
logit_bias |
否 |
Map<String,Integer> |
该参数接受一个JSON对象,将标记映射到从-100(禁止)到100(独占选择标记)的关联偏差值。 像-1和1这样的适度值将以较小的程度改变选择标记的概率。 使用logit_bias参数时,偏差被添加到模型生成的logits之前进行抽样。 |
max_tokens |
否 |
Integer |
返回体允许的最大token数。 |
n |
否 |
Integer |
返回体中包含的chatCompletionChoice数量,建议默认设置为1,最大限度地降低成本。 |
presence_penalty |
否 |
Number |
介于-2.0和2.0之间的数字。 正值会根据它们是否出现在文本中来惩罚得到新的Token,从而增加模型谈论新主题的可能性。 |
stream |
否 |
Boolean |
布尔类型。
|
temperature |
否 |
Number |
较高的数值会使输出更加随机,而较低的数值会使其更加集中和确定。 建议该参数和top_p只设置1个。 |
top_p |
否 |
Number |
影响输出文本的多样性,取值越大,生成文本的多样性越强。 建议该参数和temperature只设置1个。 |
tools |
否 |
FunctionCallTool object |
可供模型调用的工具。目前仅如下模型支持此功能:
|
tool_choice |
否 |
String |
用于控制模型是如何选择要调用的函数,仅当工具类型为function时补充。 默认为auto,且当前仅支持auto。 |
content_security_verify |
否 |
ContentSecurityVerify object |
控制是否开启内容审核。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
content |
是 |
String |
消息具体内容。 |
role |
是 |
String |
消息体对应的角色。 如果是系统则为system。 如果是用户则为user。 |
name |
否 |
String |
对话参与者的可选名称,提供给模型信息以区分相同角色的不同对话参与者。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
否 |
String |
调用工具类型,目前仅支持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 |
返回结束的原因。
|
index |
Integer |
返回多个choices时,每个choice对应的顺序。 |
message |
模型服务返回的具体消息体内容。 |
参数 |
参数类型 |
描述 |
---|---|---|
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 |
服务器内部错误或三方服务器内部错误。 |
错误码
请参见错误码。