复刻人聊天请求接口(http)
# 1.复刻人聊天请求接口(http)
# 接口描述
接口地址:https://open.galaxyeye-api.com/intellect-saas-v4/v2/server/aiChat (opens new window)
请求方式: HTTP POST
请求类型:application/json; charset=utf-8
接口鉴权:参见接口鉴权
# 输入参数
| 参数名称 | 必选 | 类型 | 说明 |
|---|---|---|---|
| userIdentity | 是 | String | 客户的终端用户的唯一身份标识,可数字、大小写字母、下划线、中划线组合,最大不超过100个字符 |
| content | 是 | String | 用户聊天内容,最大不超过200个字符 |
| robotId | 是 | String | 复刻人ID |
| callbackUrl | 否 | String | 回调地址(点我查看接口定义) 注: 当callbackUrl为空时,开发者需要在开放平台>复刻人管理>编辑页面配置该url; 当开放平台Ai回调地址和接口callbackUrl同时存在的情况下,则接口传入的callbackUrl优先级高于开放平台配置的Ai回调地址; 当同一个用户在已与指定复刻人建立websocket连接的情况下,http接入方式不可用; |
| chatModel | 否 | int | 回复模式(0:非流式回复;1:流式回复),默认为非流式回复 注: 流式回复:如果AI回复长文本,在回复生成过程中,程序会将回复内容逐句发送给聊天对象。 非流式回复:程序获取到完整的AI回复文本后,统一发给聊天对象。 |
# 输出参数
| 参数名称 | 必选 | 类型 | 说明 |
|---|---|---|---|
| code | 是 | int | 状态码 |
| msg | 是 | String | 状态描述信息 |
| seq | 是 | String | 消息流水号 |
# 示例
- 输入示例 :
{
"robotId":"****WY-JCALWrAPhkc7mU",
"userIdentity":"kiOiJlZTg4OGYyMjY1MGI0YzdkY",
"content":"你好",
"callbackUrl":"https://xxxxx/xxxxxx",
"chatModel":0
}
- 输出示例:
{
"code":0,
"msg":"OK",
"seq":"828565115464937472"
}
# 快速测试
curl示例:
curl --location --request POST 'https://open.galaxyeye-api.com/intellect-saas-v4/v2/server/aiChat' \
--header 'X-Bm-Access-Token: ****yMjc3LCJhY2Nlc3NLZXkiOiJlZTg4OGYyMjY1MGI0YzdkYjExODA0ZWFkNTQyMmEwMyIsImp3dF90b2tlbl9pZCI6ImU4NjljYTc3LTJiMjctNDBjZC04Yzg4LWE1ODY5NWJlN2Q2NiIsInRlbmFudElkIjoiODUyNTM1NTE0MTIwMDYwOTI4Iiwiand0X3Rva2VuX3R5cGUiOjN9.U5QYuSI-ymzTm6QcAHs2ow1MV3BTXwsACWDGaSeW84Y' \
--header 'Content-Type: application/json; charset=utf-8' \
--data-raw '{
"robotId": "****WY-JCALWrAPhkc7mU",
"userIdentity": "kiOiJlZTg4OGYyMjY1MGI0YzdkY",
"content": "你好",
"callbackUrl": "https://xxxxx/xxxxxx",
"chatModel":0
}'
# 2.复刻人聊天回调接口(http)
# 接口描述
接口地址:/xxx/aiCallback (接口名称仅作示例,开发者可自定义)
请求方式: HTTP POST
请求类型:application/json; charset=utf-8
特别说明: 回调地址端口仅支持默认80或443端口
# 参数说明:
| 参数名称 | 必选 | 类型 | 说明 |
|---|---|---|---|
| method | 是 | String | aiChatResp |
| userIdentity | 否 | string | 客户的终端用户的唯一身份标识 |
| uid | 是 | String | 用户在北冥复刻人系统中的身份标识,可忽略 |
| data | 是 | jsonarray | 业务数据 |
| robotId | 否 | String | 复刻人ID |
| code | 是 | String | 0表示正常,其它参考下面的状态码 |
| msg | 是 | String | "ok"代表正常,如果code非0里面就是具体的错误信息 |
data业务数据示例:
| 参数名称 | 必选 | 字段类型 | 描述 |
|---|---|---|---|
| data | 是 | json | 消息内容 |
| data.msgId | 是 | String | 消息id(唯一标识) |
| data.msgStatus | 否 | int | //0代表消息开始;1代表消息进行中,2代表消息结束 (流式消息特有字段) |
| data.content | 是 | string | 聊天回复的数据,具体由AI引擎端定义 |
| data.sentenceId | 否 | int | 一条消息可能被分成多个分段(序号从0开始),流式消息特有字段 |
| data.task_id | 否 | string | 该字段暂时忽略 |
| data.uid | 是 | String | 用户在北冥复刻人系统中的身份标识,可忽略 |
| data.robotId | 是 | String | 复刻人ID |
| type | 是 | string | 默认是文本 |
- 输入示例:
{
"code":0,
"msg":"ok",
"robotId":"asdFds-HFhyutq****",
"uid":"18087801387********",
"userIdentity":"**002",
"data":[
{
"data":
{
"uid":"18087801387********",
"msgId":"1808780138733637632_********",
"sentenceId":9,
"task_id":"1808780138733637632_********",
"robotId":"asdFds-HFhyutq****",
"msgStatus":2,
"content":""
},
"type":"文本"
}
]
}
# 输出参数
北冥复刻人系统在回调该接口时不解析参数内容,http状态码为200即代表回调成功。因此,输出参数可由开发者自行定义,此处定义仅做参考。
| 参数名称 | 必选 | 类型 | 说明 |
|---|---|---|---|
| code | 是 | String | 状态码 |
| msg | 是 | String | 状态描述信息 |
- 输出示例:
{
"code":0,
"msg":"xxxx"
}
# 快速测试
略
# 3.状态码
| 返回码 | 返回码说明 | 备注 |
|---|---|---|
| 8100 | userIdentity不能为空! | |
| 8100 | robotId不能为空! | |
| 8100 | robotId不可用 | |
| 8223 | 复刻人不属于当前租户 | |
| 8301 | 聊天次数超出限制! | 需要充值token |
| 8998 | 系统内部异常 | 请联系管理员 |
上次更新: 2024/08/05, 17:55:40