发起对话

首先需要通过“创建对话”API创建一个对话ID,然后通过“发送对话消息”API向该对话发送消息,以完成对话过程。通过该流程,开发者可以实现终端用户与Bot的聊天对话。支持开发者为一个用户创建一个或多个对话ID,每个对话ID 之间的聊天数据相互隔离。

创建对话

用于请求创建并获取一个对话ID,对话ID是用户与Bot进行聊天的基础载体。聊天记录、长期记忆和短期记忆等能力都是基于对话ID。

请求方式

POST

调用地址

https://api.gptbots.ai/v1/conversation

调用验证

详情参见【API概述】内的鉴权方式说明。

请求

请求示例

curl -X POST https://api.gptbots.ai/v1/conversation \
  -H 'Authorization: Bearer your_apikey' \
  -H 'Content-Type: application/json' \
  -d '{
        "user_id": "123456789"
}'

请求头

请求体

响应

响应示例

{
  "conversation_id": "45701982-8118-4bc5-8e9b-64562b4555f2"
}

成功响应

失败响应

错误码

发送对话消息

向指定的对话ID发送消息,并获取Bot响应信息。

请求方式

POST

调用地址

https://api.gptbots.ai/v1/conversation/message

调用验证

详情参见API概述的鉴权方式说明。

请求

请求示例

curl -X POST https://api.gptbots.ai/v1/conversation/message \
  -H 'Authorization: Bearer your_apikey' \
  -H 'Content-Type: application/json' \
  -d '{
        "user_id": "123456",
        "text": "你好!",
        "conversation_id": "xxxxxx",
        "response_mode": "streaming"
}'

请求头

请求体

响应

响应示例

 {
  "message_id": "059f87d9-15c0-473a-870c-fde95cdcc1e4",
  "message_type": "ANSWER",
  "text": "Hi, is there anything I can help you?",
  "correlate_dataset": [
    {
      "data_id": "64ba14b0e62000708d1ee6ae",
      "data_name": "文档名称"
    }
  ],
  "next_question": [
    "需要帮忙吗?",
    "有什么问题吗?",
    "还需要我做什么吗?"
  ],
  "flow_output": [
    {
      "content": "你好",
      "branch": "1",
      "from_component_name": "User Input"
    }
  ],
  "create_time": 1679587005,
  "conversation_id": "45701982-8118-4bc5-8e9b-64562b4555f2"
}

成功响应(阻塞)

成功响应(流式)

流式数据分多次返回:

{"code":1,"message":"CorrelateDataset","data":[{"dataId":"64ba14b0e62000708d1ee6ae","dataName":"文档名称"}]}
{"code":3,"message":"Text","data":"我"}  
{"code":3,"message":"Text","data":"可以"}
{"code":3,"message":"Text","data":"帮"}  
{"code":3,"message":"Text","data":"助"}
{"code":3,"message":"Text","data":"你"}  
{"code":3,"message":"Text","data":"的"}
{"code":3,"message":"Text","data":"吗"}
{"code":3,"message":"Text","data":"?"}
{"code":7,"message":"NextQuestion","data":["需要帮忙吗?","有什么问题吗?","还需要我做什么吗?"]}
{"code":10,"message":"FlowOutput","data":[{"content":"你好","branch":null,"from_component_name": "User Input"}]}
{"code":0,"message":"End","data":null}

失败响应

错误码

Last updated