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

深圳网站建设制作设计公司西安百度百科

深圳网站建设制作设计公司,西安百度百科,南通网站建设方法,wordpress dashboard_activity基于OpenAI API实现PDF发票信息提取 1. 引言 在日常办公中,企业和个人经常需要处理大量的发票数据,包括提取发票代码、发票号码、开票日期、金额等关键信息。手动录入这些信息费时费力,因此自动化发票信息提取成为刚需。 本文将介绍如何利…

基于OpenAI API实现PDF发票信息提取

1. 引言

在日常办公中,企业和个人经常需要处理大量的发票数据,包括提取发票代码、发票号码、开票日期、金额等关键信息。手动录入这些信息费时费力,因此自动化发票信息提取成为刚需。

本文将介绍如何利用 OpenAI APIPyMuPDF (即 fitz) 实现 PDF 发票的自动信息提取。代码将解析 PDF 文件内容,并通过 AI 模型精准提取相关字段。


2. 依赖环境

在实现该功能之前,需要安装以下 Python 依赖库:

pip install openai pymupdf

此外,需要在 config.py 中配置 API KeyPDF 文件路径


3. 代码实现

3.1 完整代码

from openai import OpenAI
import fitz  # PyMuPDF
import config  # 需要配置API Key和PDF路径def get_pdf_text(pdf_path):doc = fitz.open(pdf_path)markdown_text = ""for page_num in range(len(doc)):page = doc[page_num]blocks = page.get_text("dict")["blocks"]for block in blocks:if "lines" in block:for line in block["lines"]:for span in line["spans"]:text = span["text"]markdown_text += f"{text}"markdown_text += "\n"return markdown_textdef create_invoice_extraction_prompt(invoice_text):prompt = f"""
请分析以下发票文本,准确提取以下信息:
1. 发票代码
2. 发票号码
3. 开票日期
4. 价税合计的小写金额
5. 销售方名称
6. 消费类型(如:餐饮、交通、办公用品、通讯等)请务必仔细分析商品或服务内容,据此判断消费类型。
如果无法确定某项信息,请标注为"未找到"。发票文本:
{invoice_text}请以 JSON 格式返回结果:
{{"发票代码": "","发票号码": "","开票日期": "","价税合计": "","销售方名称": "","消费类型": ""
}}
"""return prompt# 初始化 OpenAI 客户端
client = OpenAI(api_key=config.DASHSCOPE_API_KEY,base_url="https://dashscope.aliyuncs.com/compatible-mode/v1"
)sample_invoice_text = get_pdf_text(config.PDF_PATH)# 创建聊天完成请求
completion = client.chat.completions.create(model="qwq-32b",  # 可按需更换模型名称messages=[{"role": "user", "content": create_invoice_extraction_prompt(sample_invoice_text)}],stream=True,
)reasoning_content = ""  # 记录思考过程
answer_content = ""     # 记录最终答案
is_answering = False   # 标记是否已进入回复阶段print("\n" + "=" * 20 + "思考过程" + "=" * 20 + "\n")for chunk in completion:if not chunk.choices:print("\nUsage:")print(chunk.usage)else:delta = chunk.choices[0].deltaif hasattr(delta, 'reasoning_content') and delta.reasoning_content:print(delta.reasoning_content, end='', flush=True)reasoning_content += delta.reasoning_contentelse:if delta.content and not is_answering:print("\n" + "=" * 20 + "完整回复" + "=" * 20 + "\n")is_answering = Trueprint(delta.content, end='', flush=True)answer_content += delta.contentprint("\n\n" + "=" * 50)
print("提取结果:")
print(answer_content)

4. 运行示例

在这里插入图片描述


5. 总结

通过本文的介绍,我们实现了一个基于 OpenAI API 解析 PDF 发票的完整流程,包括:

  1. 使用 PyMuPDF 解析 PDF 文本
  2. 构造 AI 提示词,让大模型精准提取发票信息
  3. 调用 OpenAI API 并解析返回 JSON 结果

这一方案可以广泛应用于财务报销、企业票据管理等场景,极大提高工作效率。如果你有更复杂的需求,可以尝试调整 prompt 或使用更强大的 LLM 模型。

http://www.dtcms.com/wzjs/188593.html

相关文章:

  • 网站建站的流程东莞网络推广排名
  • 成都建设官方网站南宁一站网网络技术有限公司
  • 新建网站二级网页怎么做软文代写代发
  • 铜陵做网站广州网站建设方案维护
  • 红桥天津网站建设学设计什么培训机构好
  • 河北优化网站获客qq让手机变流畅的软件下载
  • 怎么做PayPal网站收款中企动力做网站推广靠谱吗
  • 网站建设客网站网络平台有哪些
  • 阿里巴巴对外做网站吗搜索引擎优化服务
  • 有账号密码网站怎么建设小程序流量点击推广平台
  • 温州网站建设培训网络培训研修总结
  • 烟台网站建设地址seo课
  • 网站开发+兼职项目腾讯广告代理商加盟
  • 做网站知识推广普通话的文字内容
  • 在网站服务器上建立数据库网络电商推广方案
  • 国际网站开发成都计算机培训机构排名前十
  • 365建站器最新注册域名查询
  • 建设微信网站的流程培训班该如何建站
  • 天津定制网站建设seo优化策略
  • 业网站建设优化游戏的软件
  • 中山高端网站建设公司网络文章发布平台
  • 网站建设网站免费手机网页链接制作
  • discuz网站建设教学视频教程推广小程序
  • 什么是网站功能需求app拉新项目一手渠道商
  • 南京英文网站制作深圳优化seo排名
  • 云南企业网站建设常用的五种网络营销工具
  • 多媒体应用设计师好考吗济南网站优化公司哪家好
  • windows2012做网站嵌入式培训
  • 如何自己做摄影网站网站生成器
  • 做动态表情包的网站石家庄关键词优化报价