事件驱动工作流

在 AI 生成与最终响应之间执行自定义业务逻辑。在交付前对 AI 输出进行增强、校验和转换。

三段式流程

事件驱动工作流会形成一个强大的处理管道:

  1. AI 生成:ModelRiver 使用你配置的供应商处理请求
  2. 你来处理:你的后端收到 AI 输出后执行自定义逻辑,例如数据库更新、工具调用、校验或增强
  3. 最终响应:你回调 ModelRiver,ModelRiver 再把最终结果广播到 WebSocket 频道

什么时候使用

  • 根据 AI 输出执行工具 / 函数调用
  • 用数据库数据验证或增强 AI 响应
  • 实现带审批节点的多步工作流
  • 在返回用户之前触发通知、数据库写入等副作用

配置方式

1. 为工作流添加事件名

在控制台创建或编辑工作流时,设置 Event name 字段。

2. 处理 webhook 载荷

当带有 event_name 的工作流完成 AI 生成后,ModelRiver 会发送与标准 webhook 不同的载荷:

  • typetask.ai_generated
  • event 为你自定义的事件名
  • ai_response 包含 AI 原始结果
  • callback_url 用于回调 ModelRiver
  • callback_required: true 表示 ModelRiver 正在等待你的回调

3. 处理并回调

你的后端执行业务逻辑后,把增强后的数据回传给 ModelRiver。随后 ModelRiver 会把最终结果发回 WebSocket 客户端。

4. 前端接收最终结果

前端会同时看到原始 ai_response 和你回传后的最终 data,适合构建多阶段处理体验。

超时处理

如果你的后端在 5 分钟 内没有完成回调,ModelRiver 会:

  1. 向 WebSocket 频道发送超时错误
  2. 记录超时事件
  3. 将请求标记为失败

在 Playground 中测试

对于设置了 event_name 的工作流,Playground 会自动模拟完整事件驱动流程。大约 1.5 秒后系统会生成一个模拟回调结果,便于你在正式上线前验证逻辑。

下一步