Skip to main content

会话管理

对话服务模块包含应用对话、会话记录、反馈管理等功能。

应用对话

应用对话

  • 接口地址/openapi/store/api/v1/chat/completions
  • 请求方法:POST
  • 权限要求app_chat READ
  • 接口描述:发起对话并获取AI回复,支持SSE流式输出和JSON响应

请求参数

参数名类型必填说明
appidString应用ID
promptString用户提问内容
userIdString用户ID
conversationIdString会话ID,保持上下文
containIdString容器ID

RequestBody示例

{
"appid": "app_001",
"prompt": "介绍一下产品",
"userId": "user_001",
"conversationId": "conv_001"
}

响应示例

返回SSE流或JSON格式数据

请求示例

curl -X POST "${domain}/openapi/store/api/v1/chat/completions" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"appid": "app_001",
"prompt": "介绍一下产品"
}'

会话记录

会话记录列表

  • 接口地址/store/api/saas/app/chat/list
  • 请求方法:GET
  • 权限要求app_chat_record READ
  • 接口描述:分页查询应用会话记录

请求参数

参数名类型必填说明
pageNoInteger当前页码,默认1
pageSizeInteger页码大小,默认10
questionString问题内容(模糊查询)
userNameString用户名
startTimeString开始时间,格式:yyyy-MM-dd
endTimeString结束时间,格式:yyyy-MM-dd
conversationIdString会话ID
appidString应用ID
containIdString容器ID
userIdString用户ID
sortString排序方式,默认desc

响应示例

{
"data": [
{
"id": 1,
"messageId": "msg_001",
"conversationId": "conv_001",
"parentMessageId": null,
"apiType": "chat",
"questionCount": 1,
"question": "如何使用产品?",
"originalData": null,
"userId": "user_001",
"userName": "张三",
"ip": "192.168.1.1",
"status": "success",
"type": "text",
"modelName": "glm-3-turbo",
"content": "产品使用方法如下...",
"messageType": 1,
"responseErrorData": null,
"fileSource": null,
"costTime": 1500,
"startTime": "2024-01-01 10:00:00",
"creator": "user_001",
"createTime": "2024-01-01 10:00:00",
"modifier": "user_001",
"modifiedTime": "2024-01-01 10:00:00",
"timeLogs": null
}
],
"total": 1,
"totalPage": 1,
"pageNo": 1,
"pageSize": 10
}

请求示例

curl -X GET "${domain}/store/api/saas/app/chat/list?pageNo=1&pageSize=10&startTime=2024-01-01&endTime=2024-12-31" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"

会话记录详情

  • 接口地址/store/api/saas/app/chat/queryById
  • 请求方法:GET
  • 权限要求app_chat_record READ
  • 接口描述:查询会话记录详情

请求参数

参数名类型必填说明
idInteger记录ID

响应示例

{
"code": 8200,
"message": "操作成功",
"data": {
"id": 1,
"messageId": "msg_001",
"conversationId": "conv_001",
"parentMessageId": null,
"apiType": "chat",
"questionCount": 1,
"question": "如何使用产品?",
"originalData": null,
"userId": "user_001",
"userName": "张三",
"ip": "192.168.1.1",
"status": "success",
"type": "text",
"modelName": "glm-3-turbo",
"content": "产品使用方法如下...",
"messageType": 1,
"responseErrorData": null,
"fileSource": null,
"costTime": 1500,
"startTime": "2024-01-01 10:00:00",
"creator": "user_001",
"createTime": "2024-01-01 10:00:00",
"modifier": "user_001",
"modifiedTime": "2024-01-01 10:00:00",
"timeLogs": null
}
}

请求示例

curl -X GET "${domain}/store/api/saas/app/chat/queryById?id=1" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"

会话主题列表

  • 接口地址/store/api/saas/app/topic/list
  • 请求方法:GET
  • 权限要求app_chat_record READ
  • 接口描述:分页查询会话主题列表

请求参数

参数名类型必填说明
pageNoInteger当前页码,默认1
pageSizeInteger页码大小,默认10
questionString问题内容(模糊查询)
userNameString用户名
startTimeString开始时间,格式:yyyy-MM-dd
endTimeString结束时间,格式:yyyy-MM-dd
conversationIdString会话ID
appidString应用ID
containIdString容器ID
userIdString用户ID
sortString排序方式,默认desc

响应示例

{
"data": [
{
"id": 1,
"messageId": "msg_001",
"conversationId": "conv_001",
"parentMessageId": null,
"apiType": "chat",
"questionCount": 1,
"question": "产品咨询",
"originalData": null,
"userId": "user_001",
"userName": "张三",
"ip": "192.168.1.1",
"status": "success",
"type": "text",
"modelName": "glm-3-turbo",
"content": "产品使用方法如下...",
"messageType": 1,
"responseErrorData": null,
"fileSource": null,
"costTime": 1500,
"startTime": "2024-01-01 10:00:00",
"creator": "user_001",
"createTime": "2024-01-01 10:00:00",
"modifier": "user_001",
"modifiedTime": "2024-01-01 10:00:00",
"timeLogs": null
}
],
"total": 1,
"totalPage": 1,
"pageNo": 1,
"pageSize": 10
}

请求示例

curl -X GET "${domain}/store/api/saas/app/topic/list?pageNo=1&pageSize=10&startTime=2024-01-01&endTime=2024-12-31" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"

导出会话记录

  • 接口地址/store/api/saas/app/chat/export
  • 请求方法:GET
  • 权限要求app_chat_record READ
  • 接口描述:导出会话记录为Excel文件

请求参数

参数名类型必填说明
questionString问题内容(模糊查询)
userNameString用户名
startTimeString开始时间,格式:yyyy-MM-dd
endTimeString结束时间,格式:yyyy-MM-dd
conversationIdString会话ID
appidString应用ID
containIdString容器ID
userIdString用户ID
sortString排序方式,默认desc

响应示例

返回文件流

请求示例

curl -X GET "${domain}/store/api/saas/app/chat/export?startTime=2024-01-01&endTime=2024-12-31" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-o chat_records.xlsx

会话反馈

提交反馈

  • 接口地址/kl/api/saas/feedback/add
  • 请求方法:POST
  • 权限要求app_chat_feedback WRITE
  • 接口描述:提交对话反馈信息

请求参数

参数名类型必填说明
conversationIdString会话ID
modelString模型名称,默认glm-3-turbo
questionString用户问题
answerStringAI回答内容
remarkString备注说明
typeString反馈类型:like-点赞,tap-点踩,other-其他
tagString标签
messageIdString消息ID
appidString应用ID

RequestBody示例

{
"conversationId": "conv_001",
"question": "如何使用产品?",
"answer": "产品使用方法如下...",
"type": "like",
"remark": "回答很有帮助",
"messageId": "msg_001",
"appid": "app_001"
}

响应示例

{
"code": 8200,
"message": "提交成功",
"data": null
}

请求示例

curl -X POST "${domain}/kl/api/saas/feedback/add" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"conversationId": "conv_001",
"question": "如何使用产品?",
"answer": "产品使用方法如下...",
"type": "like",
"remark": "回答很有帮助"
}'

反馈列表

  • 接口地址/kl/api/saas/feedback/list
  • 请求方法:GET
  • 权限要求app_chat_feedback READ
  • 接口描述:分页查询反馈信息列表

请求参数

参数名类型必填说明
pageNoInteger当前页码,默认1
pageSizeInteger页码大小,默认10
questionString问题内容(模糊查询)
startTimeString开始时间,格式:yyyy-MM-dd
endTimeString结束时间,格式:yyyy-MM-dd
typeString反馈类型:like-点赞,tap-点踩,other-其他
statusInteger处理状态:0-未处理,1-已处理
appidString应用ID
appNameString应用名称

响应示例

{
"data": [
{
"id": 1,
"conversationId": "conv_001",
"userNameDisplay": "张三",
"userId": "user_001",
"userName": "zhangsan",
"tel": "13800138000",
"question": "如何使用产品?",
"answer": "产品使用方法如下...",
"remark": "回答很有帮助",
"type": "like",
"tag": null,
"status": 0,
"feedbackSource": null,
"feedbackSourceType": null,
"creator": "user_001",
"createTime": "2024-01-01 10:00:00",
"modifier": "user_001",
"modifierTime": "2024-01-01 10:00:00",
"sort": 1
}
],
"total": 1,
"totalPage": 1,
"pageNo": 1,
"pageSize": 10
}

请求示例

curl -X GET "${domain}/kl/api/saas/feedback/list?pageNo=1&pageSize=10" \
-H "Authorization: Bearer sk_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"