首页/AI/提示词工程速查/嵌套对象与明细数组抽取
任务型写法50 条

嵌套对象与明细数组抽取

订单、简历、合同这类含多级结构的文本:先抽头部字段,再抽明细数组;要求空明细输出空数组而不是伪造行。

提示词工程速查AI更新于 2026-10-13

嵌套结构的抽取顺序

订单、简历、合同这类含多级结构的文本,抽取顺序影响准确率:先抽头部字段(单号、客户),再抽明细数组,逐段扫描不容易串行。要特别约定两件事:没有明细时输出空数组而不是伪造一行;合计行不是明细,应单独放字段。金额在抽取阶段只保留数字,格式交给下游。

基本信息

抽取顺序先头部字段,再明细数组
空明细输出 [],不要伪造行
合计行单独字段,明确排除在明细之外
金额抽取阶段只保留数字,去掉货币符号与千分位
数量核对明细行数与原文行数比对,可自动抽查

典型使用场景

  • 订单解析:头部字段加商品明细行,进单据系统
  • 简历解析:基本信息加工作经历、教育经历数组
  • 合同要素抽取:主体信息加条款条目与金额明细
  • 账单识别:账户信息加费用明细,用于对账
  • 报表录入:表头信息加逐行数据,用于批量入库

嵌套结构模板

嵌套结构模板
抽取订单信息,输出 JSON:
{
  "order_no": "…",
  "customer": {"name": "…", "region": "…"},
  "lines": [{"sku": "…", "name": "…", "qty": 0, "price": 0.00}]
}
明细从表格区域逐行抽取;没有明细时 lines 输出 []。
# 合计行不是明细,单独放 total 字段
合计行不是明细,单独放 total 字段。
# 金额只保留数字,去掉货币符号与千分位,格式化交给下游
# 跨页文本分块抽取后,按订单号去重合并

常见错误与后果

错误表现后果
无明细时伪造行lines 里出现一行全空或占位数据下游统计多出无效记录
合计行当明细明细行数比原文多一行金额重复计算,对账失败
金额带符号price 值为「¥1,280.00」无法直接求和,需二次清洗
跨页漏抽换页处的明细行丢失数量与合计对不上
明细漏抽多发生在跨页或换页处;分块抽取后要按订单号去重合并,再与合计做核对。
金额混入货币符号与千分位时无法直接求和:抽取阶段只保留数字串,单位与格式统一由下游处理。

易错点

  • 明细为空时伪造占位行,下游统计出现无效记录,金额与数量的核对全部错位
  • 把合计行当成明细行抽进去,金额被重复计入,对账时差一行金额
  • 金额保留原始格式(含货币符号、千分位),入库前必须二次清洗,容易漏处理
  • 跨页文本分块抽取后未按单号去重,同一订单出现重复明细

数据来源与参考

  • OpenAI Cookbook:结构化数据抽取示例(JSON 模式)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌