news 2026/10/2 8:02:38

FinRobot 投资银行演示文稿质量审查指南:基于 ib-check-deck 技能的四维 QC 工作流

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
FinRobot 投资银行演示文稿质量审查指南:基于 ib-check-deck 技能的四维 QC 工作流
  • 人工智能
  • AI Agent
  • 金融科技
  • AI 应用
  • 大模型
  • RAG

【免费下载链接】FinRobot

FinRobot: An Open-Source AI Agent Platform for Financial Applications using Large Language Models

项目地址:https://gitcode.com/GitHub_Trending/fi/FinRobot
点击查看免费下载

本篇技术指南面向在 FinRobot 桌面端(finrobot_desktop)中使用投资银行演示文稿审查能力的开发者与金融从业者,围绕技能库 ib-check-deck/SKILL.md 展开。你将掌握:如何让 Agent 对投行 Pitch Deck 或客户演示文稿执行"数字一致性、数据与叙述对齐、语言润色、视觉格式 QC"四维质检,如何通过 slide-level 归因脚本定位跨页数字冲突,以及如何按严重级别输出可执行的审查报告。

技能定位:IB 演示文稿的专职质量检查器

ib-check-deck 是 FinRobot 技能体系中financial-analysis领域下的一个专用技能,frontmatter 中声明其id为ib-check-deck、version: 1.0.0、author: anthropic,描述为Investment banking presentation quality checker,核心职责是审查 Pitch Deck 或客户交付级演示文稿的四个方面:

  1. 跨幻灯片数字一致性(number consistency);
  2. 数据与叙述对齐(data-narrative alignment);
  3. 语言是否符合 IB 表达规范(language polish);
  4. 视觉与格式 QC(visual and formatting QC)。

技能通过triggers字段声明触发关键词ib、check、deck,当用户提出 review、check、QC、proof 等诉求时即可被唤起。该技能为只读审查(read-and-report only),不会对演示文稿做任何修改,因此在 Add-in 与 Chat 两种环境下工作流保持一致。

技能在仓库中的来源与格式

FinRobot 桌面端的技能目录由 scripts/convert_skills.py 从 Anthropic 的 financial-services-plugins 自动转换而来。转换脚本会解析上游两种格式(带 YAML frontmatter 的 Format B 与仅含 H1 标题的 Format A),为每个技能生成id / name / version / author / domain / description / triggers / requires_* / compatible_models等元数据,并写入output/<domain>/<skill_id>/SKILL.md。ib-check-deck 的 frontmatter 正是该转换流程的产物,其转换记录可参考 ATTRIBUTION.md 与 UPSTREAM_VERSION.txt。

在运行侧,技能文件由 engine/skills/loader.py 加载为 engine/skills/spec.py 中定义的Skill数据模型,id与name为必填字段,description可回退到正文首段,full_content保存整个 Markdown 正文,triggers作为检索关键词参与匹配。

开始前的环境判断

技能要求 Agent 在启动审查前先识别所处运行环境,两种环境的差异只在于文本来源:

  • PowerPoint 加装组件(Add-in):直接读取当前打开的活动演示文稿(live open deck);
  • 聊天(Chat):读取用户上传的.pptx文件。

由于本技能不做编辑,只做读取与报告,两种环境下的工作流完全相同,Agent 无需针对环境编写两套逻辑。

工作流第一步:读取整份 Deck 并保留 slide 归属

审查质量的前提是逐页读取全部幻灯片文本,并保留每一行的幻灯片归属。技能特别强调 slide-level attribution:任何一条审查发现都必须能够定位到具体幻灯片,例如"$500M 出现在第 3 页和第 8 页,但第 15 页显示 $485M"。

对于 30 页左右的大型 Deck,内容超出工作记忆的可承载范围,因此技能要求将抽取的文本写入文件,供数字检查脚本统一处理。脚本期望的输入是带 slide 标记的 markdown 风格文本,格式如下:

## Slide 1 [slide 1 text content] ## Slide 2 [slide 2 text content]

四维质检:逐一执行的完整流程

维度一:数字一致性(Number consistency)

这是四维中最容易捕捉到人工第五遍阅读仍会漏掉问题的一环,核心手段是运行数字抽取脚本:

python scripts/extract_numbers.py /tmp/deck_content.md --check

技能描述中该脚本具备三类能力:

  • 单位归一化:$500M、$500MM、$500,000,000会被归一化为同一个数值;
  • 数值分类:按 revenue、EBITDA、multiples、margins 等指标类别归类;
  • 冲突标记:同一指标类别在不同幻灯片上出现相互冲突的取值时主动告警。

说明:scripts/extract_numbers.py以及下文提到的references/ib-terminology.md、references/report-format.md是 SKILL.md 文档中引用的配套脚本与参考文件,需要用户在运行环境中按技能约定提供。当前仓库的技能目录 ib-check-deck 仅收录 SKILL.md 本体。

除脚本告警之外,Agent 还必须人工核验以下三类问题:

  • 计算正确性:合计是否加总一致、百分比是否加总到 100%、增长率是否与端点数值匹配;
  • 单位风格一致性:整份 Deck 应统一采用$M或$MM其中一种并保持一致,不得混用;
  • 时间口径对齐:FY 与 LTM 与季度数据必须显式标注,避免不同期间数字被并排比较。

维度二:数据与叙述对齐(Data-narrative alignment)

这一维度用于捕捉"有人改了第 7 页的图表,却忘了第 4 页的叙述"这类静默漂移。Agent 需要把每一条叙述性声明映射到支撑它的数据上:

  • 趋势陈述:例如"margins declining(利润率下滑)"——对应的图表方向是否真的向下;
  • 市场地位声明:例如"#1 player"——营收与市场份额数据是否支撑;
  • 合理性校验(plausibility):技能给出的经典反例是"在 $100B 的市场中自称 #1",但营收只有 $200M——0.2% 的市场份额显然不构成 #1,Agent 必须对这种数据-叙述矛盾给出显式判断。

维度三:语言润色(Language polish)

IB 演示文稿有一套固定的语域(register),Agent 需扫描并标记任何破坏该语域的表述:

  • 口语化措辞(如 "pretty good"、"a lot of");
  • 缩写形式(contractions);
  • 感叹号;
  • 无数字支撑的模糊量词(vague quantifiers without numbers);
  • 同一概念使用了不一致的术语(inconsistent terminology)。

技能文档指向references/ib-terminology.md提供替换模式(replacement patterns),Agent 应据此给出符合 IB 规范的具体替换建议。

维度四:视觉与格式 QC(Visual and formatting QC)

对每张幻灯片执行标准的视觉核验,重点检查:

  • 图表缺失来源引用(missing chart source citations);
  • 缺失轴标签(missing axis labels);
  • 排版不一致(typography inconsistencies);
  • 数字格式漂移(同一 Deck 内 1,000 与 1K 混用);
  • 日期格式漂移;
  • 脚注与免责声明缺失。

技能特别提醒:视觉核验能捕捉到文本抽取中完全不可见的重叠、溢出与对比度问题——一张缺来源标注的图表在文本转储中和标注完整的图表看起来一模一样,因此这一步不可跳过。

输出:按严重级别分类的审查报告

最终报告按技能文档要求的结构输出,并按严重级别分类:

  • Critical(阻断交付):数字不匹配、事实错误、数据与叙述矛盾,此类问题阻止客户端交付;
  • Important(应当修复):语言问题、来源缺失、术语漂移;
  • Minor(打磨项):字号、间距、日期格式。

报告格式遵循references/report-format.md定义的结构。报告组织原则是以 Critical 开篇;若没有 Critical,则必须显式说明——"no number inconsistencies found"(未发现数字不一致)本身就是一个审查结论,而不是"没有问题"的缺省表述。

实战要点小结

  • 只读审查原则:ib-check-deck 全程 read-and-report,不产生任何编辑,Add-in 与 Chat 工作流完全一致;
  • slide 级归因是底线:每条发现必须能定位到具体幻灯片页,这是后续修复与复核的基础;
  • 脚本 + 人工双保险:extract_numbers.py负责单位归一化与冲突告警,人工负责计算正确性、单位风格与时间口径核验;
  • 合理性质疑:对 "#1 player" 之类地位声明要主动做份额验算,避免叙述与数据脱节;
  • 显式声明"无发现":没有 Critical 也要明确写出,这本身是审查结论的一部分;
  • 技能加载机制:该技能在运行时由 loader.py 按 frontmatter 元数据加载为 spec.py 中的Skill模型,triggers(ib/check/deck)决定了它的唤起时机,full_content中保存的完整 Markdown 正文即为上述工作流的执行指令。

将本技能接入 Agent 工作流后,一份投行 Deck 可以在一次会话内完成从文本抽取、数字冲突检测、叙述核验、语言润色到视觉 QC 的完整质检闭环,并以按严重度排序的可执行报告交付用户。

  • 人工智能
  • AI Agent
  • 金融科技
  • AI 应用
  • 大模型
  • RAG

【免费下载链接】FinRobot

FinRobot: An Open-Source AI Agent Platform for Financial Applications using Large Language Models

项目地址:https://gitcode.com/GitHub_Trending/fi/FinRobot
点击查看免费下载

相关推荐

上一篇:字体文件转换工具:IBM Plex格式转换脚本解析
下一篇:Fair Analytics与Google Analytics深度对比:谁才是真正的隐私守护者?

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/2 7:59:56

FPGA实现CORDIC算法:从数学原理到RTL设计与仿真验证

聊到FPGA的数学运算&#xff0c;CORDIC几乎是一道绕不开的菜。不管你是做信号发生器的NCO&#xff0c;还是搞图像旋转的坐标变换&#xff0c;甚至是在通信算法里算个反正切&#xff0c;只要硬件里需要三角函数、开方、幅度相位转换&#xff0c;CORDIC算法都是那个性价比极高的选…

作者头像 李华
网站建设 2026/10/2 7:58:38

Frida与IDA结合:破解iOS请求头签名机制实战

做过移动端逆向的朋友应该都有这种体会&#xff1a;真正让人头疼的往往不是脱壳和砸壳&#xff0c;而是你在抓包工具里看到一堆自定义请求头&#xff0c;却不知道它们是怎么算出来的。比如说X-MMe-Nas-Qualify&#xff0c;光看名字就知道这不是系统标准字段&#xff0c;而是客户…

作者头像 李华