对话生成(无会话历史) | 大装置帮助中心
跳到主要内容

对话生成(无会话历史)

接口描述(Description)

基于给定的聊天对话信息,创建模型响应


请求地址(Request URL)

[POST] https://api.sensenova.cn/v1/llm/chat-completions

请求头(Request Header)

无特殊Header,请参考接口鉴权


请求体(Request Body)

请注意,单次请求,用户输入的token总数(即所有content的token总数) + 用户期望模型生成的最大token数(即max_new_tokens的值),必须 <= 模型最大上下文长度(不同模型的上下文长度支持情况,参考模型清单)。

名称类型必须默认值可选值描述
modelstring-参考模型清单模型ID
nint1[1,4]生成回复数量,响应参数中的index即为回复序号(在使用某些模型时不支持传入该参数,详情请参考模型清单
know_idsstring[]-参考查询知识库列表检索的知识库列表
max_new_tokensint1024[1,2048]期望模型生成的最大token数(不同模型支持的上下文长度不同,因此最大值也不同,参考模型清单
messagesobject[]--输入给模型的对话上下文,数组中的每个对象为聊天的上下文信息
repetition_penaltyfloat1.0(0,2]重复惩罚系数,1代表不惩罚,大于1倾向于生成不重复token,小于1倾向于生成重复token,推荐使用范围为[1,1.2]
streambooleanfalse开启:true
关闭:false
是否使用流式传输,如果开启,数据将按照data-only SSE(server-sent events)返回中间结果,并以 data: [DONE] 结束
temperaturefloat0.8(0,2]温度采样参数,大于1的值倾向于生成更加多样的回复,小于1倾向于生成更加稳定的回复(最多支持小数点后六位)
top_pfloat0.7(0,1)核采样参数,解码生成token时,在概率和大于等于top_p的最小token集合中进行采样
userstring--外部用户ID,应用开发者可将应用系统用户ID传入,方便追踪
knowledge_configobject--知识配置
pluginsobject--插件配置(在使用某些模型时不支持传入该参数,详情请参考模型清单
  • messages 部分参数如下:
名称类型必须默认值可选值描述
rolestring-枚举值
user
assistant
system
消息作者的角色,枚举值。请注意,数组中最后一项必须为 user
contentstring--消息的内容
  • knowledge_config 部分参数如下:
名称类型必须默认值可选值描述
control_levelstringnormal枚举值
normal
high
模型生成回复时对知识库内容的参考程度
normal:模型正常参考知识库内容进行回答
high:模型强参考知识库内容进行回答(若您期望模型回答尽可能依赖知识库,不自由发散,推荐使用此值)
knowledge_base_resultbooleanfalsetrue
false
是否返回本次请求查询的知识库检索结果
true:返回
false:不返回
knowledge_base_configsobject[]--知识库配置
  • knowledge_base_configs 部分参数如下:
名称类型必须默认值可选值描述
know_idstring-本次请求检索的知识库ID(konw_ids中的知识库ID)需要实现配置的知识库ID
faq_thresholdfloat-(0,1)知识库中的qa_lst精准命中程度的阈值配置,越高代表对该知识库中问答对的检索结果相似度要求越严格
  • plugins 部分参数如下:
名称类型必须默认值可选值描述
web_searchobject--在线检索配置(此参数将模型的在线检索能力作为独立的插件功能提供给用户使用,以实现更为灵活的配置)
associated_knowledgeobject--文本知识注入配置
  • web_search 部分参数如下:
名称类型必须默认值可选值描述
search_enablebooleanfalsetrue
false
是否允许在线检索,若允许在线检索,即允许模型自主判断本次请求是否需要在线检索
result_enablebooleanfalsetrue
false
是否返回在线检索的结果
  • associated_knowledge 部分参数如下:
名称类型必须默认值可选值描述
contentstring--文本知识注入的内容,注意此内容的token数会视为用户输入内容的一部分,计入prompt_tokens,遵循模型上下文长度校验规则
modestring-concatenate
override
知识注入的模式
将外部注入的知识和内部的其他知识检索结果拼接在一起输入给模型:concatenate
外部注入的知识会替代内部的其他知识检索结果:override

请求示例(Request Example)

curl --request POST "https://api.sensenova.cn/v1/llm/chat-completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $API_TOKEN" \
-d '{
"know_ids": [
"string"
],
"max_new_tokens": 1024,
"messages": [
{
"content": "string",
"role": "string"
}
],
"model": "string",
"n": 1,
"repetition_penalty": 1.0,
"stream": false,
"temperature": 0.8,
"top_p": 0.7,
"user": "string",
"knowledge_config":{
"control_level": "normal",
"knowledge_base_result": false,
"knowledge_base_configs":[
{
"know_id": "string",
"faq_threshold": 0
}
]
},
"plugins":{
"web_search":{
"search_enable": false,
"result_enable": false
},
"associated_knowledge":{
"content": "string",
"mode": "string"
}
}
}'

响应(Response)

名称类型描述
dataobject生成内容
  • data 部分参数如下:
名称类型描述
idstring消息ID
choicesobject[]生成的回复列表
knowledge_base_resultsobject[]知识检索中间结果
usageobjecttoken使用量
pluginsobject插件功能使用情况
  • choices 部分参数如下:
名称类型描述
messagestring非流式请求时,生成的回复内容
finish_reasonstring停止生成的原因,枚举值
因结束符停止生成:stop
因达到最大生成长度停止生成:length
因触发敏感词停止生成: sensitive
因触发模型上下文长度限制: context
indexint生成的回复序号
rolestring回复消息的角色
deltastring流式请求时,生成的回复内容
  • knowledge_base_results 部分参数如下:
名称类型描述
know_idstring查询的知识库ID
resultsobject[]查询到的知识库内容
  • results 部分参数如下:
名称类型描述
scorefloat相似度
resultstring查询到的知识库文本内容
extra_infoobject若该结果对应的知识库是使用delimiter分割模式创建的,则返回检索到的知识库详细信息
  • extra_info 部分参数如下:
名称类型描述
file_idstring此条结果对应的文件ID
pageint此条结果对应的文件页码
  • usage 部分参数如下:
名称类型描述
prompt_tokensint用户输入内容的token数
knowledge_tokensint知识库内容输入模型的token数(仅在使用了知识库且检索到知识库内容的情况下不为0)
completion_tokensint生成消息对应的token数
total_tokensint总token数
  • plugins 部分参数如下:
名称类型描述
web_searchobject在线检索使用情况,search_enable关闭的情况下不返回此字段
  • web_search 部分参数如下:
名称类型描述
online_search_countint本次请求实际发生的在线检索次数
resultsobject[]本次请求在线检索结果,result_enable关闭的情况下不返回此字段
  • results 部分参数如下:
名称类型描述
indexint在线检索结果序号
urlstring在线检索的URL
url_sourcestring在线检索的来源
titlestring在线检索网页标题
iconstring在线检索网站logo图片的URL

响应示例(Response Example)

  • 流式
data:{"data":{"id":"123456789012345","choices":[{"delta":"This","finish_reason":"","index": 0,"role":"assistant"}],"knowledge_base_results":[],"plugins":{"web_search":{"online_search_count":0,"results":[]}},"usage":{"prompt_tokens":6,"knowledge_tokens": 0,"completion_tokens":1,"total_tokens":7}},"status":{"code":0, "message": "ok"}}

data:{"data":{"id":"123456789012345","choices":[{"delta":"is","finish_reason":"","index": 0,"role":"assistant"}],"knowledge_base_results":[],"plugins":{"web_search":{"online_search_count":0,"results":[]}},"usage":{"prompt_tokens":6,"knowledge_tokens": 0,"completion_tokens":2,"total_tokens":8}},"status":{"code":0, "message": "ok"}}

data:{"data":{"id":"123456789012345","choices":[{"delta":"a","finish_reason":"","index": 0,"role":"assistant"}],"knowledge_base_results":[],"plugins":{"web_search":{"online_search_count":0,"results":[]}},"usage":{"prompt_tokens":6,"knowledge_tokens": 0,"completion_tokens":3,"total_tokens":9}},"status":{"code":0, "message": "ok"}}

data:{"data":{"id":"123456789012345","choices":[{"delta":"test","finish_reason":"","index": 0,"role":"assistant"}],"knowledge_base_results":[],"plugins":{"web_search":{"online_search_count":0,"results":[]}},"usage":{"prompt_tokens":6,"knowledge_tokens": 0,"completion_tokens":4,"total_tokens":10}},"status":{"code":0, "message": "ok"}}

data:{"data":{"id":"123456789012345","choices":[{"delta":"!","finish_reason":"","index": 0,"role":"assistant"}],"knowledge_base_results":[],"plugins":{"web_search":{"online_search_count":0,"results":[]}},"usage":{"prompt_tokens":6,"knowledge_tokens": 0,"completion_tokens":5,"total_tokens":11}},"status":{"code":0, "message": "ok"}}

data:{"data":{"id":"123456789012345","choices":[{"delta":"","finish_reason":"stop","index": 0,"role":"assistant"}],"knowledge_base_results":[{"know_id":"123456","results":[{"score":1.56, "result":"Test"}]}],"plugins":{"web_search":{"online_search_count":1,"results":[{"index":1,"url":"https://xxxx","url_source":"百科","title":"北京著名景点清单2023","icon":"https://xxx"}]}},"usage":{"prompt_tokens":6,"knowledge_tokens": 1,"completion_tokens":6,"total_tokens":13}},"status":{"code":0, "message": "ok"}}

data:[DONE]

  • 非流式
{
"data": {
"id": "4b44cd86cd2c000",
"choices": [
{
"message": "This is a test!",
"finish_reason": "stop",
"index": 0,
"role": "string"
}
],
"knowledge_base_results": [
{
"know_id": "string",
"results": [
{
"result": "string",
"score": 0
}
]
}
],
"usage": {
"prompt_tokens": 6,
"knowledge_tokens": 0,
"completion_tokens": 6,
"total_tokens": 12
},
"plugins": {
"web_search":{
"online_search_count": 1,
"results":[
{
"index": 1,
"url": "string",
"url_source": "string",
"title": "string",
"icon": "string"
}
]
}
}
}
}

错误信息

参考错误码