在大模型技术飞速发展的当下,利用其进行内容提取已成为企业简化业务流程的常见选择。这种方式操作简单、门槛较低,在初步尝试阶段能快速看到效果。但当业务场景从 “试用” 转向 “企业级落地” 时,仅仅 “能用” 远远不够。企业对内容提取的准确性、可靠性、稳定性有着极高要求 —— 一旦这三项指标不达标,就需要人工逐一核对,不仅无法提升效率,反而会增加额外工作量,违背了引入大模型的初衷。
本文将以某外资企业LC 文件(信用证文件)关键信息提取的真实场景为例,详细拆解如何不依赖模型微调,而是通过纯工程化手段,将内容提取的准确性、可靠性、稳定性提升至 99% 以上,满足企业级应用的严苛标准。
一、场景:外资企业 LC 文件的关键信息提取需求
在国际贸易业务中,LC 文件是核心支付凭证,其关键信息的准确性直接影响资金流转效率与贸易安全性。该外资企业的需求明确且复杂,具体提取规则如下:
-
核心字段提取:必须精准提取 LC NO(信用证编号)、LC ISSUED DATE(开证日期)、Applicant(申请人)、Beneficiary(受益人)4 个核心字段。
-
Beneficiary 字段特殊处理:需理解 Beneficiary 字段内容中的引用关系,将引用的关联信息同步合并到该字段中(例如若 Beneficiary 中提及 “参考 XX 合同下的甲方”,需将 XX 合同甲方信息一并纳入)。
-
开户行信息条件化提取:
-
第一步:先从 LC 文件的【Additional Conditions】(附加条款)模块识别是否需要提取 ISSUING BANK(开证行)信息;
-
第二步:若需要提取,优先从【Additional Conditions】中查找;若该模块无相关信息,再从 “46A”(单据要求)模块提取;
-
第三步:若识别为 “不需要提取”,则统一输出 “None”。
- 版本合并与格式保留:若涉及 LC 修改件(如多次修订的版本),需按版本时间顺序提取各版本信息并合并,同时完整保留原始文件格式,最终将提取结果自动发送至指定人员邮箱。
这个场景的难点在于 “规则多且嵌套”“条件判断复杂”,单纯依赖大模型的 “一次性提取” 难以满足要求。
二、初版实现:单一提示词的 “低效陷阱”
在项目初期,团队采用了最直接的实现方式:将上述所有提取规则、字段要求、格式规范全部写入一个提示词,让大模型一次性完成 LC 文件的信息提取。但实际测试后发现,这种方式完全无法满足企业需求,主要暴露三大问题:
-
准确性极低:核心字段漏提、错提现象频繁。例如 “ISSUING BANK” 有时候随便找个银行糊弄,或遗漏 Beneficiary 字段的引用信息;
-
稳定性差:同一 LC 文件多次提交提取,返回结果不一致。有时能正确从 “46A” 提取开户行信息,有时却直接输出 “None”,结果无规律可循;
-
排查困难:大模型仅返回最终提取结果,不提供任何分析过程。当出现错误时,无法判断是 “规则理解偏差”“模块定位错误” 还是 “字段识别失误”,优化提示词如同 “盲人摸象”。
最终,初版方案的人工核对率高达 50% 以上,不仅没减少工作量,反而因 “AI 误判” 增加了纠错成本,业务部门明确表示 “无法使用”。
三、工程化破局:三步走策略实现 99%+ 指标达标
既然单一提示词的路径走不通,团队转向 “工程化拆解” 思路 —— 不依赖模型能力升级,而是通过优化 “任务流程” 和 “交互逻辑”,让大模型的输出更可控。最终形成 “任务拆分、过程输出、AI 校对” 三步走策略,彻底解决准确性、可靠性、稳定性问题。
步骤 1:任务拆分 —— 将 “复杂任务” 拆为 “简单子任务”
核心逻辑:大模型对 “单一明确任务” 的处理准确率远高于 “多规则混合任务”。因此,我们将 LC 文件提取的复杂需求,拆分为 3 个独立的 “子任务”,每个子任务对应一个专用提示词:
-
子任务 1:仅提取 LC NO 、LC ISSUED DATE、Applicant(无复杂规则,纯字段识别);
-
子任务 2:提取 Beneficiary 并合并引用信息(专注处理引用逻辑);
-
子任务 3:判断【Additional Conditions】是否需要提取开户行信息(纯条件判断);
-
子任务 4:根据子任务 4 的结果,从对应模块提取开户行信息(定向信息检索)。
每个子任务的提示词仅包含 “任务目标” 和 “输出格式”,去除所有无关规则。例如子任务 3 的提示词仅为:“分析 LC 文件的【Additional Conditions】模块,判断是否需要提取 ISSUING BANK 信息,仅输出‘需要’或‘不需要’”。
效果:拆分后,单个子任务的提取准确率从初版的 60% 提升至 92%,因为大模型无需在多个规则间切换,专注度显著提高。
步骤 2:过程输出 —— 让 “黑盒决策” 变为 “可视化过程”
核心痛点:初版方案中,大模型的提取结果是 “黑盒”—— 不知道它如何判断 “需要提取开户行”,也不知道它为何漏提 Beneficiary 的引用信息,导致无法针对性优化。
解决方案:在每个子任务的提示词中,强制要求大模型输出 “提取分析过程”,再输出 “最终结果”。例如子任务 2(Beneficiary 提取)的提示词增加要求:“先说明你如何识别 Beneficiary 字段及引用信息,再输出合并后的结果”。
典型输出示例:
【提取分析过程】1. 从LC文件第3段找到Beneficiary字段:“ABC Company(参考XX合同,甲方为XYZ Corp)”;2. 识别到“参考XX合同”为引用信息,在文件第5段找到XX合同甲方信息:“XYZ Corp,地址为XXX”;3. 合并引用信息到Beneficiary字段。
【最终结果】Beneficiary:ABC Company(参考XX合同,甲方为XYZ Corp,地址为XXX)
两大价值:
-
便于排查优化:若结果错误,可通过过程定位问题。例如某次发现 Beneficiary 引用信息漏提,从过程中看到 “大模型未识别‘参考’为引用标识”,随即在提示词中补充 “若 Beneficiary 字段包含‘参考’‘依据’等词汇,需定位对应关联信息”,后续准确率立即提升;
-
倒逼模型严谨:要求输出过程会让大模型更 “谨慎”—— 它需要梳理逻辑链,避免前后矛盾,从而减少 “随意输出” 的情况。数据显示,增加过程输出后,子任务准确率再提升 5 个百分点,达到 97%。
步骤 3:AI 校对 —— 增加 “复核环节”,自动修正错误
核心目标:解决 “偶发错误”,提升稳定性。即使前两步优化后,仍会存在 1%-2% 的偶发错误(如特殊格式的 LC 文件导致识别偏差),需通过 “二次复核” 确保万无一失。
实现方式:为每个子任务配置一个 “校对 Agent”(本质是另一个提示词驱动的大模型实例),校对 Agent 仅负责 “验证子任务结果是否正确”,具体逻辑如下:
-
校对 Agent 接收 “原始文件片段”“子任务目标”“子任务输出(含过程)”;
-
提示词要求校对 Agent:“重新分析原始文件片段,判断子任务输出的结果是否符合要求,若正确则输出‘通过’;若错误,说明错误原因并重新提取”;
-
若校对 Agent 判断 “错误”,则自动触发子任务的 “重新提取”(使用优化后的提示词),直至结果通过校对。
例如子任务 4(开户行提取)某次输出错误:“从【Additional Conditions】提取开户行信息为 XXX 银行”,但校对 Agent 分析发现 “【Additional Conditions】中无该银行信息,应从 46A 提取”,随即触发重新提取,修正错误。
效果:AI 校对环节将整体提取准确率从 97% 提升至 99.2%,同时消除了 “同一文件多次提取结果不一致” 的问题 —— 因为校对 Agent 会强制修正偏差,确保输出稳定性。
四、总结:企业级大模型应用的 “工程化思维”
LC 文件提取场景的落地实践证明:企业级大模型应用的核心,不在于 “追求更强大的模型”,而在于 “用工程化思维让模型更可控”。
-
准确性:通过 “任务拆分” 降低模型认知负荷,让模型专注于单一目标;
-
可靠性:通过 “过程输出” 将黑盒变透明,实现问题可追溯、可优化;
-
稳定性:通过 “AI 校对” 建立二次验证机制,自动修正偶发错误。
这种不依赖模型微调、纯靠工程化手段优化的思路,同样适用于合同提取、报表分析、客服问答等其他企业场景。毕竟,对企业而言,“稳定可用” 比 “技术先进” 更重要。
1001






