返回项目列表
Project
Olist 智能问数 Agent
确定性优先的业务数据问数 Agent:自然语言指标查询、双变量统计检验、三目标归因分析走确定性代码,规则解析不了才 fallback 到 LLM ReAct,每个回答附源 SQL 可对账。
PythonFastAPIVue 3DeepSeekPandasSciPy
Architecture
确定性优先路由
纵向决策流 · 实线为确定性主路,虚线为 LLM 兜底,写请求在入口即被拦截
解决的问题
业务方用自然语言问数据,全 LLM 方案不可复现、不可审计、容易编造指标。需要一个既能听懂人话、结果又可对账可复现的数据分析 Agent。
技术栈
Python 3.12 · FastAPI · Vue 3 · TypeScript · Element Plus · ECharts · DeepSeek · Pandas · SciPy · statsmodels · MySQL · Pytest
个人职责与协作开发
以项目负责人角色牵头端到端建设,与协作者分工协作完成交付。
本人 · 主导
整体架构设计与技术路线、FastAPI 后端服务与接口产品化、Vue3 正式前端与交互体验、数据源接入与会话持久化
协作者
数据分析引擎与统计方法、性能优化与可靠性治理、测试体系与质量验收、完整数据资产建设
Outcomes
成果一览
129/129全库模型评测意图 / 完成 / 工具路径 全 100%
117/117确定性核验117 道题零 LLM 调用
133代码回归通过+1 skipped 统计阈值用例
95.2s归因端到端索引优化前 375s
Journey
性能优化历程
375s基线
全量数据首次归因
95.2s索引优化
数据表加索引,慢查询 180s+ → 1.4s
优化前 375s
Trade-offs
取舍决策
选择
确定性优先,LLM 只做兜底
放弃
全 LLM 自由问答的灵活性
因为
指标查询必须可复现可对账,LLM 只处理规则解析不了的问法
选择
语义字典锁定指标口径
放弃
模型自由发挥指标定义
因为
模型只能从字典里选指标,不能编造,从源头杜绝幻觉数字
选择
写请求在确定性层拦截
放弃
LLM 判断是否为写操作
因为
删库改表类请求由代码直接拒绝,永不进入模型层
可继续追问
- ?确定性优先和全 LLM 方案怎么分工?
- ?语义字典如何防止指标编造?
- ?归因证据链有哪几道统计门槛?
- ?写请求在哪一层被拦截?