账单处理预生成 AI 模型提取关键发票数据来帮助自动化发票处理。 发票处理模型经过优化,可以识别常见的发票元素,如发票 ID、发票日期、到期金额等。
通过发票模型,您可以通过生成自定义发票模型来增强默认行为。
在 Power Apps 中使用
要了解如何使用 Power Apps 中的发票处理预生成模型的信息,请转到使用 Power Apps 中的发票处理预生成模型。
在 Power Automate 中使用
要了解如何使用 Power Automate 中的发票处理预生成模型的信息,请转到使用 Power Automate 中的发票处理预生成模型。
支持的语言和文件
支持以下语言:阿尔巴尼亚语(阿尔巴尼亚)、捷克语(捷克共和国)、中文(简体)、中文(繁体,香港特别行政区)、中文(繁体,台湾)、丹麦语(丹麦)、克罗地亚语(波斯尼亚和黑塞哥维那)、克罗地亚语(克罗地亚)、克罗地亚语(塞尔维亚)、荷兰语(荷兰)、英语(澳大利亚)、英语(加拿大)、英语(印度)、英语(英国)、英语(美国)、爱沙尼亚语(爱沙尼亚)、芬兰语(芬兰),法语(法国)、德语(德国)、匈牙利语(匈牙利)、冰岛语(冰岛)、意大利语(意大利)、日语(日本)、韩语(韩国)、立陶宛语(立陶宛)、拉脱维亚语(拉脱维亚)、马来语(马来西亚)、挪威语(挪威)、波兰语(波兰)、葡萄牙语(葡萄牙)、罗马尼亚语(罗马尼亚)、斯洛伐克语(斯洛伐克)、斯洛文尼亚语(斯洛文尼亚)、塞尔维亚语(塞尔维亚)、西班牙语(西班牙)、瑞典语(瑞典)。
要获得最佳效果,请为每个账单提供一张清晰的照片或扫描件。
- 图像格式必须是 JPEG、PNG 或 PDF。
- 文件大小不能超过 20 MB。
- 图像尺寸必须介于 50 x 50 像素与 10,000 x 10,000 像素之间。
- PDF 尺寸必须为最大 17 x 17 英寸(等于 Legal 或 A3 纸张大小)或更小。
- 对于 PDF 文档,将仅处理前 2,000 个页面。
模型输出
如果检测到发票,发票处理模型将输出以下信息:
| 字段 | Description |
|---|---|
CustomerName |
正在开具发票的客户 |
CustomerId |
客户的参考 ID |
PurchaseOrder |
采购订单参考编号 |
InvoiceId |
此特定发票的 ID(通常为“发票编号”) |
InvoiceDate |
发票的颁发日期 |
DueDate |
此发票的付款截止日期是 |
VendorName |
创建此发票的供应商 |
VendorAddress |
供应商的邮寄地址 |
VendorAddressRecipient |
与 VendorAddress 关联的名称 |
CustomerAddress |
客户的邮寄地址 |
CustomerAddressRecipient |
与 CustomerAddress 关联的名称 |
BillingAddress |
客户的明确计费地址 |
BillingAddressRecipient |
与账单地址关联的名称 |
ShippingAddress |
客户明确的收货地址 |
ShippingAddressRecipient |
与收货地址关联的名称 |
SubTotal |
此发票标识的小计字段 |
TotalDiscount |
此发票上识别的折扣字段总额 |
TotalTax |
此发票标识的税费总额字段 |
InvoiceTotal |
与此发票关联的新费用总计 |
AmountDue |
支付给供应商的总金额 |
PreviousUnpaidBalance |
明确显示之前未支付的余额 |
RemittanceAddress |
客户的显式汇款或付款地址 |
RemittanceAddressRecipient |
与汇款地址关联的名称 |
ServiceAddress |
客户的显式服务地址或属性地址 |
ServiceAddressRecipient |
与 ServiceAddress 关联的名称 |
ServiceStartDate |
服务周期的开始日期(例如,公用事业账单服务周期) |
ServiceEndDate |
服务周期的结束日期(例如,公用事业账单服务周期) |
VendorTaxId |
与供应商关联的政府 ID 号 |
CustomerTaxId |
与客户关联的政府 ID 号 |
PaymentTerm |
付款应遵循的条款 |
KVKNumber |
在荷兰注册的企业的唯一标识符 |
PaymentDetails |
付款详细信息列表
|
TaxDetails |
税务详细信息列表
|
PaidInFourInstallements |
税务详细信息列表
|
Items |
税务详细信息列表
|
置信度分数
| 字段 | 置信度分数 |
|---|---|
CustomerName |
✔️ |
CustomerId |
✔️ |
PurchaseOrder |
✔️ |
InvoiceId |
✔️ |
InvoiceDate |
✔️ |
DueDate |
✔️ |
VendorName |
✔️ |
VendorAddress |
✔️ |
VendorAddressRecipient |
✔️ |
CustomerAddress |
✔️ |
CustomerAddressRecipient |
✔️ |
BillingAddress |
✔️ |
BillingAddressRecipient |
✔️ |
ShippingAddress |
✔️ |
ShippingAddressRecipient |
✔️ |
SubTotal |
✔️ |
TotalDiscount |
✔️ |
TotalTax |
✔️ |
InvoiceTotal |
✔️ |
AmountDue |
✔️ |
PreviousUnpaidBalance |
✔️ |
RemittanceAddress |
✔️ |
RemittanceAddressRecipient |
✔️ |
ServiceAddress |
✔️ |
ServiceAddressRecipient |
✔️ |
ServiceStartDate |
✔️ |
ServiceEndDate |
✔️ |
VendorTaxId |
✔️ |
CustomerTaxId |
✔️ |
PaymentTerm |
✔️ |
KVKNumber |
✔️ |
PaymentDetails.*.IBAN |
✔️ |
PaymentDetails.*.SWIFT |
✔️ |
PaymentDetails.*.BankAccountNumber |
✔️ |
PaymentDetails.*.BPayBillerCode |
✔️ |
PaymentDetails.*.BPayReference |
✔️ |
TaxDetails.*.Amount |
✔️ |
TaxDetails.*.Rate |
✔️ |
PaidInFourInstallements.*.Amount |
✔️ |
PaidInFourInstallements.*.DueDate |
✔️ |
Items.*.Amount |
✔️ |
Items.*.Date |
✔️ |
Items.*.Description |
✔️ |
Items.*.Quantity |
✔️ |
Items.*.ProductCode |
✔️ |
Items.*.Tax |
✔️ |
Items.*.TaxRate |
✔️ |
Items.*.Unit |
✔️ |
Items.*.UnitPrice |
✔️ |
键值对
键值对是所有标识的标签或键及其关联的响应或值。 您可以使用这些值提取不属于预定义字段列表的其他值。
若要可视化发票处理模型检测到的所有键值对,可以在云流中添加 “创建 HTML 表 ”作,如屏幕截图中所示,并运行云流。
若要提取知道其值的特定键,可以使用 筛选器数组 作,如以下屏幕截图所示。 在屏幕截图示例中,我们要提取键 Tel .: 的值。
限制
以下限制适用于跨文档处理模型(包括预生成模型)对各个环境发起的调用:收据处理和发票处理。
| Action | Limit | 续订期 |
|---|---|---|
| 调用(每个环境) | 360 | 60 秒 |
创建自定义发票处理解决方案
发票处理预生成的 AI 模型旨在提取发票中找到的常见字段。 由于每个业务都是独一无二的,因此您可能希望提取不在此预生成模型中包含的其他字段。 对于你处理的特定类型的发票,也可能会出现某些标准字段不易提取的情况。 若要解决此问题,有两个选项:
使用自定义发票处理模型:通过添加在默认情况下没有提取的新字段或无法正确提取的文档示例来增强预生成发票处理模型的行为。 若要了解如何扩充预生成的发票处理模型,请转到 “选择文档类型”。
查看原始 OCR 结果:每次发票处理预生成的 AI 模型处理你提供的文件时,它还会执行 OCR作来提取文件上写入的每一个单词。 可以在模型提供的检测到的文本输出上访问原始 OCR 结果。 对检测到的文本返回的内容进行简单搜索可能足以获取所需的数据。
使用文档处理:借助 AI Builder,还可以生成自己的自定义 AI 模型,以提取处理的文档所需的特定字段和表。 只需 创建一个文档处理模型 并对其进行训练,即可从无法很好地处理发票提取模型的发票中提取所有信息。
训练自定义文档处理模型后,可以在 Power Automate 云流中将其与发票处理预生成模型合并。
下面是一些示例:
使用自定义文档处理模型提取发票处理预生成模型未返回的其他字段
在此示例中,我们训练了一个自定义文档处理模型来提取 会员计划编号,仅存在于提供商 Adatum 和 Contoso 的发票中。
将新发票添加到 SharePoint 文件夹时,将触发云流。 然后,它会调用发票处理预生成的 AI 模型来提取其数据。 接下来,我们检查已处理的发票的供应商是否来自 Adatum 或 Contoso。 如果情况属实,我们将调用我们训练的自定义文档处理模型来获取该会员号码。 最后,我们将提取的数据从发票保存到 Excel 文件中。
如果发票处理预生成模型返回的字段的置信度分数较低,请使用自定义文档处理模型
在此示例中,我们训练了一个自定义文档处理模型,用于从发票中提取总金额,在使用发票处理预生成模型时,通常获得低置信度分数。
将新发票添加到 SharePoint 文件夹时,将触发云流。 然后,它会调用发票处理预生成的 AI 模型来提取其数据。 接下来,我们检查 发票总值 属性的置信度分数是否小于 0.65。 如果是这种情况,当整个字段通常会获得较低的置信度分数时,我们会调用一个已经使用发票训练过的自定义文档处理模型。 最后,我们将提取的数据从发票保存到 Excel 文件中。
使用预建模型处理自定义文档处理模型无法处理的发票
使用发票处理预生成模型的一种方法是将其用作回退模型来处理未在自定义文档处理模型中训练的发票。 例如,假设你构建了一个文档处理模型,并对其进行了训练,以便从前 20 个发票提供程序中提取数据。 然后,可以使用发票处理预生成模型来处理所有新发票或降低批量发票。 下面是一个你可以这样做的示例:
将新发票添加到 SharePoint 文件夹时,将触发此云流。 然后,它调用自定义文档处理模型来提取其数据。 接下来,我们检查检测到的集合的置信度分数是否小于 0.65。 如果是这种情况,则可能意味着提供的发票与自定义模型不匹配。 然后,我们调用预生成的发票处理模型。 最后,我们将提取的数据从发票保存到 Excel 文件中。