WORKFLOW_UPDATE_SUMMARY.md 6.4 KB

Data-governance 工作流更新总结

更新时间: 2025-11-04
工作流 ID: tWfjLZE1FmMfQAIn
工作流名称: Data-governance


🎯 更新目标

修改工作流,使其能够:

  1. 在聊天中获取元数据名称
  2. 自动判断元数据是否已经存在
  3. 如果不存在就添加元数据
  4. 如果已经存在就返回存在的信息

✅ 已完成的更新

1. 更新 Chat Trigger 节点

修改内容:

  • 欢迎消息: 更新为更直接的提示,让用户直接输入元数据名称
  • 输入提示: 从"请输入您的需求..."改为"请输入元数据名称..."
  • 副标题: 从"帮助您进行元数据管理和数据治理"改为"智能元数据管理和查询"

新的欢迎消息:

您好!我是数据治理助手。

我可以帮助您管理和创建元数据。

请直接告诉我您想要查询或创建的元数据名称,例如:
- "检查元数据:其他费用定额"
- "创建元数据:其他费用定额,类型string,描述医疗行业费用元数据"

我会自动检查该元数据是否已存在,如果不存在则为您创建。

2. 更新 AI Agent 系统消息

新的工作流程:

  1. 当用户提供元数据名称时(无论是要求查询还是创建),首先使用 check_metadata 工具检查该元数据是否已存在

  2. 根据检查结果:

    • 如果元数据已存在(exists=true):

      • 告诉用户该元数据已经存在于系统中
      • 返回元数据的相关信息
      • 询问用户是否需要其他帮助
    • 如果元数据不存在(exists=false):

      • 如果用户提供了完整信息(名称、类型、描述),使用 create_metadata 工具创建元数据
      • 如果用户只提供了名称,询问用户是否需要创建,如果需要则询问类型和描述信息
      • 创建成功后,确认创建结果并返回给用户
  3. 如果用户输入包含元数据名称,直接提取名称并使用工具检查,不需要额外询问

关键原则:

  • 始终先检查元数据是否存在,再决定是否需要创建
  • 如果元数据已存在,明确告诉用户,不要重复创建
  • 友好地引导用户提供信息(如果需要创建)
  • 每次只处理一个元数据
  • 使用工具返回的 exists 字段判断是否存在,不要猜测

📊 工作流结构

当前节点

  1. Chat Trigger - 聊天触发器
  2. AI Agent - AI 代理(核心处理节点)
  3. DeepSeek Chat Model - DeepSeek 语言模型
  4. 检查元数据工具 (toolHttpRequest) - 调用 /api/meta/check 接口
  5. 创建元数据工具 (toolHttpRequest) - 调用 /api/meta/node/add 接口

保留但未使用的节点(可以删除)

  • 判断用户意图 (IF 节点) - 不再需要,AI Agent 内部处理逻辑
  • 调用元数据新增API (HTTP Request) - 不再需要,使用工具替代
  • 设置确认消息 (Set 节点) - 不再需要
  • 设置拒绝消息 (Set 节点) - 不再需要

🔄 工作流程

流程 1: 用户查询已存在的元数据

用户输入: "其他费用定额"
    ↓
AI Agent 提取元数据名称
    ↓
调用 check_metadata 工具
    ↓
工具返回: exists=true
    ↓
AI Agent 告诉用户: "该元数据已存在"
    ↓
返回给用户

流程 2: 用户创建新元数据(提供完整信息)

用户输入: "创建元数据:测试数据,类型string,描述测试描述"
    ↓
AI Agent 提取元数据名称: "测试数据"
    ↓
调用 check_metadata 工具
    ↓
工具返回: exists=false
    ↓
AI Agent 提取类型和描述信息
    ↓
调用 create_metadata 工具
    ↓
工具返回: 创建成功
    ↓
AI Agent 告诉用户: "元数据创建成功"
    ↓
返回给用户

流程 3: 用户只提供名称,需要创建

用户输入: "测试元数据"
    ↓
AI Agent 提取元数据名称: "测试元数据"
    ↓
调用 check_metadata 工具
    ↓
工具返回: exists=false
    ↓
AI Agent 询问用户: "该元数据不存在,是否需要创建?如果需要,请提供类型和描述"
    ↓
用户提供信息
    ↓
调用 create_metadata 工具
    ↓
返回创建结果

🔧 工具配置

检查元数据工具

  • URL: http://192.168.3.143:5000/api/meta/check?name_zh={name_zh}
  • 方法: GET
  • 参数: name_zh (元数据中文名)
  • 返回: {exists: true/false, name_zh: "..."}

创建元数据工具

  • URL: http://192.168.3.143:5000/api/meta/node/add
  • 方法: POST
  • 参数:
    • name_zh (必填)
    • data_type (默认 string)
    • description (选填)
  • 返回: 创建结果

✅ 测试建议

测试用例 1: 查询已存在的元数据

输入: "其他费用定额"

预期结果:

  • 调用 check_metadata 工具
  • 返回 exists=true
  • 告诉用户元数据已存在

测试用例 2: 创建新元数据(完整信息)

输入: "创建元数据:新测试数据,类型string,描述这是一个测试"

预期结果:

  • 调用 check_metadata 工具
  • 返回 exists=false
  • 调用 create_metadata 工具
  • 创建成功
  • 告诉用户创建成功

测试用例 3: 创建新元数据(只提供名称)

输入: "新元数据名称"

预期结果:

  • 调用 check_metadata 工具
  • 返回 exists=false
  • AI Agent 询问是否需要创建,需要类型和描述
  • 用户提供后创建

测试用例 4: 尝试创建已存在的元数据

输入: "创建元数据:其他费用定额,类型string,描述测试"

预期结果:

  • 调用 check_metadata 工具
  • 返回 exists=true
  • 告诉用户元数据已存在,不进行创建

📝 注意事项

  1. AI Agent 是终端节点: AI Agent 的输出会直接返回到聊天界面,无需后续节点

  2. 工具自动调用: AI Agent 会根据系统消息的指导,自动决定何时调用工具

  3. 错误处理: 如果工具调用失败,AI Agent 会收到错误信息并告知用户

  4. 接口验证: 确保 /api/meta/check/api/meta/node/add 接口正常工作


🚀 下一步

  1. 测试工作流: 使用上述测试用例验证工作流是否正常工作

  2. 清理节点 (可选): 可以删除不再使用的节点(IF、HTTP Request、Set 节点),但不影响功能

  3. 验证接口: 确保接口在 192.168.3.143:5000 上正常工作


更新完成时间: 2025-11-04
状态: ✅ 配置已更新,等待测试验证