十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

10.5 运行效果验证(AI数据采集工作流)

10.5 运行效果验证(AI数据采集工作流) 叶彦辛《扣子编程从一句话到产品上线零门槛AI心流开发》全书案例分享~_扣子编程从一句话到产品上线:零门槛ai心流开发-CSDN博客10.5.1测试输入设计为了验证工作流的端到端能力笔者准备了一份模拟的扫描型上市公司年度报告 PDF 作为测试输入。如图10-4所示。图10-4 扫描型测试PDF节选这份测试 PDF 基于一家虚构公司“创联智能科技股份有限公司股票代码 688521模拟科创板半导体设备公司”的 2025 与 2024 两个会计期间的财务数据生成。该测试 PDF 的具体特征经过精心设计旨在覆盖真实场景中常见的 OCR 与数据采集挑战。第一PDF 含封面、重要财务指标摘要、公司业务概况、合并利润表、合并资产负债表、合并现金流量表、研发投入、签字页等多板块结构。多板块设计模拟了真实年报的内容多样性验证表格区域定位节点的过滤能力。第二PDF 中嵌入的不是可选文本而是页面图像每页含有轻微的旋转、灰度噪点、纸张暖色调与轻度模糊。这种处理过程的目的是逼近真实办公扫描仪的视觉特征验证 OCR 节点在嘈杂视觉下的鲁棒性。第三财务数据涵盖目标 Schema 中的全部 19 个字段且同时包含本期2025 年度与上期2024 年度两个会计期间——这要求字段语义锚定节点不仅要识别字段还要正确区分报告期。第四测试 PDF 同时包含三类难点元素跨页表格合并资产负债表与合并利润表设计为横跨多页、合并单元格产品类别表的“合计”行使用了合并单元格、中文数字签字页含有“二〇二六年三月二十八日”等中文日期表达分别用于验证表格语义节点的跨页合并能力、字段语义锚定节点的合并单元格处理能力、OCR 节点的中文数字识别能力。需要说明的是本次测试 PDF 中资产负债表为简化版少数股东权益项缺失因此存在“资产合计≠负债合计归属于上市公司股东的所有者权益”的故意失衡差异约 10%。这一设计的目的恰恰是验证数值校验闭环在故意失衡的情况下工作流是否能正确触发勾稽关系告警并把记录标注为 needs_reviewY。把这份测试 PDF 上传到工作流的开始节点后无需提供任何额外的字段定义工作流即可启动。这一极简输入印证了 10.3.2 节决策点一的设计意图——多模态输入的显式声明使得工作流几乎不需要用户做任何二次表达。10.5.2工作流执行流程展示点击“试运行”按钮后工作流依次执行7个节点。整体执行时长约为 5 分钟约 298 秒其中绝大多数时间消耗在 OCR 循环子图的逐页处理上。各节点的实测耗时分布如图10-5以及表 10-5 所示。图10-5 各节点试运行实测时页面表 10-5 各节点试运行实测耗时统计节点名能力类型实测耗时节点类型页面切分pdf_split代码工具PyMuPDF19.9 秒toolOCR 识别ocr_loop循环子图多模态视觉模型4.2 分钟约 252 秒agent表格区域定位table_locate代码工具规则筛选5 毫秒tool字段语义锚定field_anchor大语言模型13.7 秒agent数值校验value_validate代码工具LLM3.1 秒agent异常标注anomaly_mark代码工具LLM3.3 秒agentCSV 输出csv_output代码工具5.9 秒tool合计—约 298 秒约 5 分钟—从耗时分布可以看出本章工作流的三个特点。第一个特点是 OCR 节点占绝对耗时大头——单节点 4.2 分钟、占整条工作流耗时的 85% 以上且耗时与 PDF 页数呈线性关系。这一现象的根源是当前实现采用循环子图逐页顺序调用多模态模型而未做并发调度。第二个特点是非大模型节点的耗时极低——页面切分、表格区域定位、CSV 输出3个纯代码节点合计耗时约 26 秒其中表格区域定位仅 5 毫秒。这印证了 10.4.6 节中的判断——当上游节点已经携带了下游所需的元信息table_type时下游节点的实现可以大胆退化为轻量代码。第三个特点是 LLM 节点的耗时差异显著——字段语义锚定13.7 秒远高于数值校验3.1 秒和异常标注3.3 秒这与三者的输入文本规模与推理复杂度直接相关字段锚定需要扫描全部财务表格 OCR 文本并完成 19 字段×2 期共 38 个数据点的映射校验与标注则只需在已有结构化记录上做规则与轻量判断。【提示】这一耗时分布也清晰指出了下一步性能优化的方向在更大规模的工作流场景中如批量处理20份财报把OCR循环子图升级为并发调度multipart parallel可以让端到端耗时从“页数×单页时间”压缩到“max(单页时间)”。这一升级方向将在10.6.3节进一步展开。10.5.3 CSV输出结果剖析试运行完成后结束节点输出三项关键产物csv_url下载地址形如 https://coze-coding-project.tos.coze.site/coze_storage/.../extracted_financial_data_hash.csv附带签名、extraction_summary提取摘要文本、review_items待复核字段的 JSON 列表。如图10-6所示。图10-6 试运行产物下面按字段顺序逐一剖析。1CSV 输出。系统成功提取了 2 个会计期间2025 年度与 2024 年度的全部 19 个字段。表 10-6 给出了节选展示实际 CSV 含 19 列、2 行数据受限于排版此处仅展示关键字段。表 10-6 CSV 输出节选两个报告期字段名2025 年度2024 年度report_period2025年度2024年度revenue5,000,000,0004,200,000,000operating_cost3,800,000,0003,200,000,000gross_margin_pct24.023.81rd_expense300,000,000250,000,000rd_to_revenue_pct6.05.95operating_profit900,000,000750,000,000net_profit_attr750,000,000620,000,000eps_basic0.750.62eps_diluted0.730.60roe_weighted_pct12.512.4total_assets12,000,000,00010,000,000,000total_liabilities4,800,000,0004,000,000,000equity_attr6,000,000,0005,000,000,000debt_ratio_pct40.040.0ocf_net500,000,000400,000,000unit元元extraction_confidence0.90.9needs_reviewYY从输出可以看到所有 19 个字段在两个报告期均被正确提取金额字段统一归一化为元毛利率、研发投入占比等百分比字段保留原始数值24.0 表示 24%中文 CSV 通过 UTF-8 with BOM 编码在 Excel 中无乱码显示。两条记录的 needs_review 均为 Y原因稍后说明。2extraction_summary。系统输出了一段自然语言摘要✅成功提取2个会计期间的财务数据;报告期: 2025年度, 2024年度;需复核记录: 2条;低填充率字段: roe_weighted_pct(0/2)3review_items。系统返回了如下的待复核字段清单[[2025年度] roe_weighted_pct缺失,[2024年度] roe_weighted_pct缺失]两条记录均被标注为 needs_reviewY。需要说明的是本次试运行触发待复核的核心原因是数值校验闭环中的资产负债表勾稽关系不平衡——测试数据中 total_assets120 亿、total_liabilitiesequity_attr 48 亿60 亿108 亿差异 12 亿约 10%明显超出±0.5% 的容差。这一不平衡是测试数据本身的设计少数股东权益项被故意省略工作流正确捕捉并标注了这一异常。此外extraction_summary 和 review_items 中提到的 roe_weighted_pct 字段在自动复核流程中由公式反算补全净利润净资产× 100但因来源页 OCR 文本对该字段的原文表述不在表格区域定位节点筛选的财务表格页内触发了 LLM 异常标注节点的二次预警。笔者还在另一次试运行中故意构造了一份“勾稽完全自洽”的测试 PDF——即 total_assets 严格等于 total_liabilitiesequity_attr。该次试运行的输出 needs_reviewN且 review_items 为空数组。两次试运行的对照清晰地验证了数值校验闭环既不会漏报真实的不平衡也不会在数据自洽时产生误报。10.5.4与设计目标的逐项对照将 10.3 节中提示词所声明的工作流目标与本节实际运行结果进行对照如表 10-7 所示。表 10-7 设计目标与实际运行效果对照设计目标实际交付验证结果扫描型 PDF 自动 OCR测试 PDF 全部成功 OCR达成识别财务表格所在页准确筛选含财务表格的页面达成字段按目标 Schema 映射19 个字段×2 期共 38 个数据点全部成功映射达成勾稽关系数值校验故意失衡数据触发告警差异 10% 远超 0.5% 容差达成范围合理性校验所有字段在合理范围内达成字段级置信度打分整体置信度 0.9达成CSV、摘要、待复核三产物三产物一次性返回达成严禁编造数字不平衡数据未被强行“修正”而是标注待复核达成金额单位归一化所有金额字段归一化为元unit 字段统一为“元”达成中文数字识别转换中文大写数字与日期被正确识别达成CSV 中文无乱码UTF-8 with BOM 编码Excel 直接打开达成11 项设计目标全部实现闭环验证了本章提出的数据采集工作流设计方法与“输出端范式数值校验闭环”两项核心思想的有效性。值得一提的是在搭建过程中扣子编程还遇到了3个具有代表性的工程问题——OCR 模型 doubao-seed-1-6-vision-250815 已停运需切换、csv_output 节点的“双重 BOM”乱码、字段语义锚定节点初次尝试时 financial_table_pages 为空——这些问题都通过查日志、改配置、复测的方式被逐一定位并修复验证了扣子编程在“问题发现 → 根因定位 → 修复回归”这一开发闭环上的工程化能力。
返回列表