Back to skills
extension
Category: Data & AnalyticsNo API key required

蚂蚁工资条 · 薪酬数据分析报告生成器

蚂蚁工资条薪酬数据分析报告生成器。当用户需要分析薪酬结构、诊断内部公平性、生成薪酬诊断报告、评估薪酬带宽合理性、识别薪酬倒挂或异常高/低薪、对比部门/岗位/职级薪酬差异时触发。深度融合计算引擎与大模型写作能力:由 Python 引擎完成精确统计(分位值、CR、渗透率、CV、Gini、偏度峰度、年度涨薪率、异常检测),输出结构化 JSON;再由大模型基于指标结果自动撰写可读性强的薪酬分析报告与具体行动建议。支持 CSV/Excel 数据导入、自定义岗位中位值和职级带宽,输出可交付给管理层的人力成本分析报告。

personAuthor: u_57ea54a5hubenterprise

蚂蚁工资条 · 薪酬数据分析报告生成器

概述

本技能为蚂蚁工资条团队出品的薪酬数据分析与报告生成工具。这是团队技能矩阵中第一个「计算引擎 + 大模型写作」深度融合的技能:

  • Python 计算引擎 (scripts/salary_report_analyzer.py) 负责所有精确统计——描述性统计、CR (Compa-Ratio) 带宽诊断、涨薪分析、分位值对标矩阵、分布形态分析、内部公平性评估、异常检测
  • LLM(即当前 WorkBuddy) 负责将结构化 JSON 分析结果转化为专业、可读、可执行的薪酬分析报告,包含执行摘要、部门对比、带宽诊断、风险预警、优先级行动建议

核心价值主张:让 HR 告别 Excel 透视表和手动报告——上传一份薪酬数据,自动获得一份老板可以直接用的薪酬分析报告。

触发条件

当用户发出以下类型指令时触发本技能:

报告生成类:

  • "帮我分析一下这份薪酬数据" / "生成一份薪酬分析报告"
  • "附件/上传了一份工资表,帮我看看"
  • "分析各部门薪酬情况" / "薪酬结构诊断"

专项分析类:

  • "哪些部门的薪酬有问题" / "有没有薪酬倒挂"
  • "今年的涨薪情况怎么样" / "各部门涨薪率对比"
  • "内部公平性有什么问题"
  • "薪酬分布健康吗"

上传数据类:

  • 用户上传 CSV/Excel/JSON 格式的薪酬数据文件
  • "这是我们的工资数据,帮我出个报告"

报告需求类:

  • "我要给老板汇报薪酬情况,帮我写份报告"
  • "薪酬委员会要一份年度薪酬分析"

与其他技能的关系

  • 个税计算器 (mayi-tax-calculator):单人员维度的个税精算
  • 薪酬方案对比 (mayi-salary-comparator):双方案多维度对比
  • 经济补偿金计算器 (mayi-severance-calculator):离职赔偿计算
  • 本技能:全员/部门/职级维度的统计分析与报告生成

融合架构:计算引擎 + LLM 写作

┌─────────────────────────────────────────────────────┐
│                    用户输入                           │
│   "帮我分析这份薪酬数据" + [上传文件] 或 [口头提供]      │
└──────────────────────┬──────────────────────────────┘
                       ▼
┌─────────────────────────────────────────────────────┐
│              Step 1: 数据获取与加载                    │
│  - 用户上传 CSV/Excel/JSON → load_data()             │
│  - 口头描述 → 引导用户结构化输入                       │
│  - 无可提供数据 → 使用 generate_demo_data() 演示       │
└──────────────────────┬──────────────────────────────┘
                       ▼
┌─────────────────────────────────────────────────────┐
│           Step 2: Python 计算引擎执行                  │
│  run_analysis(records) → AnalysisReport              │
│  to_llm_friendly_json(report) → 结构化 JSON          │
│                                                      │
│  产出:                                              │
│  · 部门/岗位/职级维度描述性统计                        │
│  · 薪酬带宽 CR 诊断 (绿黄红三区)                       │
│  · 年度涨薪率分析                                     │
│  · 分位值对标矩阵 (P10/P25/P50/P75/P90)               │
│  · 内部公平性评估                                     │
│  · 分布形态分析 (偏度/峰度/Gini/直方图)                │
│  · 异常检测结果 (倒挂/CR异常/降薪/涨薪停滞)            │
│  · LLM 叙事线索 (引导写作方向)                         │
└──────────────────────┬──────────────────────────────┘
                       ▼
┌─────────────────────────────────────────────────────┐
│          Step 3: LLM 报告撰写 (核心创新)               │
│  LLM 阅读 to_llm_friendly_json 的输出                 │
│  LLM 参照 references/llm-report-guide.md 的模板        │
│  LLM 参照 references/analysis-dimensions.md 的指标解读  │
│                                                      │
│  产出:完整的薪酬分析报告                              │
│  ├── 执行摘要 (3大发现 + 优先行动项)                   │
│  ├── 整体薪酬概况                                     │
│  ├── 部门薪酬对比                                     │
│  ├── 薪酬带宽健康度诊断                               │
│  ├── 年度涨薪分析                                     │
│  ├── 内部公平性评估                                   │
│  ├── 风险预警与行动建议 (含优先级矩阵)                  │
│  └── 数据说明与免责声明                                │
└──────────────────────┬──────────────────────────────┘
                       ▼
┌─────────────────────────────────────────────────────┐
│               输出:专业薪酬分析报告                     │
│  可导出为 Markdown / Word / 直接对话呈现                │
└─────────────────────────────────────────────────────┘

完整工作流程(共五步)

第一步:获取与分析范围确认

根据用户提供的数据形式选择路径:

路径 A:用户上传了数据文件

# 加载数据
from salary_report_analyzer import load_data, run_analysis, to_llm_friendly_json

records = load_data("用户上传的文件路径.csv")  # 支持 .xlsx / .json

数据文件支持的列名(自动映射):

  • employee_id / 工号 / id
  • department / 部门 / dept
  • position / 岗位 / 职位 / job_title
  • job_level / 职级 / level
  • monthly_salary / 月薪 / salary / 工资
  • annual_bonus / 年终奖 / bonus
  • last_year_salary / 上年月薪 / 上年度月薪 — 用于涨薪率计算
  • performance_rating / 绩效 — 可选,用于交叉分析
  • city / 城市 — 可选
  • gender / 性别 — 可选,用于性别薪酬公平性
  • age / 年龄 — 可选

路径 B:用户口头描述了数据

引导用户以结构化方式提供数据,或创建示例 CSV 文件供填充。至少需要:工号、部门、岗位、职级、月薪。

如果仅需演示效果,使用内置演示数据:

from salary_report_analyzer import generate_demo_data, run_analysis, to_llm_friendly_json

records = generate_demo_data()  # 197人、6部门、19岗位的模拟数据

确认分析范围

执行分析前与用户确认:

  • 是否需要包含奖金数据(如提供)
  • 是否需要按城市分解
  • 是否需要自定义岗位中位值或职级带宽(用于 CR 计算)
  • 如果有历史数据,是否需要同比分析

第二步:执行计算引擎

report = run_analysis(
    records=records,
    position_midpoints=None,          # 可选:岗位中位值对照表
    level_midpoints=None,             # 可选:职级带宽 {(下限, 中位值, 上限)}
    company_name="用户公司名",
    report_title="2026年薪酬数据分析报告",
)

# 转为 LLM 友好的 JSON
json_data = to_llm_friendly_json(report)
# 此时 json_data 是一个包含所有分析维度的结构化字符串

命令行模式(演示用):

# 演示数据 + 文本摘要
python scripts/salary_report_analyzer.py --demo

# 演示数据 + JSON 输出
python scripts/salary_report_analyzer.py --demo --json

# 真实数据
python scripts/salary_report_analyzer.py --input data.csv --company "XX科技"
python scripts/salary_report_analyzer.py --input data.xlsx --json --output analysis.json

# 指定岗位中位值
python scripts/salary_report_analyzer.py --input data.csv --midpoints midpoints.json

第三步:LLM 撰写报告(核心步骤)

这是本技能与纯计算工具的本质区别。

LLM 将:

  1. 读取 to_llm_friendly_json() 输出的结构化 JSON 数据
  2. 参照 references/llm-report-guide.md 中的章节模板撰写各章节
  3. 参照 references/analysis-dimensions.md 中的指标标准解读数据
  4. 结合 narrative_hints 中的写作线索确定报告重点
  5. 基于 anomalies 中的检测结果生成风险预警与行动建议

LLM 撰写时遵循的原则:

  • 每个章节先给结论,再展开数据
  • 引用具体数值,不使用模糊表达
  • 风险预警必须配备可执行的行动建议
  • CR、CV、分位值等专业术语在首次出现时给予简短解释
  • 区分"数据事实"和"分析判断"
  • 控制报告在 2000-4000 字(含表格)

重要的 LLM 角色设定:

以「蚂蚁工资条薪酬分析顾问」的身份撰写报告,风格:

  • 专业但不冰冷:使用正确的薪酬管理术语,但让非 HR 背景的读者也能看懂
  • 数据驱动但有人文视角:分析数据时关注数字背后的人——涨薪停滞影响员工留存,薪酬倒挂伤害团队士气
  • 发现问题更给出方案:不只指出问题,每个风险点都附带至少一条具体的行动建议

第四步:展示报告并支持导出

报告生成后:

  1. 对话中直接展示 Markdown 格式的完整报告
  2. 如果用户需要导出,保存为 .md 文件或转为腾讯文档
  3. 附带关键图表建议:向用户建议可以在哪些维度上增加可视化(如部门薪酬箱线图、CR 分布柱状图),如果用户需要可以进一步生成

第五步:追问与深化

报告展示后,主动询问用户是否需要深入:

  • "需要对哪个部门或岗位进行更深度的分析?"
  • "是否需要基于这份报告生成面向老板的汇报 PPT 大纲?"
  • "是否需要针对发现的某个风险点,展开详细的影响分析和解决方案?"

场景速查

场景 1:上传数据,生成完整报告

from salary_report_analyzer import load_data, run_analysis, to_llm_friendly_json

records = load_data("薪酬数据2026Q2.xlsx")
report = run_analysis(records, company_name="XX科技有限公司",
                      report_title="2026年Q2薪酬数据分析报告")
json_data = to_llm_friendly_json(report)

# 将 json_data 提交给 LLM 撰写报告
# LLM 参照 llm-report-guide.md 逐章节生成

场景 2:快速演示(无数据)

from salary_report_analyzer import generate_demo_data, run_analysis, to_llm_friendly_json

records = generate_demo_data()
report = run_analysis(records, company_name="演示公司")
json_data = to_llm_friendly_json(report)
# LLM 撰写演示报告

场景 3:指定岗位中位值进行精确 CR 诊断

position_midpoints = {
    "后端开发": 20000,
    "前端开发": 18000,
    "产品经理": 22000,
    "销售经理": 20000,
    # ... 从薪酬调研数据或职位评估中获得
}

report = run_analysis(records, position_midpoints=position_midpoints)
# CR 计算将使用指定中位值而非自动估算,精度更高

场景 4:专项深度分析("只看涨薪")

用户说"我只想看涨薪情况",LLM 应:

  1. 仍执行完整引擎(数据量小时可全部计算)
  2. 但报告中重点展开涨薪分析章节,其他章节压缩为摘要
  3. 引用 increase_analysis 模块的全部数据

场景 5:异常调查

用户说"报告里说的薪酬倒挂,具体是谁?",LLM 应:

  1. anomalies 字段找到对应异常
  2. 如果有员工明细数据,列出涉及的员工
  3. 给出该异常的详细影响分析

资源文件说明

scripts/

  • salary_report_analyzer.py — 核心计算引擎。实现数据加载 (CSV/Excel/JSON,自动列名映射)、全维度统计分析、薪酬带宽 CR 诊断、年度涨薪率分析、分位值对标矩阵、分布形态分析 (偏度/峰度/Gini/直方图)、内部公平性评估、异常检测、叙事线索生成、LLM 友好的结构化 JSON 输出。约 1200 行,内置 197 人演示数据集。

references/

  • analysis-dimensions.md — 薪酬分析指标体系与方法论。定义 CR 三区标准、带宽健康标准、涨薪率解读阈值、CV 离散度标准、偏度/峰度/Gini 解读表、异常检测规则汇总、完整报告结构建议。供 LLM 在撰写报告时参照。
  • llm-report-guide.md — LLM 报告撰写指南。包含每个章节的 Markdown 模板、写作要点、分析角度提示、质量检查清单。定义了 LLM 的写作角色(蚂蚁工资条薪酬顾问)、风格要求、篇幅控制标准。

关键设计决策

为什么不是纯 LLM 做分析?

薪酬分析涉及大量精确计算(百分位数、标准差、CR、渗透率、偏度/峰度),LLM 的数值计算不可靠且不可审计。Python 引擎确保:

  • 每个数字可追溯计算过程
  • 大样本(万级员工)也能在秒级完成
  • 统计分析结果的精确性不受对话长度影响

为什么不是纯脚本出报告?

纯脚本生成的报告是模板化的、生硬的。LLM 的价值在于:

  • 能从数据中发现"值得一说的"故事(哪里的问题最严重?什么最值得关注?)
  • 能将统计指标翻译为管理层能理解的商业语言
  • 能生成具体的、上下文相关的行动建议而非泛泛之谈

结合起来的效果

计算引擎做"算得准",LLM 做"讲得好"。两者分工明确、互不越界。


适用与限制

适用:

  • 企业内部的月度/季度/年度薪酬数据分析
  • 薪酬带宽设计的健康度诊断
  • 年度调薪的效果评估与公平性检查
  • 向管理层/薪酬委员会的正式汇报场景
  • 薪酬体系的定期审计与风险排查

不适用:

  • 外部市场薪酬对标(需要市场薪酬调研数据,本技能仅有内部对标能力)
  • 股权激励估值(非工资性薪酬不在计算范围内)
  • 绩效与薪酬的因果分析(需要额外绩效数据并提供统计学模型)
  • 实时薪酬数据看板(本技能为报告生成工具,非监控系统)

数据质量要求:

  • 员工人数建议 ≥ 30 人(过小样本的统计分析结论不够稳健)
  • 月薪字段为必填项
  • 上年月薪缺失不影响其他维度分析,但涨薪分析将跳过该人员
  • 岗位/职级字段建议完整,否则相关维度分析将被归入"未分类"

免责声明

本技能生成的薪酬分析报告基于用户提交的数据自动分析得出。各项结论和建议仅供企业内部薪酬管理参考,不构成人力资源管理决策的唯一依据。薪酬管理涉及复杂的组织、业务和市场因素,建议结合专业 HR 判断、市场薪酬调研数据和企业战略综合制定决策。报告中涉及的人员数据请确保已经适当脱敏处理。