数据上下文提取器Skill data-context-extractor

数据上下文提取器是一种人工智能驱动的数据分析技能生成工具,旨在通过自动化提取企业内部知识,帮助公司创建、优化和维护定制化的数据分析能力。它支持引导和迭代两种模式,覆盖数据库连接、模式发现、实体定义、指标计算和常见陷阱文档。关键词:数据分析、数据仓库、技能生成、知识提取、SQL查询、企业数据管理、人工智能辅助、元技能、数据工程、商业智能。

数据分析 0 次安装 0 次浏览 更新于 3/18/2026

name: 数据上下文提取器 description: > 通过从分析师中提取隐性知识,生成或改进公司特定的数据分析技能。

引导模式 - 触发器:“创建一个数据上下文技能”,“为我们的仓库设置数据分析”, “帮我为我们的数据库创建一个技能”,“为[公司]生成一个数据技能” → 发现模式,询问关键问题,生成初始技能和参考文件

迭代模式 - 触发器:“添加关于[领域]的上下文”,“技能需要更多关于[主题]的信息”, “用[指标/表/术语]更新数据技能”,“改进[领域]参考” → 加载现有技能,询问针对性问题,附加/更新参考文件

当数据分析师希望Claude理解他们公司的特定数据仓库、 术语、指标定义和常见查询模式时使用。

数据上下文提取器

一种元技能,从分析师中提取公司特定的数据知识,并生成定制的数据分析技能。

工作原理

该技能有两种模式:

  1. 引导模式:从零创建新的数据分析技能
  2. 迭代模式:通过添加领域特定的参考文件改进现有技能

引导模式

使用时机:用户想为其仓库创建新的数据上下文技能。

阶段1:数据库连接与发现

步骤1:识别数据库类型

询问:“您使用什么数据仓库?”

常见选项:

  • BigQuery
  • Snowflake
  • PostgreSQL/Redshift
  • Databricks

使用 ~~data warehouse 工具(查询和模式)连接。如果不明确,检查当前会话中可用的MCP工具。

步骤2:探索模式

使用 ~~data warehouse 模式工具:

  1. 列出可用的数据集/模式
  2. 识别最重要的表(询问用户:“分析师最常查询的3-5个表是什么?”)
  3. 提取这些关键表的模式详情

按方言的示例探索查询:

-- BigQuery: 列出数据集
SELECT schema_name FROM INFORMATION_SCHEMA.SCHEMATA

-- BigQuery: 列出数据集中的表
SELECT table_name FROM `project.dataset.INFORMATION_SCHEMA.TABLES`

-- Snowflake: 列出模式
SHOW SCHEMAS IN DATABASE my_database

-- Snowflake: 列出表
SHOW TABLES IN SCHEMA my_schema

阶段2:核心问题(询问这些)

模式发现后,以对话方式询问这些问题(不要一次问完):

实体澄清(关键)

“当这里的人说’用户’或’客户’时,具体指什么?有不同的类型吗?”

倾听:

  • 多种实体类型(用户vs账户vs组织)
  • 它们之间的关系(1:1, 1:多, 多:多)
  • 链接它们的ID字段

主要标识符

“对于[客户/用户/账户],主要标识符是什么?同一实体有多个ID吗?”

倾听:

  • 主键与业务键
  • UUID vs 整型ID
  • 遗留ID系统

关键指标

“人们最常问的2-3个指标是什么?每个如何计算?”

倾听:

  • 精确公式(ARR = monthly_revenue × 12)
  • 每个指标来自哪些表/列
  • 时间段惯例(过去7天、日历月等)

数据卫生

“在查询中应该总是过滤掉什么?(测试数据、欺诈、内部用户等)”

倾听:

  • 总应包含的标准WHERE子句
  • 指示排除的标志列(is_test, is_internal, is_fraud)
  • 要排除的特定值(status = ‘deleted’)

常见陷阱

“新分析师在使用这些数据时通常会犯什么错误?”

倾听:

  • 混淆的列名
  • 时区问题
  • NULL处理怪癖
  • 历史与当前状态表

阶段3:生成技能

创建具有此结构的技能:

[公司]-数据-分析师/
├── SKILL.md
└── 参考/
    ├── 实体.md          # 实体定义和关系
    ├── 指标.md           # KPI计算
    ├── 表/              # 每个领域一个文件
    │   ├── [领域1].md
    │   └── [领域2].md
    └── 仪表板.json      # 可选:现有仪表板目录

SKILL.md模板:参见 参考/技能模板.md

SQL方言部分:参见 参考/SQL方言.md 并包含适当的方言注释。

参考文件模板:参见 参考/领域模板.md

阶段4:打包和交付

  1. 在技能目录中创建所有文件
  2. 打包为zip文件
  3. 向用户展示捕获的内容摘要

迭代模式

使用时机:用户有现有技能但需要添加上下文。

步骤1:加载现有技能

要求用户上传其现有技能(zip或文件夹),或如果已在会话中找到则定位。

阅读当前的SKILL.md和参考文件以了解已有文档。

步骤2:识别差距

询问:“需要更多上下文的领域或主题是什么?哪些查询失败或产生错误结果?”

常见差距:

  • 新的数据领域(市场营销、财务、产品等)
  • 缺失的指标定义
  • 未文档化的表关系
  • 新术语

步骤3:针对性发现

对于识别的领域:

  1. 探索相关表:使用 ~~data warehouse 模式工具查找该领域的表

  2. 询问领域特定问题

    • “用于[领域]分析的表有哪些?”
    • “[领域]的关键指标是什么?”
    • “对[领域]数据有特殊过滤器或陷阱吗?”
  3. 生成新参考文件:使用领域模板创建 参考/[领域].md

步骤4:更新和重新打包

  1. 添加新参考文件
  2. 更新SKILL.md的"知识库导航"部分以包含新领域
  3. 重新打包技能
  4. 向用户展示更新后的技能

参考文件标准

每个参考文件应包括:

对于表文档

  • 位置:完整表路径
  • 描述:此表包含什么,何时使用
  • 主键:如何唯一标识行
  • 更新频率:数据刷新频率
  • 关键列:列名、类型、描述、备注的表
  • 关系:此表如何连接到其他表
  • 示例查询:2-3个常见查询模式

对于指标文档

  • 指标名称:人类可读的名称
  • 定义:简明英语解释
  • 公式:精确计算与列引用
  • 源表:数据来自哪里
  • 注意事项:边缘情况、排除、陷阱

对于实体文档

  • 实体名称:叫什么
  • 定义:在业务中代表什么
  • 主表:在哪里找到此实体
  • ID字段:如何标识它
  • 关系:如何与其他实体相关
  • 常见过滤器:标准排除(内部、测试等)

质量检查表

交付生成的技能前,验证:

  • [ ] SKILL.md有完整的前缀(名称、描述)
  • [ ] 实体澄清部分清晰
  • [ ] 关键术语已定义
  • [ ] 标准过滤器/排除已文档化
  • [ ] 每个领域至少2-3个示例查询
  • [ ] SQL使用正确的方言语法
  • [ ] 参考文件从SKILL.md导航部分链接