当前位置: 首页 > article >正文

【prompt实战】AI +OCR技术结合ChatGPT能力项目实践(BOL提单识别提取专家)

本文原创作者:姚瑞南 AI-agent 大模型运营专家,先后任职于美团、猎聘等中大厂AI训练专家和智能运营专家岗;多年人工智能行业智能产品运营及大模型落地经验,拥有AI外呼方向国家专利与PMP项目管理证书。(转载需经授权)    

目录

1. 需求背景

2. 目标

3. BOL通用处理逻辑概述

3.1 基础信息 部分

3.2 货物信息部分:

3.3 参考信息部分

BOL的处理结果要求

4. 逻辑梳理

1. BACKGROUND

2. 识别的主要字段

基础信息:

Reference 信息:

3. 格式要求

4. OCR文本清晰度

5. 目标受众

6. 输出示例

7. 特殊要求

8. 数据验证

5. 提示词优化

优化前prompt

优化策略

优化后prompt

中文版

英文版

6. 效果评估

7. 项目收益


1. 需求背景

在公司的运输业务中,BOL(提单)是关键文档,标志着运输的开始,并包含重要的运营信息。目前,不同客户使用不同的BOL模板和处理方式。开发一个单一客户的OCR 信息提取方案通常需要约一周时间,然后才能接入RPA的流程。事实上来说,对于我司而言,BOL中的关键信息具有通用性,可以使用AI的文字理解来解决这个问题。

2. 目标

通过AI +OCR 技术结合, 让AI理解不同客户的BOL,并从中提取UNIS所需的关键信息,实现通用化的BOL解决方案,适配大部分客户的BOL模板。此方法确保数据提取的完整性、准确性和稳定性,并可在未来作为OCR-RPA自动化的直接输入源。

3. BOL通用处理逻辑概述

3.1 基础信息 部分

以下信息是BOL的核心信息,尽量进行识别:

  • 发货人(Shipper)/收货人(Consignee)姓名(可以为空):
  • 发货人(Shipper)/收货人(Consignee)地址(不可以为空): 查询TMS位置数据库,与现有Location 进行匹配。如果没有匹配项,选择最接近或标签为“EDI”的地址。
  • 提货日期(Pick UP Date)(可以为空): BOL签发日期。
  • 特殊说明(Special Instruction)(可以为空): 如交货时间、特殊服务或托盘尺寸等。

3.2 货物信息部分:

包括但不限于Pallet #、Piece #、Weight、NMFC #/Class, 货物描述。通常情况下会有Customer Information 和 Carrier Information 两种描述, 需要都列举识别结果。


3.3 参考信息部分

在客户的BOL中有些参考信息,对于串联业务非常有帮助,需要按如下的逻辑进行和处理,有一定的按优先级要求:

  • Load Number (#):非常重要的字段,用于EDI传输。通过识别BOL中的关键词:“Load Number (#)”、“Load ID”、“ME ID”或“SID (#)”来获取。
  • Shipper Reference (#):次重要字段,通过识别BOL中的关键词:“Shipper Number (#)”、“Shipping Number (#)”、“Customer Ref (#)”或“Additional Ref (#)”获取。
  • Purchase Order (#):通过识别BOL中的关键词:“P.O. Number (#)”、“PO (#)”来获取
  • Sales Order (#)”:通过识别BOL中的关键词:“Sales Order”来获取
  • DN Number:通过识别BOL中的关键词:“Delivery Note (#)”、“DN #”或“Delivery Number”提取。
  • Bill of Lading Number #:通过识别BOL中的关键词:“Sales Order”来获取“BOL Number (#)”来获取参考信息(Reference information)的特殊处理逻辑:

Load Number (#)需要重点识别,如果识别不到,请使用以下逻辑进行替代处理

  • 当无法识别Load Number (#)时,但能获取 Shipper REF 信息,应使用 Shipper REF (#) 来替代Load Number (#)
  • 当无法识别Load Number (#)和 Shipper REF 时,但能获取Bill of lading Number时,可以用Bill of Lading Number 来替代Load Number (#)

REF/BOL 也需要重点识别, 如果识别不到,请使用以下逻辑进行替代处理(---待定)

  • 当无法识别 Bill of lading # 时,但能获取 Customer REF #信息,应使用Customer REF # 来替代REF/BOL 信息
  • 当无法识别 Bill of lading # 和 Customer REF #都无法识别到,可以用PO # 来替代

BOL的处理结果要求

AI处理BOL 的识别结果应该分为3个部分

  • 基础信息(发件人,收货人,Pickup 时间,Spcial instruction )
  • 货物信息(Customer info/Carrier inforamtion)
  • 参考信息(LOAD #/Shipper REF/PurchaseOrder /DN number/Bill of Loading #识别结果应保持稳定的格式,对于识别不完整或缺失的信息,系统应给予提示’Not recongnize‘。针对多页BOL,系统需识别并合并信息。

需要提取附件PDF格式的文字对应到不同位置;

4. 逻辑梳理

1. BACKGROUND

你是一个在物流行业的专家,你需要自动识别取提单(BOL,Bill of Lading)上的关键信息,以便用于货物跟踪、清关和物流管理。目的是准确识别和提取BOL上的重要信息字段,并确保数据的完整性和一致性。

2. 识别的主要字段

基础信息:
  • 发货人信息(Shipper Information):包括发货人的名称、地址、联系方式等。
  • 收货人信息(Consignee Information):包含收货人的名称、地址和联系方式。
  • 货物信息(Description of Goods):列出货物的详细信息,包括名称、Pallet数量、Pieces,TYPE,Weigh,NMFC#,Class等信息。通常情况下,有Customer Order Information 和 Carrier Information, 需要分别识别并提取
  • PICKUP DATE:提单签发日期及其他重要日期。
  • Special Instructions: BOL的特别提示,比如Delivery 时间,特别要求
Reference 信息:
  • Load Number (#): 通过识别 BOL 中的关键词,如 Manifest Number (#)、ME ID 或 Shipment Number (#) 获取。
  • Shipper REF (#): 通过识别 BOL 中的关键词,如 Shipper Number (#)、Shipping Number (#)、Customer Ref (#) 或 Additional Ref (#) 获取
  •  Purchase Order (#):通过识别 BOL 中的关键词,如 P.O. Number (#)、PO (#) 或 CustomerOrder (#) 获取。
  •  DN Number: 通过识别关键词 Delivery Note (#) 获取。
  • Bill of Lading Number (#): 通过识别 BOL 中的 BOL number (#) 关键字获取, • 需要更新到 TMS 中的 Manifest.Cust.BOL 字段。

3. 格式要求

  •  输出应为结构化数据,如JSON或XML格式,便于数据的进一步处理。
  • 若可能,有层次结构以方便嵌套字段(例如发货人和收货人信息中包含子字段,如名称和地址)。货物信息中包括(各个货品的描述,Pallet 数量,Piece 数量,Type&

http://www.kler.cn/a/533269.html

相关文章:

  • git-secret 使用教程
  • Github 2025-01-31Java开源项目日报 Top10
  • LabVIEW的智能电源远程监控系统开发
  • 鼠标拖尾特效
  • 使用开源项目:pdf2docx,让PDF转换为Word
  • RK3566-移植5.10内核Ubuntu22.04
  • 总结11..
  • Vue - customRef 自定义ref
  • shiro面试题
  • 【含文档+PPT+源码】基于Python爬虫二手房价格预测与可视化系统的设计与实现
  • Vue的状态管理:用响应式 API 做简单状态管理、状态管理库(Pinia )
  • 【论文精读】Taming Transformers for High-Resolution Image Synthesis
  • 【入门】如何使用DeepSeek批量创作短视频
  • git 指定ssh key
  • 【漫话机器学习系列】081.测量理论(Almost Everywhere)
  • 3D图形学与可视化大屏:如何让材质与光照进行交互。
  • C# 字符串与正则表达式介绍
  • 2.5学习
  • 阿里 Java 岗个人面经分享(技术三面 + 技术 HR 面):Java 基础 +Spring+JVM+ 并发编程 + 算法 + 缓存
  • 【学Rust写CAD】3 绝对坐标系详解
  • mini-lsm通关笔记Week2Day6
  • 电商项目-分布式事务(四)基于消息队列实现分布式事务
  • 【AI】DeepSeek R1本地化部署 Ollama + Chatbox 打造最强AI工具
  • php反序列化含CTF实战
  • Java三十天速成(java进阶篇)
  • 在uniapp中修改打包路径