- Erste Schritte
- Überblick
- Limits und Kontingente
- Migration von Automatisierungen von Document Understanding API v1 zu v2
- Beispiele mit dem Document Understanding™ Cloud-API
- Lizenzierung
- Fehlersuche und ‑behebung

API-Leitfaden Understanding
Beim Upgrade von Document Understanding API v1 auf v2 gelten die folgenden grundlegenden Änderungen. Einige Aktualisierungen erfordern Aktion, um sicherzustellen, dass Ihre Automatisierungen weiterhin wie erwartet funktionieren.
Es wird empfohlen, die folgenden Schritte durchzuführen, um Ihre Automatisierungen von der Document Understanding API v1 zu v2 zu migrieren:
- Aktualisieren Sie Routenpfade.
- Aktualisieren Sie die Behandlung von Ergebnissen der Intelligente Datenextraktion und Verarbeitung (IXP)-Extraktion (von Tabellen zu Feldgruppen).
- Neu erstellen und erneut in einer non-production-Umgebung bereitstellen.
- Validieren Sie, ob die Automatisierung in allen vier Dimensionen wie erwartet funktioniert:
- Erkennung,
- Klassifizierung,
- Extraktion,
- Validierung.
Tag-basierte Routen wurden normalisiert, um die Konsistenz über die API hinweg zu verbessern.
Alle tagbasierten Endpunkte, die die vorherige Pfadstruktur verwenden, geben 400 Bad Request in v2 zurück.
{tag} enthalten.{projectId}.
v1
POST /projects/{projectId}/{tag}/classification
POST /projects/{projectId}/{tag}/classification
v2
POST /projects/{projectId}/tags/{tag}/classificationPOST /projects/{projectId}/tags/{tag}/classificationErforderliche Aktion
/projects/{projectId}/{tag}//projects/{projectId}/tags/{tag}/Stellen Sie sicher, dass diese Aktualisierung konsistent über alle Umgebungen hinweg angewendet wird.
fields Eigenschaft wird nicht mehr zurückgegeben. Jede Deserialisierungslogik oder stark typisierte Modelle, die auf Felder verweisen, schlagen fehl oder geben Null-Werte zurück.
v1
{
"fields": [
{
"name": "InvoiceNumber",
"type": "string"
}
]
}
{
"fields": [
{
"name": "InvoiceNumber",
"type": "string"
}
]
}
{
"taxonomy": {
...
}
}
{
"taxonomy": {
...
}
}
- Aktualisieren Sie Ihre Antwortmodelle, um das
taxonomyObject zu verwenden. - Refaktorieren Sie die nachgelagerte Logik, die zuvor von
fields. abhing.
tag Eigenschaft erwartet. Wenn Sie eine strenge Schemavalidierung verwenden, sind Aktualisierungen erforderlich.
v1
{
"tag": "staging"
}
{
"tag": "staging"
}
{
"tags": ["staging"]
}
{
"tags": ["staging"]
}
Erforderliche Aktion:
- Aktualisieren Sie Antwortmodelle, um sie durch
tag. zu ersetzentags. - Passen Sie die Logik an, wenn Sie einen einzelnen Tag-Wert annehmen.
Änderungen am Schema von Intelligente Datenextraktion und Verarbeitung (IXP)-Extraktionsergebnissen: Tabellen wurden entfernt und FieldType.Table wurde durch FieldType.FieldGroup ersetzt.
Diese Änderung betrifft nur Ergebnisse der Intelligente Datenextraktion und Verarbeitung (IXP).
In v1 gab die API ein Intelligente Datenextraktion und Verarbeitung (IXP)-Extraktionsergebnis als eine oder mehrere Tabellen zurück.Dies war eine Zuordnung des Konzepts von Intelligente Datenextraktion und Verarbeitung (IXP) von FieldGroups zu Tabellen.Alle Werte in diesen Tabellen wurden als Text (string) dargestellt, unabhängig von ihrem ursprünglichen Intelligente Datenextraktion und Verarbeitung (IXP)-Typ.
In v2 gibt die API Ergebnisse der Intelligente Datenextraktion und Verarbeitung (IXP) als Feldgruppen zurück. Dies führt eine 1-to-1-Zuordnung mit dem Konzept der Intelligente Datenextraktion und Verarbeitung (IXP)-FieldGroup ein.Jedes Feld behält seinen tatsächlichen Datentyp der Intelligente Datenextraktion und Verarbeitung (IXP) (z. B. Text, Zahl, Datum, Geldmenge) bei.
v1 (Ergebnis der Intelligente Datenextraktion und Verarbeitung (IXP) als Tabellen zurückgegeben; Werte werden als Text dargestellt)
{
"Tables": [
{
"FieldId": "Seller",
"FieldName": "Seller",
"IsMissing": false,
"DataSource": "Automatic",
"DataVersion": 0,
"OperatorConfirmed": false,
"Values": [
{
"OperatorConfirmed": true,
"Confidence": 0.9999834,
"OcrConfidence": 1.0,
"Cells": [
{
"RowIndex": 0,
"ColumnIndex": 0,
"IsHeader": true,
"IsMissing": false,
"OperatorConfirmed": false,
"DataSource": "Automatic",
"DataVersion": 0,
"Values": [
{
"Components": [],
"Value": "Name",
"UnformattedValue": "Name",
"Reference": {
"TextStartIndex": 0,
"TextLength": 0,
"Tokens": []
},
"DerivedFields": [],
"Confidence": -1.0,
"OperatorConfirmed": false,
"OcrConfidence": 1.0,
"TextType": "Unknown"
}
]
}
],
"ColumnInfo": [
{
"FieldId": "Name",
"FieldName": "Name",
"FieldType": "Text"
}
],
"NumberOfRows": 2
}
]
}
]
}{
"Tables": [
{
"FieldId": "Seller",
"FieldName": "Seller",
"IsMissing": false,
"DataSource": "Automatic",
"DataVersion": 0,
"OperatorConfirmed": false,
"Values": [
{
"OperatorConfirmed": true,
"Confidence": 0.9999834,
"OcrConfidence": 1.0,
"Cells": [
{
"RowIndex": 0,
"ColumnIndex": 0,
"IsHeader": true,
"IsMissing": false,
"OperatorConfirmed": false,
"DataSource": "Automatic",
"DataVersion": 0,
"Values": [
{
"Components": [],
"Value": "Name",
"UnformattedValue": "Name",
"Reference": {
"TextStartIndex": 0,
"TextLength": 0,
"Tokens": []
},
"DerivedFields": [],
"Confidence": -1.0,
"OperatorConfirmed": false,
"OcrConfidence": 1.0,
"TextType": "Unknown"
}
]
}
],
"ColumnInfo": [
{
"FieldId": "Name",
"FieldName": "Name",
"FieldType": "Text"
}
],
"NumberOfRows": 2
}
]
}
]
}{
"Fields": [
{
"FieldId": "Default.Seller",
"FieldName": "Seller",
"FieldType": "FieldGroup",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [
{
"Components": [
{
"FieldId": "Default.Seller.Name",
"FieldName": "Name",
"FieldType": "Text",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [
{
"Components": [],
"Value": "John Doe",
"UnformattedValue": "John Doe",
"Reference": {
"TextStartIndex": 0,
"TextLength": 8,
"Tokens": [
"..."
]
},
"DerivedFields": [],
"Confidence": 0.9999834,
"OperatorConfirmed": false,
"OcrConfidence": 0.90999997,
"TextType": "Text",
"ValidatorNotes": "",
"ValidatorNotesInfo": ""
}
]
}
]
}
]
}
]
}{
"Fields": [
{
"FieldId": "Default.Seller",
"FieldName": "Seller",
"FieldType": "FieldGroup",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [
{
"Components": [
{
"FieldId": "Default.Seller.Name",
"FieldName": "Name",
"FieldType": "Text",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [
{
"Components": [],
"Value": "John Doe",
"UnformattedValue": "John Doe",
"Reference": {
"TextStartIndex": 0,
"TextLength": 8,
"Tokens": [
"..."
]
},
"DerivedFields": [],
"Confidence": 0.9999834,
"OperatorConfirmed": false,
"OcrConfidence": 0.90999997,
"TextType": "Text",
"ValidatorNotes": "",
"ValidatorNotesInfo": ""
}
]
}
]
}
]
}
]
}- In v1 wurden „tabellarische“ Ergebnisse der Intelligente Datenextraktion und Verarbeitung (IXP) als FieldType.Table im Array Felder dargestellt und aus Gründen des Komforts einer Tabellenstruktur zugeordnet.
- In v2 werden Ergebnisse der Intelligente Datenextraktion und Verarbeitung (IXP) als FieldType.FieldGroup dargestellt und als FieldGroups zurückgegeben (1:1 mit FieldGroup der Intelligente Datenextraktion und Verarbeitung (IXP)).Jede Logik, die FieldType.Table oder Tabellen erwartet, wird Break.
Erforderliche Aktion
- Aktualisieren Sie die Behandlung von Intelligente Datenextraktion und Verarbeitung (IXP)-Extraktionsergebnissen, um FieldGroups anstelle von Tabellen zu verwenden.
- Wenn Ihre Automatisierung die Ergebnisse der Intelligente Datenextraktion und Verarbeitung (IXP) als Tabellen behandelt, aktualisieren Sie die Parsing-Logik, um die neue FieldGroup-Struktur und die typisierten Felder zu behandeln.
- Ersetzen Sie das string-basierte Parsing durch typbewusste Behandlung. Zum Beispiel:
- Datum: Als Datumswert parsen
- Zahl: Als numerischen Wert parsen
- MonetaryQuantity: Behandeln Sie Wert und Währung als ein einziges Object.
{
"Fields": [
{
"FieldId": "Seller",
"FieldName": "Seller",
"FieldType": "Table",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [
{
"Components": [
{
"FieldId": "Seller.Header",
"FieldName": "Header",
"FieldType": "Internal",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [],
"DataVersion": 0,
"OperatorConfirmed": false,
"ValidatorNotes": ""
},
{
"FieldId": "Seller.Body",
"FieldName": "Body",
"FieldType": "Internal",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [],
"DataVersion": 0,
"OperatorConfirmed": false,
"ValidatorNotes": ""
}
],
"Value": "",
"UnformattedValue": "",
"Reference": {
"TextStartIndex": 0,
"TextLength": 0,
"Tokens": []
},
"DerivedFields": [],
"Confidence": 0.9999834,
"OperatorConfirmed": true,
"OcrConfidence": 1.0,
"TextType": "Unknown"
}
],
"DataVersion": 0,
"OperatorConfirmed": false,
"ValidatorNotes": ""
}
]
}{
"Fields": [
{
"FieldId": "Seller",
"FieldName": "Seller",
"FieldType": "Table",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [
{
"Components": [
{
"FieldId": "Seller.Header",
"FieldName": "Header",
"FieldType": "Internal",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [],
"DataVersion": 0,
"OperatorConfirmed": false,
"ValidatorNotes": ""
},
{
"FieldId": "Seller.Body",
"FieldName": "Body",
"FieldType": "Internal",
"IsMissing": false,
"DataSource": "Automatic",
"Values": [],
"DataVersion": 0,
"OperatorConfirmed": false,
"ValidatorNotes": ""
}
],
"Value": "",
"UnformattedValue": "",
"Reference": {
"TextStartIndex": 0,
"TextLength": 0,
"Tokens": []
},
"DerivedFields": [],
"Confidence": 0.9999834,
"OperatorConfirmed": true,
"OcrConfidence": 1.0,
"TextType": "Unknown"
}
],
"DataVersion": 0,
"OperatorConfirmed": false,
"ValidatorNotes": ""
}
]
}- Änderungen des Endpunktpfads
- Änderung des Discovery-Antwortschemas:
fieldsEigenschaft entfernt - Änderung des Discovery-Antwortschemas:
tagUmbenannt intags - Änderungen am Schema von Intelligente Datenextraktion und Verarbeitung (IXP)-Extraktionsergebnissen: Tabellen wurden entfernt und FieldType.Table wurde durch FieldType.FieldGroup ersetzt.