发送消息-SSE
发送消息-SSE 用于在工作流执行过程中向对话界面发送或展示一条消息。它支持流式输出(逐步呈现内容),并可指定消息的展示类型(如 Markdown、网页、思维导图等),常用于把中间结果或最终结论呈现给用户。
指令标识:Message
指令类型:消息通信指令
指令描述:向对话界面发送或展示一条消息,支持流式输出
先选使用方式
Section titled “先选使用方式”工作流支持「可视化编排」和「代码编排」两种创建方式。发送消息-SSE 在两种方式里都能用,核心业务参数一致。
| 方式 | 怎么用 | 适合人群 |
|---|---|---|
| 可视化编排(推荐先学) | 拖入「发送消息-SSE」节点,填写消息内容、选择是否流式输出和消息类型 | 大多数用户,零代码 |
| 代码编排(Python) | 在脚本中调用 bots.message(message="...") | 熟悉代码、需要复用脚本的用户 |
第一次使用建议先用可视化编排跑通,再迁移到 Python 代码编排。下方「参数说明」同时给出界面字段和代码参数名。
什么时候用?
Section titled “什么时候用?”- 需要把流程中的文本、结论或提示以消息形式呈现给用户。
- 希望内容逐步流式呈现,提升交互体验。
- 需要按 Markdown、网页、思维导图等不同形式渲染消息内容。
- 消息内容已准备好,需要引用的上游变量已正确传入。
- 明确是否需要流式输出(
stream)。 - 明确消息类型(
messageType),确保前端能正确渲染。
可视化编排:从 0 到跑通
Section titled “可视化编排:从 0 到跑通”- 在工作流画布中添加 发送消息-SSE 节点,通常放在某个结果产生之后。
- 在 消息 中填写要展示的内容,可引用上游变量。
- 设置 是否流式输出(默认开启)。
- 按需在高级选项中选择 消息类型 等配置。
- 点击运行,确认对话界面收到了该消息。
| 界面名称 | 代码属性名 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|---|
| 消息 | message | String | 是 | - | 要发送或显示的消息内容,支持文本、JSON 等格式,不能为空,例如 欢迎使用智能助手 |
| 是否流式输出 | stream | Boolean | 是 | True | 是否启用流式输出模式,true 表示逐步输出内容,false 表示一次性输出,不能为空 |
| 是否开启自定义UI展示 | customUiEnabled | Boolean | 否 | False | 是否开启自定义 UI 展示,true 表示开启,false 表示关闭 |
| 输出的key1 | outResultKey1 | String | 否 | - | 高级选项。第一个输出字段的键名,默认为 Answer_Content,用于存储消息内容 |
| 输出的key2 | outResultKey2 | String | 否 | - | 高级选项。第二个输出字段的键名,默认为 status,用于存储执行状态信息 |
| 在智能助理中输出 | assistantMessageOutputEnabled | Boolean | 否 | - | 高级选项。是否在智能助理中输出 |
| 消息类型 | messageType | String | 否 | markdown | 高级选项。消息的展示类型,可选枚举:markdown(Markdown)、html(网页)、mindmap(思维导图)、tool(工具)、fileCard(图文卡片)、aiGeneratedWorkflow(工作流卡片)、workflowLog(工作流日志)、recommendQuestion(推荐问题卡片) |
| 工具ID引用 | toolIdRef | String | 否 | - | 高级选项。关联的工具 ID 引用,用于在消息中引用特定工具的执行结果,例如 tool_123 |
| 出参 | outputList | String | 否 | - | 高级选项。输出参数,JSON 格式,定义要获取的变量名列表(包括 Answer_Content、status) |
| 是否发送消息 | sendMsgFlag | Boolean | 否 | True | 是否发送节点消息 |
| 界面名称 | 代码属性名 | 类型 | 必填 | 说明 |
|---|---|---|---|---|
| 将结果保存至 | outKey | String | 否 | 存储消息节点执行结果的输出变量名,包含消息内容和状态信息,例如 messageResult |
- 对话界面收到并展示了配置的消息内容。
- 流式输出模式下,内容按预期逐步呈现。
- 运行日志中没有发送相关错误。
该节点失败处理默认为「报错中止」(STOP_ON_FAILURE):发送出错会中断当前流程并报错,需要静默跳过时请显式配置失败处理策略。
| 现象 | 可能原因 | 处理建议 |
|---|---|---|
| 对话界面没有收到消息 | 消息内容为空 | 检查「消息」是否填写,变量是否解析为空 |
| 消息渲染异常 | 消息类型与内容格式不匹配 | 确认 messageType 与实际内容格式一致 |
| 变量没有被替换 | 变量引用格式错误 | 确认变量引用格式正确、上游变量有值 |
Python 代码编排
Section titled “Python 代码编排”代码编排以 Python 为主。运行上下文由代码编排模板创建,示例里只需要关注业务指令本身。
# 发送一条消息(默认流式输出)bots.message(message="欢迎使用智能助手")如需关闭流式输出并指定消息类型:
bots.message( message="# 处理结果\n共处理 12 条数据", stream=False, messageType="markdown", outKey="messageResult",)可视化表单里的「消息」「是否流式输出」「消息类型」「将结果保存至」分别对应代码里的 message、stream、messageType、outKey。
Q1:流式输出和一次性输出有什么区别?
Section titled “Q1:流式输出和一次性输出有什么区别?”A: 流式输出(stream=true)会逐步呈现内容,交互体验更好;一次性输出(stream=false)等内容就绪后整体呈现。
Q2:消息类型可以填哪些值?
Section titled “Q2:消息类型可以填哪些值?”A: 支持 markdown、html、mindmap、tool、fileCard、aiGeneratedWorkflow、workflowLog、recommendQuestion,请从枚举中选择,默认 markdown。