Ada推出基于CSV/Excel的AI商业智能软件
速览
Ada推出了一款名为Ada的AI商业智能软件,能够直接从CSV和Excel文件中提取并分析数据。该软件结合了大语言模型的能力,但不仅限于此,还提供传统BI功能,旨在让非技术人员轻松进行数据分析。
AI 深度解读
背景
传统商业智能(BI)工具往往需要复杂的配置和专业技能,才能从表格数据中生成可操作的洞察。对于运营人员或非技术用户来说,上传一份 CSV 或 Excel 文件后,通常只能得到图表,而无法直接获得异常检测、趋势预测、归因分析以及下一步行动建议。与此同时,大语言模型(LLM)驱动的聊天机器人虽然能生成流畅的文字,但难以审计其推理过程,且用户数据可能被直接送入模型。在此背景下,开源项目 Ada 应运而生,旨在填补“零配置”与“可审计性”之间的空白。
核心内容
Ada 是一个开源自动化数据分析工具,专为不想配置 BI 工具但又需要答案的运营人员设计。用户只需上传 CSV、XLSX 或 XLSM 文件,Ada 会自动完成以下流程:
- 清洗数据、推断数据类型;
- 检测业务模式(识别指标、日期、分段、ID 等字段);
- 创建交互式 Plotly 仪表盘;
- 标记异常时间段;
- 生成带保守基线的预测(含不确定性区间);
- 解释实质性变化;
- 推荐下一步应调查的方向;
- 回答关于数据的自然语言问题,并展示每个回答背后的计算过程。
核心设计理念是:即使首次使用,用户也能上传电子表格并理解业务中发生了什么。异常、预测、驱动因素和证据始终保持可检查状态,而不是隐藏在生成的散文背后。
Ada 将分析结果分为四层明确展现:
- 每张证据卡片和聊天回答都暴露其计算过程;
- 无论是否配置 AI 模型,确定性产品本身即具有权威性。
工作流程可用流程图概括:
- 上传 CSV 或 Excel 工作表 → 2. 清洗和推断类型 → 3. 检测指标、日期、分段、ID → 4. 计算证据、异常和预测 → 5. 生成仪表盘、执行摘要和下钻分析。另有一个可选的 AI 查询规划器分支(仅在规则无法解析时用于模式+问题),以及一个可选的 AI 战略解读分支(仅接收计算出的证据)。
Ada 自动寻找以下内容:
- 主要结果指标(如 revenue, sales, profit, cost, amount, units);
- 时间字段(用于时期变动、异常检测和基线预测);
- 有用的分段字段(如 product, category, channel, region, customer, status);
- 标识符、缺失值、离群点、集中度和数值关系;
- 有最强证据支持的下一步调查建议(与观察事实分离)。
如果源模式不寻常,用户可以覆盖检测到的指标、日期和分段,而无需重建仪表盘,还可将整个分析下钻到某个单一分段切片。
主要功能列表:
- 零配置的 CSV 和 Excel 分析,包含内置合成演示数据;
- “Ask Ada”自然语言提问(支持总计、排名、细分、趋势、增长、计数、时间和分段过滤),本地回答并显示计算;
- 异常雷达:在稳健趋势线带之外的时间段会在图表、证据账本和推荐行动中标记;
- 带月季节性的保守基线预测,包含不确定性区间,并在图表旁显示回测误差;
- 下钻聚焦:分析一个分段值后自动按下一个有用维度重新分组;
- 变动瀑布图:按分段调和最新变化,以及分段按时间的热力图;
- 多工作表 Excel 工作簿选择器;
- 保守的清洗、类型推断、重复删除和可见的清洗审计;
- 执行摘要标题、四个业务 KPI 和自然语言简报;
- 证据账本,每个显示信号背后都有计算过程;
- 优先推荐,链接到确定性证据;
- 可选的 AI 查询规划器和结构化策略综合(使用 OpenAI Responses API);
- 可下载的 Markdown 执行摘要和清洗后的 CSV;
- 为非技术用户设计的响应式 Streamlit 界面;
- 文件大小限制和行数上限,以保证托管性能可预测。
Ada 完全可以在没有 API 密钥的情况下工作。在确定性模式下,不进行任何模型调用——包括所有“Ask Ada”中基于规则解析器能自行规划的回答。当提供 API 密钥时,会启用两个狭窄的模型调用(均类型化并在同一本地引擎上执行):
- 查询规划器:仅当确定性解析器无法理解问题时使用。它接收列模式(名称、类型、角色)和问题本身,输出一个类型化的
QueryPlan,然后 Ada 本地执行该计划。无法解析的计划会被拒绝而非猜测,AI 规划的回答会被标记。 - 战略解读:仅接收计算出的模式、摘要、证据卡片、推荐和用户提供的上下文。
两个调用都不会将上传的行或单元格值放入模型提示中。回答必须符合类型化的 Pydantic 模式,请求禁用存储,并使用哈希匿名会话标识符用于安全控制。默认模型是 gpt-5.6-luna(低推理,用于高效战略解读),可选 gpt-5.6-terra(中等推理,用于模棱两可的情况)。模型调用通过按钮触发,并按证据载荷缓存,避免意外消耗。
有关完整的数据处理和安全策略,请参阅 SECURITY.md。代码库偏好纯分析函数,在模型边界使用依赖注入,使业务引擎无需 Streamlit、网络访问或 API 额度即可测试。
安装与运行:
git clone https://github.com/saineshnakra/automated-data-analyst.git
cd automated-data-analyst
python -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
streamlit run app.py
无需密钥。访问者可以在会话侧边栏字段中输入自己的 API 密钥。受信任的私有部署可以通过环境变量或 .streamlit/secrets.toml 设置 OPENAI_API_KEY。注意不要提交该文件(已在 .gitignore 中)。在公共部署中避免使用所有者出资的密钥,除非同时添加认证和消费控制。
开发测试:
python -m pip install -r requirements-dev.txt
ruff check .
python -m unittest discover -s tests -v
GitHub Actions 在每次推送和 PR 时运行 lint、完整测试套件和字节码编译。
关键要点
- 数据隐私:所有清洗、模式检测、图表、证据卡片和“Ask Ada”回答均在本地用 pandas 计算。如果选择使用 AI 层,仅发送列模式和计算出的证据,绝不发送行或单元格值。
- 无需 API 密钥:Ada 可以完全在确定性模式下运行,无需任何 AI 模型调用。密钥仅用于查询规划器回退和战略叙事。
- 支持格式:CSV(逗号、分号、制表符分隔)、XLSX、XLSM,包括从多工作表工作簿中选择特定工作表。
- 与聊天机器人的区别:聊天机器人给出流畅但难以审计的文本,且用户数据成为提示的一部分。Ada 将问题转换为显式查询计划,用 pandas 在本地执行,并在每个答案下打印计算过程。
- 可自托管:标准 Streamlit 应用,
pip install -r requirements.txt && streamlit run app.py,或部署到任何运行 Python 的主机。 - 贡献指南:欢迎围绕确定性指标、Ask ADA 的问题形状、模式检测固定装置、图表可访问性、文件格式和对抗性测试数据集做出贡献。每个新推荐应包含测试和支撑计算。
- 安全策略:两种 AI 调用均不暴露原始数据,回答受类型化模式约束,存储禁用,会话标识符匿名哈希。
意义与影响
Ada 的创新之处在于将“零配置”与“可审计性”结合,打破了传统 BI 工具的高门槛和 LLM 聊天机器人的黑箱问题。它让非技术用户能够直接上传业务表格,立即获得包含异常、预测、归因和行动建议的完整分析,同时所有计算过程透明可见。这种“确定性分析为主、AI 辅助为辅”的架构,既保证了核心功能的可靠性和可解释性,又通过
