Spaces:
Running
Running
A newer version of the Gradio SDK is available:
6.1.0
需求:新增 Mermaid 流程图可视化
重要性: 中 (Medium)
1. 目标
在“工作流”标签页,将由副 Agent 提取出的文本工作流,实时渲染成一个可视化的 Mermaid 流程图。
2. 功能描述
UI 变更:
- 在“工作流”标签页的右侧面板,即“当前工作流描述”下方,新增一个用于显示流程图的区域。
- 此区域将使用
gr.HTML组件实现。
后端逻辑:
- 需要创建一个辅助函数,其功能是将 Markdown 格式的步骤列表(例如
- step 1\n- step 2)转换成 Mermaid 的graph TD流程图语法(例如graph TD; A["step 1"] --> B["step 2"];)。 handle_workflow_chat函数需要调用此辅助函数,在生成文本工作流后,立即生成对应的 Mermaid 语法。handle_workflow_chat的返回值将增加一个,用于承载生成的 Mermaid HTML 代码。
- 需要创建一个辅助函数,其功能是将 Markdown 格式的步骤列表(例如
渲染实现:
- 返回的 Mermaid 语法需要被包裹在一个完整的 HTML 结构中,该结构包含 Mermaid.js 库的
<script>标签和一个用于渲染的<div class="mermaid">容器。 - 这个完整的 HTML 字符串将作为
gr.HTML组件的值被更新。
- 返回的 Mermaid 语法需要被包裹在一个完整的 HTML 结构中,该结构包含 Mermaid.js 库的
3. 自动化测试方案
- 执行现有测试: 复用
test_workflow_tab_dual_agent_interaction测试用例,与 Agent 进行一次简单的交互。 - 增加断言:
- 在最终的快照中,定位到新增的
gr.HTML组件。 - 验证该组件的
value是否包含有效的 Mermaidgraph定义。 - 验证其
value是否包含 Mermaid.js 的<script>标签。
- 在最终的快照中,定位到新增的