Skip to main content

应用对话兼容接口

POST /openapi/community/v1/chat/completions

该入口采用 Chat Completions 风格的 messages 请求,用于已配置的 AIS 应用。使用 Authorization: Bearer ak_... 应用 AccessToken;服务端会继续验证应用凭据,并读取该应用的知识库、Prompt 和模型设置。

这与 标准 Chat 的租户配置入口不同。兼容消息格式不代表所有第三方客户端的扩展参数都受支持。

请求

字段类型必填说明
messagesarray[object]非空,最后一条必须为 role=user,其 content 是当前问题
messages[].rolecontentstring消息角色、文本内容
userstring外部用户标识,建议使用 访客注册 返回的 data.code
conversationIdstring沿用返回的会话 ID
modelstring实际配置的模型名称或编码,省略时使用应用配置
streamboolean默认 true;false 返回完整 JSON
temperaturenumber默认 0.95,0 < temperature <= 1
top_pnumber默认 0.7,0 < top_p < 1
containerIdarray[string]兼容字段;当前知识范围仍按应用绑定配置选择,不作为任意切换知识库的入口
curl --request POST "${BASE_URL}/openapi/community/v1/chat/completions" \
--header "Authorization: Bearer ${AIS_APP_TOKEN}" \
--header "Content-Type: application/json" \
--data '{
"user": "partner_visitor_10001",
"messages": [
{"role": "user", "content": "请介绍产品的主要功能"}
],
"stream": false
}'

AIS_APP_TOKEN 使用该应用的 AccessToken。user 在此入口用于对话用户标识,不授予用户知识库权限;权限和知识来源仍由应用及认证配置决定。客户端不能借此把自己变成任意 AIS 用户。

当前问题从 messages 的最后一条 user 消息提取;多轮行为以应用配置及同一 conversationId 为准,不应假定此入口与标准 Chat 的外部历史处理完全相同。

响应

成功直接返回对话对象,不使用 Result 外层包装。完整字段及类型与 标准 Chat 响应 共用;引用条目定义见 数据字典

本接口关键字段JSON 类型客户端用途
conversationIdstring保存后用于同一用户的续聊和历史查询
choices[].message.contentstring / object展示答案;文本问答通常为字符串
choices[].finish_reasonstring / null判断生成结束原因
usageobject / null输入、输出及总 Token 统计
referencesparagraphsarray[object]来源与段落引用,可空

stream=false 的精简示例:

{
"id": "message_001",
"conversationId": "conversation_001",
"model": "configured-model",
"choices": [
{
"index": 0,
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": "AIS 提供知识管理、检索与问答能力。"
}
}
]
}

关联访客历史时,保存响应 conversationId,并使用相同 user 编码调用 会话主题与历史查询。成功注册用户不会自动产生历史会话。

模型列表

GET /openapi/community/v1/models。当前使用平台 API Key:Authorization: Bearer tk-...。此模型列表入口与上面的应用对话凭据不同;旧应用 ak_ 受路由权限限制,不应假设能够调用模型列表。

无请求参数,cURL 示例:

curl "${BASE_URL}/openapi/community/v1/models" \
--header "Authorization: Bearer ${AIS_API_KEY}"

返回当前环境模型配置列表,id 是返回的模型名称。不要沿用早期文档中固定的模型清单。

{
"object": "list",
"data": [
{
"id": "configured-model",
"object": "model",
"created": 1788575400000,
"owned_by": "configured-provider"
}
]
}

本接口的 created 由服务端生成,不代表模型供应商的发布时间。字段和模型可用性以对接环境返回为准。

模型列表响应字段

字段JSON 类型说明
objectstring列表类型,list
dataarray[object]当前环境模型条目
data[].idstring模型名称,不代表任意供应商模型都已授权可用
data[].objectstring条目类型,model
data[].createdinteger服务端生成的 Unix 毫秒时间,不是供应商发布时间
data[].owned_bystring / null配置的提供商标识

应用对话仍使用应用自身模型配置,不能仅凭模型列表返回某个 id 就假定请求参数能覆盖应用配置。失败处理见 响应与错误编码