add_workflow_experience_knowledge.py 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #!/usr/bin/env python3
  2. import json
  3. # 读取现有文件
  4. with open('/root/Agent/pre_upload_list.json', 'r', encoding='utf-8') as f:
  5. data = json.load(f)
  6. # 新的知识条目
  7. new_knowledge = [
  8. {
  9. "task": "在分析工作流文件时,当 glob 搜索找不到目标文件的有效定位策略",
  10. "content": "当 glob_files 按模式匹配找不到目标文件时,应该:1) 使用 bash_command 执行 find 命令进行更广泛的文件系统搜索,支持通配符和路径遍历;2) 结合 grep 内容搜索,通过文件内容关键词定位(如工具名、方案名);3) 检查相关目录结构,如 research/outputs/ 下的子目录。案例:本次任务中 glob_files 搜索\"*wf_005*\"未找到文件,但通过 find 命令搜索包含\"ComfyUI\"\"Nano Banana\"等关键词的 markdown 文件,成功在 outputs/04/ 目录下找到颗粒感纸张纹理插画风格工作流调研报告.md,该文件即为 wf_005 的 raw_markdown 内容。",
  11. "types": ["experience"],
  12. "tags": {
  13. "intent": "工作流文件定位",
  14. "state": "文件搜索",
  15. "tools": "glob_files,bash_command"
  16. },
  17. "score": 4,
  18. "source": {"category": "research"}
  19. },
  20. {
  21. "task": "工作流意图归纳的粒度判断原则",
  22. "content": "在将工作流技术步骤归纳为意图级描述时,粒度判断应遵循:1) 保留工具差异——相同意图但不同工具实现应分开记录,因为工具选择是工作流变体的关键信息;2) 合并连续子步骤——同一工具内的连续操作(如新建图层→填充→设置混合模式)可合并为一个意图;3) 跨方案可比较——意图描述应使不同工作流的相同功能模块可对比。案例:本次将 Photoshop 的 5 种颗粒添加方法分别记录为\"添加溶解颗粒效果\"\"手绘颗粒纹理\"\"滤镜添加全局杂色\"等,保留了方法差异;而将 ComfyUI 的分割 + 重排合并为\"创建四方连续布局\"。",
  23. "types": ["experience"],
  24. "tags": {
  25. "intent": "工作流分析",
  26. "state": "意图归纳",
  27. "method": "语义聚类"
  28. },
  29. "score": 4,
  30. "source": {"category": "research"}
  31. }
  32. ]
  33. # 添加到 knowledge 数组
  34. data['knowledge'].extend(new_knowledge)
  35. # 写回文件
  36. with open('/root/Agent/pre_upload_list.json', 'w', encoding='utf-8') as f:
  37. json.dump(data, f, ensure_ascii=False, indent=2)
  38. print(f"成功添加 {len(new_knowledge)} 条知识条目")
  39. print(f"当前 knowledge 总数:{len(data['knowledge'])}")