跳到内容 跳到主导航 跳到页脚

不同场景请求方式说明

这里对不同场景下,该如何请求大模型做一个说明

请求参数

参数类型必需参数说明
query_textstring问题文本,例如:你好。
ctdoc_idstring文档 id,多个用英文逗号分隔,如果指定了文档 id 则只从指定的文档中思考,如果不指定则从全部文档中思考。
session_idstring会话 id,用于串连多轮聊天的会话 id,相同会话 id 的多次问答才能形成多轮问答。不能超过 64 字节,只允许数字英文和 -_. 字符。
enable_citationstring是否返回引文,默认返回。0:否 , 1:是。
enable_followupstring是否返回推荐问题,默认返回。0:否 , 1:是。
smart_tempstringAI 创造性等级,取值是 0-10。0 为最保守等级,10 为最大限度自由发挥等级。
langstring语言,如果没有指定会根据 query_text 自动检测语言。指定只可提高回复语音准确性
可选值有:zh_CN / en_US / ko_KR / ja_JP / th_TH。
contextstring默认是空。外部传入的上下文, 字符串类型,会被当作一个完整的检索出来的片段,放入给大模型的prompt中的[参考资料]中
enable_elaboratestring是否启用详细阐述,默认是启用。0:关闭 , 1:启用。其中这个功能可以让AI适当发挥写出更丰满的文字,但适当发挥也可能导致它产出一些错误答案
streamstring是否以流式输出, 默认是非流式,0: 否 ,1: 是
categorystring用什么方式聊天
doc_chat:基于知识库聊天(默认值)
tpl_chat:创作中心
ctprofile_idstring聊天人设选择。
当category为doc_chat时,这个值不用传。在项目设置中设置啥人设,就是啥人设
当category是tpl_chat是,有如下两个选择:
– creator:无历史记录的创作者中心专用人设。
– writer:有历史记录的创作中心专用人设(默认值)。

请求方式说明

session_id 是形成对轮对话的关键,相同的session_id会视作同一对话进行。相反如果希望重新开始一个话题,生成一个新的session_id传入即可。所以session_id应该使用GUID的生成规则,在系统中避免重复。 context 可用于手动添加上下文,也可以一定程度上用于自定义prompt(注意这种用法通常只适用于新session_id第一次发起对话请求)

不同的场景,使用这个API的方式也不一样。下面是集中调用聊天接口的示例。

  • 严肃回答场景:不应该指定ctdoc_id、不希望机器人随机发挥,希望机器人展现文章出处,不希望继续提问,那么请求样子可能如下:
{
    "query_text": "民法典中关于能结婚的条件是什么",
    "session_id": "C9857E6A-2E26-4A9D-887E-BB8A4A0B9BD4",
    "enable_citation": "1",
    "enable_followup": "0",
    "smart_temp": "0",
    "stream": "1",
}
  • 闲聊场景:不应该指定ctdoc_id、希望机器人随机发挥,不希望机器人展现文章出处,希望继续提问,那么请求样子可能如下:
{
    "query_text": "请求火星上是否存在水源",
    "session_id": "05FE9D4A-E82A-4E36-827A-EFB7A5ABF6E0",
    "enable_citation": "0",
    "enable_followup": "1",
    "smart_temp": "9",
    "stream": "1",
}
  • 总结场景:指定总结某个文字的ctdoc_id,机器人一定程度发挥,不需要展现出处,希望继续提问,那么请求样子可能如下:
{
    "query_text": "这本书主要表达了作者什么观点",
    "ctdoc_id": "test_doc_id",
    "session_id": "05FE9D4A-E82A-4E36-827A-EFB7A5ABF6E0",
    "enable_citation": "0",
    "enable_followup": "1",
    "smart_temp": "4",
    "stream": "1",
}

为了达到效果最优,我们需要尝试各种组合。

这篇文章是否有帮助?

相关文章