6.3 KiB
Executable File
6.3 KiB
Executable File
多Agent系统开发计划对比 - 2025年3月31日
文档位置: /home/xia-lab/wutx/00test/bbav20311/docs/PLAN_COMPARISON_2025-03-31.md
记录时间: 2025-03-31 01:54 GMT+8
记录人: xialab的幸运星 🧬🤖
一、阉割版 vs 完整版对比
| 功能 | 阉割版(7天) | 完整版(1个月) |
|---|---|---|
| Agent数量 | 2个(Router + Execution) | 9个(全套) |
| 意图识别 | 关键词匹配 | LLM+规则混合 |
| 任务规划 | 固定流程(identify→phylogeny→motif→domain→structure) | 动态规划,根据需求调整 |
| 错误处理 | 失败停止,显示错误 | DiagnosisAgent自动诊断+重试 |
| RAG文献 | ❌ 砍掉 | ✅ 文献问答 |
| 记忆学习 | ❌ 无 | ✅ 记住用户偏好 |
| 多任务并行 | ❌ 串行执行 | ✅ 并行分析 |
| 结果验证 | ❌ 人工检查 | ✅ ValidatorAgent自动验证 |
二、核心代码对比
阉割版代码
# 阉割版:直接执行固定流程
async def agent_chat(request):
intent = simple_keyword_parse(request.message) # 关键词匹配
# 固定流程:identify → phylogeny → motif → domain → structure
stages = ["identify", "phylogeny", "motif", "domain", "structure"]
for stage in stages:
result = await run_cli(stage, intent.params) # 直接调CLI
if result.failed:
return {"error": result.error} # 失败就停
return {"success": True, "results": results}
完整版代码
# 完整版:多Agent协作
async def agent_chat(request):
state = await orchestrator.process(request.message) # LangGraph编排
# Router → Planning → Execution → Validator → Learning
# 每个Agent都可能介入,动态决策
return state.final_result
三、阉割版功能边界
✅ 阉割版能做
- 用户说:"分析Ft SPL基因家族"
- 系统自动执行:identify → phylogeny → motif → domain → structure
- 前端显示进度和结果
❌ 阉割版不能做
- 问:"SPL基因有什么功能"(无RAG)
- 自动修复错误(无DiagnosisAgent)
- 记住用户偏好(无LearningAgent)
- 并行执行多个分析
四、7天冲刺计划(阉割版)
Day 1-2(4月1-2日):核心打通
目标:ExecutionAgent跑通
| 小时 | 任务 | 产出 |
|---|---|---|
| 0-4h | 修改 /api/agent/chat 直接调用CLI执行 |
Agent输入→实际运行identify |
| 4-8h | 前端显示执行进度 | 实时日志推送到对话窗口 |
| 8-12h | 测试端到端流程 | "帮我分析Ft SPL"→出结果 |
砍掉:RouterAgent复杂路由,先用关键词匹配
Day 3-4(4月3-4日):多阶段串联
目标:一个指令完成多阶段分析
| 小时 | 任务 | 产出 |
|---|---|---|
| 0-6h | PlanningAgent简单实现 | "分析SPL基因家族"→自动拆分为identify→phylogeny→motif |
| 6-12h | 阶段自动流转 | identify完成自动触发phylogeny |
砍掉:复杂的错误恢复,失败就停
Day 5-6(4月5-6日):RAG问答
目标:文献问答可用
| 小时 | 任务 | 产出 |
|---|---|---|
| 0-6h | 接入已有RAG | 问"SPL基因功能"能检索文献回答 |
| 6-12h | 前端切换模式 | 技能模式🔧/文献模式📚切换 |
Day 7(4月7日):测试收尾
- 完整流程测试
- 修复阻塞性bug
- 写使用文档
五、完整版开发计划(1个月)
第一阶段:核心集成(3月31日-4月6日)
目标: 将前端Agent调用接入完整的Orchestrator编排流程
| 任务 | 优先级 | 预计时间 | 产出 |
|---|---|---|---|
1. 修改 /api/agent/chat 使用Orchestrator |
🔴 P0 | 1天 | 后端API调用完整MAS流程 |
| 2. 统一意图解析逻辑 | 🔴 P0 | 0.5天 | 删除重复代码,统一走RouterAgent |
| 3. 实现ExecutionAgent与CLI集成 | 🔴 P0 | 2天 | Agent能实际执行分析任务 |
| 4. 添加Agent执行状态反馈 | 🟡 P1 | 1天 | 前端实时显示当前处理Agent |
第二阶段:协作机制(4月7日-4月13日)
目标: 实现多Agent协作完成复杂任务
| 任务 | 优先级 | 预计时间 | 产出 |
|---|---|---|---|
| 5. 完善PlanningAgent任务分解 | 🟡 P1 | 2天 | 复杂任务自动拆分子任务 |
| 6. 实现Agent间消息传递 | 🟡 P1 | 1天 | Agent可以协作通信 |
| 7. 添加DiagnosisAgent错误处理 | 🟡 P1 | 2天 | 自动诊断和修复建议 |
| 8. 集成RAG到KnowledgeAgent | 🟢 P2 | 1天 | 文献问答质量提升 |
第三阶段:优化完善(4月14日-4月20日)
目标: 提升系统稳定性和用户体验
| 任务 | 优先级 | 预计时间 | 产出 |
|---|---|---|---|
| 9. 完善记忆系统跨会话保持 | 🟢 P2 | 2天 | 用户历史偏好被记住 |
| 10. 实现LearningAgent反馈学习 | 🟢 P2 | 2天 | 从用户纠正中学习 |
| 11. 添加Agent性能监控 | 🟢 P2 | 1天 | 响应时间、准确率统计 |
| 12. 编写Agent单元测试 | 🟢 P2 | 2天 | 测试覆盖核心Agent逻辑 |
六、关键决策选项
选项A:阉割版(推荐)
- 时间: 7天
- 结果: Agent能自动执行完整分析流程
- 风险: 低,功能明确
选项B:先阉割后扩展
- 时间: 7天基础版 + 后续迭代
- 结果: 先让Agent能干活,再慢慢加功能
- 风险: 最低,可快速验证
选项C:只做一个阶段
- 时间: 3天
- 结果: 只自动跑identify
- 风险: 功能太弱,演示效果差
七、技术债务记录
阉割版产生的债务
- 意图解析只用关键词,后续需升级为LLM+规则
- 错误处理简单,后续需添加DiagnosisAgent
- 无记忆功能,后续需添加MemoryManager集成
- 无学习功能,后续需添加LearningAgent
偿还计划
- 第2周:添加DiagnosisAgent基础错误处理
- 第3周:集成MemoryManager
- 第4周:升级为完整Orchestrator流程
八、参考文档
- 当前状态:
docs/AGENT_STATUS_2025-03-31.md - 修订记录:
docs/CHANGELOG_2025-03-30.md - 架构设计:
memory/modules/overview.md
建议: 选择 选项B(先阉割后扩展),7天内让Agent真正可用,再逐步完善。
下一步: 等待用户确认选项,立即开始编码。