彭展玮
返回项目列表

Project

Olist 智能问数 Agent

确定性优先的业务数据问数 Agent:自然语言指标查询、双变量统计检验、三目标归因分析走确定性代码,规则解析不了才 fallback 到 LLM ReAct,每个回答附源 SQL 可对账。

PythonFastAPIVue 3DeepSeekPandasSciPy

Architecture

确定性优先路由

自然语言问题意图分类(规则引擎)查询 / 统计检验 / 归因 / 深度验证 / 拒写写请求直接拦截永不进入 LLM主路 · ~90%确定性引擎模板化 SQL · 白名单表 · 只读统计方法路由 · 归因证据链兜底 · 规则解析不了LLM ReAct 兜底自研循环 · max 5 步反射重试 · 工具错误回喂语义字典锁定指标口径模型只能「选」不能「编」· 指标/维度唯一定义统计检验 + 归因证据链卡方/Fisher/Mann-Whitney · FDR-BH + 效应量双门槛 · Logistic HC3结果 + 源 SQL 审计每个回答可对账 · SSE 流式输出意图准确率 100% · 完成 129/129 · 确定性核验 117/117 · U 验收 32/32归因 375s → 95.2s · 慢查询 180s+ → 1.4s

纵向决策流 · 实线为确定性主路,虚线为 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 方案怎么分工?
  • ?语义字典如何防止指标编造?
  • ?归因证据链有哪几道统计门槛?
  • ?写请求在哪一层被拦截?
向 AI 分身提问