Anthropic Blog · 2026-06-03

Anthropic 如何用 Claude 实现 95% 自助数据分析自动化

不是让 Agent 更聪明地写 SQL,而是通过数据治理、结构化参考文档和严谨的评估体系,让 Agent 根本不需要"猜"。

95%+分析查询自动化率
21% → 95%Skill 带来的准确率跃迁
3核心失败模式(歧义/陈旧/检索)
~65%不维护 Skill 一个月后的准确率

Part 1: 核心解读

准确率是上下文问题,不是代码生成问题。Skill(精心编排的 Markdown)是最关键的跃迁。

编码 Agent 有编译器、测试、类型系统做验证。但分析 Agent 的输出——"上月活跃用户数是 1.2M"——没有编译器帮你检查。你不会知道 Agent 用了错误的"活跃"定义或漏了某个过滤。

There's often only a single correct answer using a single correct source in which there's no deterministic way of proving the correctness.

三种核心失败模式

概念-实体歧义

数据模型里几百个字段都能勉强匹配用户提问,但只有一个是"正确"的。比如"活跃用户"——什么行为算活跃?含不含欺诈用户?回看窗口多长?

数据陈旧

数据源、业务定义、Schema 不断变化。资产和 Agent 知识变得过时,返回"微妙地错误"的答案——看起来合理,但差了一个过滤条件。

检索失败

正确的信息就在数据模型中且有标注,但搜索空间太大,Agent 就是找不到。不是信息不存在,是信息不可发现。

三层 Agent 分析栈

消除歧义

数据基础层

规范数据集(单一来源的真实数据)+ 同仓库放置(代码/文档/CI 一体)+ 元数据一等公民。目标是:当 Agent 搜索"收入",只找到一个受治理的答案。

建立导航

真实信息源

语义层(编译好的指标定义)> 血缘/转换图 > 查询语料库(蒸馏后有效,原始无用)> 业务上下文(知识图谱)。信任度从高到低。

执行程序

Skill 层

knowledge Skill(薄路由器,按需加载领域细节)+ unbook Skill(资深分析师流程 + 可复用模式)。21% → 95% 的关键跃迁。

Skill 的影响:数字说话

状态准确率说明
没有 Skill21%Agent 直接查数据仓库,大量歧义和检索失败
有 Skill95%+综合准确率,某些领域达 99%
Skill 不维护(1个月)~65%准确率严重漂移,Skill 文档与数据模型脱节
+ 对抗性审查+6%代价:32% 更多 token,72% 更高延迟
+ 历史 SQL 检索<1%最有价值的否定实验:信息在那里,Agent 看到了,但没用

消融实验的黄金教训

我们给了 Agent 直接 grep 访问数千个历史 SQL 的权限。准确率变化不到 1%。80% 的情况下答案确实在语料库中。Agent 看到了,但仍然没用上。瓶颈不是信息的可访问性(access),而是信息的结构化(structure)。

That single experiment told us our bottleneck wasn't access to prior work, it was structure (i.e., mapping a question to the right entity). That insight redirected months of roadmap.

什么有效

  • 精心编排的 Markdown Skill — 一份"地图",告诉你怎么走
  • 语义层优先 — 编译好的指标定义,一次调用=一个正确数字
  • 同仓库放置 — 代码和文档在同一个 PR 中更新
  • 离线评估 + CI 集成 — 离线准确率应 ~100%
  • 主动纠正收集 — 定时 Agent 扫描修正、自动开 PR

什么无效

  • 原始 SQL 语料库直接检索 — 准确率提升 <1%
  • LLM 自动生成指标定义 — 编码了正试图消除的歧义,净负面
  • 无限叠加文档精炼 — 连续 3 次迭代净负面,文档更长而非更好
  • 用便宜模型做对抗审查 — 失去大部分准确率提升,速度没快多少
  • Skill 写一次就不管 — 一个月后准确率从 95% 暴跌到 65%

参考文档模板(可复用)

# [Domain] Tables

## Quick Reference
### Business Context — [这个领域在业务上意味着什么]
### Entity Grain — [一行代表什么]
### Standard Hygiene Filter — [该领域每条查询都要加的过滤]

## Dimensions
- [关键维度如何编码,同一概念在不同表中的命名差异]

## Key Tables
### [table_name]
- **Grain**: [...] · **Scope/exclusions**: [...]
- **Usage**: [何时用、何时不该用、join keys、必加 filters]

## Gotchas
- [资深分析师会警告你的"错误答案陷阱"]

## Cross-References
- [相邻领域文档,负责相关问题]

未解的难题:静默失败

答案是错的,但看起来合理,被使用而不被质疑。我们没有健壮的解决方案。

The failure mode none of this fully catches is the silent one. The answer is wrong, but looks plausible and is used without objection.

缓解措施:来源页脚(Source/Confidence/Freshness/Owner)、面向领导层的人工签字、顶部 KPI 每日与受信仪表盘的健全性检查。但根本性挑战依然存在。

Part 2: 苏格拉底对话

通过对话揭示为什么"精心编排的 Markdown > RAG 检索",以及 Skill 维护的工程化现实。

学生

Anthropic 说用 Claude 做数据分析准确率 95%,这也太高了吧?我们试过让 AI 查数据库,经常给出看起来对但实际错的数字。

老师

你觉得"看起来对但实际错"通常是什么原因?

学生

大概是 AI 搞错了字段?比如把"注册用户"和"活跃用户"搞混了。

老师

对。Anthropic 把这个叫"概念-实体歧义"——数据模型里有几百个字段都能勉强匹配用户提问,但只有一个是正确的。核心发现是:这不是 AI 推理能力的问题,是你有没有给它正确导航信息的问题。

学生

那 RAG 呢?直接让 AI 搜索历史 SQL 不就行了?

老师

这是他们做过的最有价值的实验:给了 AI 直接访问数千条历史 SQL 的权限——准确率提升不到 1%。80% 的情况下答案确实在那些 SQL 里,AI 也看到了,但就是没用上。

学生

为什么?信息就在那里啊。

老师

因为检索 ≠ 理解 ≠ 应用。一堆散落的 SQL 脚本就像一堆积木——零件都在,但没有说明书告诉你哪块积木用在哪个场景。精心编排的 Skill 文档就是那份说明书。

学生

所以他们的做法是先搞治理(让每个概念只有一个正确答案),再用 Skill 把路径写清楚?

老师

完全正确。三层架构:数据基础确保只有一个正确答案,信息源告诉 Agent 怎么找到它,Skill 告诉 Agent 找到后怎么用。缺任何一层,准确率都会掉。而且 Skill 不是写一次就完了——他们把 Skill 和代码放同一个仓库,90% 的数据模型 PR 都包含 Skill 变更。不维护的话,一个月就从 95% 暴跌到 65%。

Part 3: 个性化洞察

基于你的技术栈和工作场景,提炼可执行的行动建议。

1. Skill 设计模式可直接复用

Anthropic 的 knowledge/unbook 配对模式(薄路由 + 按需加载领域细节)和你现有的全局 Skill 架构高度一致。你的 wiki 知识库(qmd)本质上在做语义层的角色。

下一步:将"先查语义层,fallback 到参考文档"的模式泛化到所有结构化知识检索场景。

2. "否定结果"方法论——做自己的消融实验

Anthropic 的"历史 SQL 无用"实验值千金。下次有人推销"给 AI 接入所有历史数据就能解决问题",你有 Anthropic 的数据作为反驳。

下一步:对你自己的知识库系统做消融——对比 qmd search vs grep vs WebSearch 的回答准确率。

3. Skill 腐烂检测——你的 wiki 也有这个问题

你已经有了 /lint 和 /refresh skill,但可能需要更激进的自动化。Anthropic 的教训:90% 的 PR 必须包含文档变更,否则一个月就废了。

下一步:给 /lint 加"新鲜度评分",超 30 天未更新的 wiki 页面自动标警告。

4. 数据治理 > AI 能力——做 AI 产品的核心洞察

这篇文章最大的 meta-lesson:不是 AI 不够聪明,是你的数据不够干净。做 AI 产品的核心竞争力不是"用了什么模型",而是"积累了多少结构化的领域知识"。

下一步:在产品设计中优先投入数据治理和知识结构化,而非模型调优。

5. 来源页脚——应对"静默失败"的实用策略

Anthropic 的 Source/Confidence/Freshness/Owner 页脚是值得借鉴的实践。在你的分析输出中标注信息来源和可信度。

下一步:在分析类 Skill 中加入来源页脚模板,作为默认输出格式。