项目实训开发日志(五)

发布时间:2026/6/13 22:02:00

项目实训开发日志(五) # BabyMind 项目营养模块第五周周报本周团队开发重点从业务数据录入展示转向系统能否真正具备智能问答和模块联动能力完成了统一问答入口、RAG 知识库接入和多 Agent 路由。我则在这一阶段完成营养 Agent 接入统一问答链路并将已有 Service 层逻辑封装为 LangChain Tool使营养类问题走规则引擎而非纯 LLM 生成。经过本周开发营养模块已接入 POST /api/v1/qa/ask 统一入口并可通过 Agent 工具调用推荐、食谱与过渡指南能力。一、本周完成内容1. 营养类问题接入多 Agent 路由路由逻辑位于 backend/services/agent_router_service.py。系统根据问题关键词辅食、喂养、食谱、过敏、饮食等或用户指定的 preferred_agentnutrition将请求路由到 nutrition Agentagent_type 返回 nutrition。2. 封装营养 Agent 工具集位于 backend/agents/tools/nutrition_tools.py共 4 个工具- get_food_recommendations调用 build_nutrition_recommendations- generate_weekly_meal_plan调用 build_weekly_meal_plan- get_transition_guide按阶段返回喂养过渡场景- check_growth_status调用 growth_service.get_latest_growth_summary 获取生长曲线摘要3. 配合 RAG 接入营养类问答可检索 nutrition Chroma 集合207 条知识片段。eval 脚本 tests/eval/eval_rag.py 抽样 30 条用例营养子集 7/7 命中整体检索准确率 100%。4. 验证跨 Agent 联动。tests/eval/eval_cross_agent_sync.py 共 10 个场景全部通过其中 health→nutrition 场景验证 health Agent 通过 notify_nutrition_agent 异步通知营养 Agent。此外营养 REST 接口在每次请求时也会读取 affects_dietTrue 的健康记录在 dietary_alerts 中给出提醒。5. 补充测试。tests/test_agent_router.py 覆盖营养问题路由tests/test_integration_flows.py 中 test_unified_qa_routes_health_timeline_and_nutrition 验证 health / timeline / nutrition 三类问题均可正确分流。二、遇到的问题Agent 早期存在跳过工具调用、直接用 LLM 生成推荐的情况导致与 REST 接口结果不一致。通过在 Agent System Prompt 中要求优先调用 get_food_recommendations 后改善。get_transition_guide 在无精确关键词匹配时改为返回该阶段全部过渡场景避免空结果。三、下周计划1. 补全各阶段 TransitionGuide 场景内容。2. 推进 Android 营养页面联调。3. 搭建 eval 量化评估体系整理 docs/acceptance_metrics.md。

相关新闻