永续绿建知识库平台后台

liuxiulin fbeaf1bcdd update service 2 周之前
app fbeaf1bcdd update service 2 周之前
boot fbeaf1bcdd update service 2 周之前
config fbeaf1bcdd update service 2 周之前
docker 1921cb4c51 first commit 1 月之前
document 1921cb4c51 first commit 1 月之前
library fbeaf1bcdd update service 2 周之前
public 1921cb4c51 first commit 1 月之前
router fbeaf1bcdd update service 2 周之前
swagger 1921cb4c51 first commit 1 月之前
template 1921cb4c51 first commit 1 月之前
vendor fbeaf1bcdd update service 2 周之前
.gitattributes 1921cb4c51 first commit 1 月之前
.gitignore 1921cb4c51 first commit 1 月之前
Dockerfile 1921cb4c51 first commit 1 月之前
README.MD fbeaf1bcdd update service 2 周之前
go.mod fbeaf1bcdd update service 2 周之前
main.go 1921cb4c51 first commit 1 月之前

README.MD

  1. 新增需求

    • 集成钉钉 Stream SDK(如 dingtalk-stream-sdk-go),创建websocket管理,进行多个机器人实例的接入管理,监听固定 Topic:/v1.0/card/instances/callback 接收用户交互回调。
    • 业务端 robot_config 进行机器人配置管理,管理机器人的相关配置信息,新增robot_config时,如果reply_type = 2时,就在websocket中新增实例,
    • 需要 Access Token:建立 Stream 连接鉴权需使用应用凭证(ClientID/Secret)或 Access Token。access token通过获取企业内部应用的accessToken接口获取。
    • 调用钉钉创建卡片接口:必须先调用“创建卡片”接口生成卡片实例,获取 outTrackIdguid,流式更新依赖这些标识。
    • 业务端创建、更新、删除robot_config的同时,websocket中实例也进行相应的操作
  2. 执行流式更新

    • 收到回调后,业务逻辑处理数据,通过outTrackId查询robot_config,并调用ragflow中的ChatCompletionsStream,将返回的流式消息返回给AI流式接口。

    • 调用"AI 卡片流式更新”接口,/v1.0/card/instances/streamingUpdate 传入 guidoutTrackId 及分段内容 content

    • 设置 isFull=false 进行增量更新,数据返回完毕后设置 isFull=true 结束流。

  3. 状态管理:流式传输结束时,务必将 isFull 设为 true,否则卡片会一直处于“加载中”状态。若发生异常,需设置失败状态以终止加载。

  4. 并发控制:同一卡片的流式更新请求需按顺序发送,避免乱序导致内容显示错误。

  5. 超时处理:建议在服务端设置合理的超时机制,防止长连接因网络波动断开后未重连。