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

财务报表附注明细提取

Extract auditable financial-statement note line-item details from annual reports, audit reports, prospectuses, bond offering documents, interim reports, Word files, spreadsheets, scanned PDFs, or images. Use when an agent must produce traceable account composition, aging, impairment, movement, restriction, borrowing, revenue, cost, expense, subsidy, segment, or related note records while preserving raw values, dates, currency, units, statement scope, source pages, table dimensions, duplicate relationships, and validation issues without performing financial analysis or repeating the full primary statements.

personAuthor: user_c2a4b0echubcommunity

财务报表附注科目明细提取

从财务资料中提取可供下游 Agent 或模型计算的附注明细。只做忠实抽取、规范化和校验,不评价盈利、偿债、投资或信用风险。

读取参考文件

开始前读取:

  • references/schema.md:规范化记录字段、值状态和输出文件。
  • references/account-playbook.md:各类科目的提取范围与防混淆规则。
  • references/validation-rules.md:期间、单位、口径、勾稽、重复和 OCR 校验。
  • references/output-template.md:清单、异常和 Markdown 输出模板。

默认参数

未指定时采用:

  • extraction_scope=all_note_details:选定报表口径内所有披露的科目附注明细;
  • statement_scope=consolidated:合并口径;
  • period_scope=primary_and_comparative:主要报告期及可比期;
  • detail_level=complete:不因主观“重要性”删除已披露的非空明细;
  • normalize_unit=false:保留原始单位,不静默换算;
  • output_format=csv+md:规范化记录 CSV 加抽取清单与异常 Markdown;
  • include_zero_items=meaningful:保留具有状态变化、风险或勾稽意义的零值;
  • include_source=true、include_validation=true。

用户指定科目、期间、报表口径或输出格式时,以用户要求为准。资料过大时先生成附注目录和范围清单,再分批抽取,最终合并记录并全局去重。

执行流程

1. 建立文件与报表清单

记录主体、文件名、文件类型、报告类型、会计准则、主要报告期、币种默认值、审计状态、合并/母公司/备考/申报口径及页面编号体系。

同时保存:

  • PDF 物理页码(从 1 开始);
  • 报告印刷页码(如有);
  • 附注号、附注标题、表名和跨页范围。

不要把文件首页单位自动套用到全部附注表;每张表单独确认币种和单位。

2. 选择并定位附注

定位主表科目对应附注及与该科目直接相关的受限、减值、担保、关联方、分部、承诺或期后事项说明。不得重复提取完整资产负债表、利润表和现金流量表。

保留附注明细表的合计行用于勾稽,标记 row_role=total。不要因为合计在主表出现过就删除附注合计。

3. 按文件类型抽取

  • 数字 PDF:先抽取文本与表格,再渲染对应页面做视觉核对。
  • 扫描 PDF/图片:先旋转、裁切和 OCR,只对目标页处理;对低置信度数字回看原图。
  • Word:读取表格结构、合并单元格、脚注和标题层级。
  • Excel:使用结构化单元格 API,保留工作表、单元格范围、公式显示值和隐藏行列说明。

跨页表格必须按表头、列数、单位和脚注连续性拼接。横向或旋转页面先恢复方向。不要仅依赖 OCR 文本顺序重建复杂表格。

4. 规范化为逐值记录

按 references/schema.md 生成一行一个值的长表记录。必须同时保留:

  • value_raw:原文字符串;
  • value_status:numeric/zero/dash/blank/not_applicable/text/unreadable;
  • value_numeric:仅在可可靠解析时填写;
  • 原始币种、单位、正负号语义;
  • 完整日期或期间;
  • 报表口径、调整状态、分析维度和项目层级;
  • PDF 页、印刷页、表名及来源定位。

不得把空白、破折号、不适用和 0 合并。括号负数、损失转回、红字冲减必须保留原文符号语义。

5. 处理多维披露与重复

产品、地区、客户、账龄、减值和分部属于不同分析维度,即使金额相同也不能互相删除或加总。

仅在记录身份一致且属于重复披露时建立 duplicate_group_id 和 cross_reference_record_id:

文件 + 报表口径 + 报告基础 + 科目 + 分析维度 + 项目路径
+ 日期/期间 + 币种 + 单位 + 来源表

保留一条计算主记录,其余记录作为来源交叉引用;不要凭“金额相同”判断重复。无法确认时全部保留并标记“疑似重复披露”。

6. 执行校验

按 references/validation-rules.md 检查:

  • 明细与附注合计;
  • 账面余额减准备与账面价值;
  • 期初 + 增加 - 减少与期末;
  • 本期/上期、期初/期末和追溯调整;
  • 合并/母公司、原报表/备考、调整前/后;
  • 单位、币种、数量级和 OCR 易错字符;
  • 长期借款与一年内到期部分、受限资金等交叉披露。

原文不一致时不得改数。保留原值,将差异写入异常清单。

运行规范化记录校验器:

python scripts/validate_records.py records.csv

也支持 JSONL:

python scripts/validate_records.py records.jsonl

修复结构错误;无法消除的来源问题保留为警告和异常记录。

7. 输出交付物

默认输出:

  1. 主体_附注科目明细_报告期_records.csv:唯一计算主数据;
  2. 主体_附注科目明细_报告期_manifest.md:文件、范围、口径、统计和使用说明;
  3. 主体_附注科目明细_报告期_issues.csv:异常与分析限制;
  4. 用户要求时附加 Markdown、JSONL、XLSX 或 DOCX。

不得在补充说明中再次复制主数据金额。超大记录集不要仅用 Markdown 交付,以免截断或破坏表格结构。

禁止事项

  • 不编造、猜测或擅自修正数字;
  • 不静默换算单位或币种;
  • 不混用不同期间、口径、报告基础或会计准则;
  • 不把账面余额、减值准备和账面价值混为一项;
  • 不把不同披露维度互相加总;
  • 不用金额相同作为唯一去重依据;
  • 不省略影响数据含义的脚注;
  • 不提取完整主表、完整会计政策或完整审计意见;
  • 不计算财务比率,不输出财务、投资、信贷或估值判断。

交付前质量门槛

确认:

  • 所有计算记录都有唯一 record_id 和可复核来源;
  • 原始值和值状态完整,空白/破折号/零未混淆;
  • 货币值有币种和单位,百分比/数量未伪装成金额;
  • 时点数和期间数使用完整日期;
  • 合并、母公司、备考、申报及调整口径未混用;
  • 跨页表格和低置信度 OCR 已视觉复核;
  • 同一维度合计可勾稽或已列示差异;
  • 重复披露通过关联标记处理,没有误删不同维度记录;
  • 校验器无结构错误,剩余警告已进入异常清单;
  • 输出仅包含抽取结果和限制说明,没有财务评价。