项目概述
Smart Choice Agent 是一个面向结构化推荐和可解释选择的 Python 多 Agent 系统。它不只返回一个推荐结果,而是把用户意图、硬约束、候选项、权衡依据、风险判断和 Agent 运行记录组织成一条可追溯的决策链路。
痛点机会
推荐类 AI 产品常见的问题是“答案看起来合理,但过程不可检查”。当用户条件模糊、约束冲突或候选项很多时,如果系统不能说明过滤逻辑、评分依据和证据来源,产品就很难被调试、复现和稳定迭代。
目标指标
目标是建立一个可扩展的决策框架:既能在无 API Key 时通过本地规则 Agent 跑通完整流程,也能通过 OpenAI-compatible 配置接入模型;既支持饮食推荐这个具体领域,也保留旅行、职业、学习路径和购物等通用决策的扩展空间。
用户调研
项目围绕“推荐为什么可信”拆解证据链:多 Agent 负责语言理解、澄清和解释,确定性引擎负责硬约束过滤、七维评分、排序和候选选择,持久化层记录 DecisionState、Evidence 与 Agent Run,避免把所有判断黑箱化。
方案设计
系统架构由 FastAPI / Static Web 进入 DietOrchestrator,再调用专用 Agent、确定性决策引擎、饮食领域插件和 SQLAlchemy / SQLite 持久化层。饮食场景支持单餐推荐、多轮澄清、换一批、三餐计划、个人餐食库和公共餐食库;候选选择策略支持稳定排序、随机、匹配度加权和很久未推荐优先。
落地推进
我使用 Python、FastAPI、SQLAlchemy 和 SQLite 实现后端服务、数据模型、仓储层、Agent 协议、编排状态机与本地 Web UI。默认关闭 LLM 模式,规则 Agent 可以独立运行;模型调用失败时,意图和解释 Agent 会回退到本地规则结果,保证确定性决策引擎继续工作。
效果复盘
当前仓库包含可运行服务、初始化脚本、测试命令、本地 Web UI、饮食领域数据和通用演示工作台。它已验证从用户输入到候选排序、解释、反馈和 Trace 留存的本地闭环;真实外部证据检索、更多领域模板和评估数据集仍是后续迭代方向。
迭代反思
这个项目的重点不是把推荐包装得更像聊天,而是把推荐拆成可审查的产品过程。对 AI 决策类产品来说,稳定、可解释、可回放的链路比一次看似聪明的回答更重要;后续需要继续补足跨领域模板和更强的回归评估。