PaiAgent 实时调试实战SSE流式输出像看直播一样观察AI生成过程完整教程【免费下载链接】PaiAgent轻量级的AI工作流编排系统类似dify、n8n全程使用Vibe CodingAI工具为QoderCLI。涉及到的技术栈包括SpringAI、LangGraph4J、SSE、MinIO、DAG自定引擎等。项目地址: https://gitcode.com/javabetter/PaiAgentPaiAgent 是一个轻量级的 AI 工作流编排系统类似 dify、n8n支持通过可视化拖拽方式编排 OpenAI、DeepSeek、通义千问等多大模型节点。除了编排能力它内置的SSE 实时调试功能更值得一提工作流执行过程中每个节点的启动、进度、成功与耗时都会通过 SSEServer-Sent Events流式推送给浏览器调试面板上的日志逐条滚动、进度条实时跳动就像看直播一样完整观察 AI 生成过程。本文将带你快速上手 PaiAgent 的实时调试并看懂背后的流式输出机制。上图是 PaiAgent 调试抽屉的三个核心区域左侧执行日志、中间执行状态与节点结果、右侧 SSE 流式实时日志。为什么用SSE做实时调试调试 AI 工作流时有三种常见思路方式原理体验轮询前端定时发请求问后端延迟高、请求多、浪费资源WebSocket全双工长连接功能强但比这里的需求重SSE服务端单向持续推送事件轻量、浏览器原生支持、断线可重连✅AI 工作流调试是典型的服务端 → 客户端单向通知场景后端执行引擎每完成一个动作就推一条事件前端只负责接收和渲染。PaiAgent 选择 SSE 正是因为它实现简单一个 HTTP 长连接即可、浏览器原生EventSourceAPI 就能消费无需额外依赖。相关架构在 docs/mermaid.md 中有更完整的可视化说明前端与后端的 REST API / SSE 通道设计如下三步开启PaiAgent实时调试第1步拖拽搭建一个简单工作流登录后进入编辑器从左侧「节点库」把输入 → 大模型节点如通义千问→ 超拟人音频合成 → 输出依次拖到画布并连线在右侧面板配置模型参数和提示词即可第2步点击顶部「调试」按钮点击右上角的蓝色调试按钮右侧会滑出调试抽屉Debug Drawer。在输入框填入本次执行的输入数据如Qoder 牛逼点击执行。第3步看日志像直播一样滚动执行开始后调试面板会实时呈现执行日志开始执行工作流...→节点 [input] 开始执行→节点 [qwen] 执行成功,耗时 4052ms逐条追加执行状态整体状态、进度条如 67%、已完成节点数2 / 3实时刷新️节点结果每个节点的输入/输出数据、耗时以折叠面板展示失败节点会标红并给出错误信息。对于 TTS、LLM 这类耗时较长的节点还能收到NODE_PROGRESS进度事件如正在处理第 2/3 个片段过程完全透明。深入原理6种SSE事件构成直播信号后端SseEmitter 事件推送实时执行的入口是 ExecutionController.java 中的/api/workflows/{id}/execute/stream接口。它创建一个SseEmitter超时 5 分钟然后在新线程中执行工作流把执行引擎的每个回调事件event以命名事件的形式send给客户端执行完毕调用emitter.complete()关闭连接。所有推送的事件都遵循统一结构定义在 ExecutionEvent.java共 6 种类型事件类型触发时机携带信息WORKFLOW_START工作流开始执行执行 IDNODE_START某个节点开始执行节点 ID、名称NODE_PROGRESS节点执行中进度汇报进度文案、数据NODE_SUCCESS节点执行成功输出数据、耗时NODE_ERROR节点执行失败错误信息WORKFLOW_COMPLETE整个工作流结束最终输出、总耗时事件由执行引擎统一产生并向上回调核心调度逻辑见 WorkflowExecutor.java事件如何驱动节点执行可结合 docs/resume.md 一起阅读。前端EventSource 监听七路信号前端封装在 workflow.ts 的executeWorkflowStream中先确保登录 Token 有效再拼接带 token 的流式接口地址用浏览器原生EventSource建立连接然后针对上面 6 种事件 ERROR各注册一个addEventListener监听器eventSource.addEventListener(NODE_START, (e) { const event JSON.parse(e.data); onEvent(event); // 交给调试抽屉更新 UI });调试抽屉 DebugDrawer.tsx 在收到事件后按eventType分支处理WORKFLOW_START记录执行 ID、NODE_START把节点标记为运行中、NODE_SUCCESS更新输出与耗时、NODE_PROGRESS追加进度日志、最终事件触发收尾同时自动加载最近一次执行记录作为对照。调试面板实用技巧⏱️定位慢节点节点结果里的耗时标签如5603ms可直接看出瓶颈在模型调用还是外部工具。媒体结果即时预览节点输出中的音频/图片/视频 URL 会被自动识别TTS 结果可直接在面板内播放。断点续执行执行失败后可基于快照从断点节点继续执行/executions/{executionId}/resume接口见 ExecutionController.java避免从头重跑。️连接中断兜底onerror中会判断是否收到过数据——未收到数据说明是认证失败自动跳转登录页已收到数据则提示连接中断。总结要点说明一句话上手拖拽搭好工作流 → 点「调试」→ 看日志直播核心价值SSE 单向流式推送零轮询、低延迟、轻量后端关键类ExecutionControllerSSE 出口ExecutionEvent事件模型前端关键文件workflow.tsEventSource 封装DebugDrawer.tsx实时渲染PaiAgent 用一套简单的事件模型把AI 工作流执行这件黑盒事变成了全程可见的直播。如果你正在学习 Spring Boot Spring AI 的 AI 应用开发这套 SSE 实时调试的实现是非常值得参考的完整案例。更多使用说明可查阅 docs/USER_GUIDE.md 和项目 README.md。【免费下载链接】PaiAgent轻量级的AI工作流编排系统类似dify、n8n全程使用Vibe CodingAI工具为QoderCLI。涉及到的技术栈包括SpringAI、LangGraph4J、SSE、MinIO、DAG自定引擎等。项目地址: https://gitcode.com/javabetter/PaiAgent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考