<model_build_name>!PREDICT¶
Extrahiert Informationen aus Dokumenten in einem Stagingbereich und liefert Antworten in einem JSON-Objekt. Wenn Sie ein einzelnes Dokument angeben, gibt die Methode Ergebnisse für dieses Dokument zurück. Andernfalls gibt die Methode Ergebnisse für jedes Dokument im Stagingbereich zurück.
Syntax¶
<model_build_name>!PREDICT(<presigned_url>,
[ <model_build_version> ]
)
Argumente¶
Benötigt:
presigned_url
Vorsignierte URL der Dokumente im Stagingbereich.
Um die vorsigniert URL zu erhalten, die Sie als Argument übergeben können, rufen Sie die Funktion GET_PRESIGNED_URL auf. Siehe GET_PRESIGNED_URL.
Weitere Informationen dazu finden Sie unter Beispiel.
Bemerkung
Die Funktion GET_PRESIGNED_URL hat eine Standard-Ablaufzeit (60 Minuten). Weitere Informationen zur Verlängerung der Ablaufzeit finden Sie unter GET_PRESIGNED_URL.
Optional:
model_build_version
Version des Document AI-Modell-Builds.
Wenn nicht angegeben, wird standardmäßig die letzte verfügbare Modell-Build-Version verwendet.
Rückgabewerte¶
Gibt ein JSON-Objekt mit den folgenden Feldern zurück:
ocrScore
Gibt den Konfidenzwert für den Prozess der optischen Zeichenerkennung (OCR) an.
score
Gibt den Konfidenzwert für einen bestimmten Wert an.
value
Gibt die extrahierte Antwort auf die Frage an.
Entitätsextraktion¶
{
"__documentMetadata": {
"ocrScore": 0.918
},
"invoice_number": [
{
"score": 0.925,
"value": "123/20"
}
],
"invoice_items": [
{
"score": 0.839,
"value": "NEW CRUSHED VELVET DIVAN BED"
},
{
"score": 0.839,
"value": "Vintage Radiator"
},
{
"score": 0.839,
"value": "Solid Wooden Worktop"
},
{
"score": 0.839,
"value": "Sienna Crushed Velvet Curtains"
}
],
"tax_amount": [
{
"score": 0.879,
"value": "77.57"
}
],
"total_amount": [
{
"score": 0.809,
"value": "465.43 GBP"
}
],
"buyer_name": [
{
"score": 0.925
}
]
"vendor_name": [
{
"score": 0.9,
"value": "UK Exports & Imports Ltd"
}
]
}
Tabellenextraktion¶
{
"__documentMetadata": {
"ocrScore": 0.887
},
"table1|gross": [
{
"score": 0.961,
"value": "10"
},
{
"score": 0.961,
"value": "31"
},
{
"score": 0.961,
"value": "10"
}
],
"table1|item": [
{
"score": 0.961,
"value": "apples"
},
{
"score": 0.961,
"value": "bananas"
},
{
"score": 0.961,
"value": "pears"
}
],
"table1|net": [
{
"score": 0.961,
"value": "9"
},
{
"score": 0.961,
"value": "30"
},
{
"score": 0.961,
"value": "10"
}
],
"table1|tax": [
{
"score": 0.961,
"value": "1"
},
{
"score": 0.961,
"value": "1"
},
{
"score": 0.961
}
],
"table2|age": [
{
"score": 0.894,
"value": "23"
},
{
"score": 0.894,
"value": "56"
},
{
"score": 0.894,
"value": "76"
},
{
"score": 0.894,
"value": "98"
}
],
"table2|date": [
{
"score": 0.894
},
{
"score": 0.894
},
{
"score": 0.894
},
{
"score": 0.894
}
],
"table2|name": [
{
"score": 0.894,
"value": "John"
},
{
"score": 0.894,
"value": "Ana"
},
{
"score": 0.894,
"value": "Lisa"
},
{
"score": 0.894,
"value": "Jerome"
}
],
"table2|surname": [
{
"score": 0.894,
"value": "Smith"
},
{
"score": 0.894,
"value": "Nixon"
},
{
"score": 0.894,
"value": "Gonzales"
},
{
"score": 0.894,
"value": "Tate"
}
],
"table3|column1": [
{
"score": 0.855
}
],
"table3|column2": [
{
"score": 0.855
}
],
"table3|column3": [
{
"score": 0.855
}
]
}
Anforderungen an die Zugriffssteuerung¶
Um Informationen mit Document AI zu extrahieren, müssen Sie eine Kontorolle verwenden, der die Datenbankrolle SNOWFLAKE.DOCUMENT_INTELLIGENCE_CREATOR zugewiesen ist. Weitere Informationen dazu finden Sie unter Zugriffssteuerung von Document AI.
Nutzungshinweise¶
Stellen Sie sicher, dass Sie die Voraussetzungen für die Verwendung dieser Methode erfüllen. Weitere Informationen dazu finden Sie unter Voraussetzungen.
Document AI hat eine Beschränkung für die Anzahl der in einer Abfrage verarbeiteten Dokumente. Weitere Informationen dazu finden Sie unter Bekannte Einschränkungen bei Document AI.
Alle Dokumente müssen sich in demselben Verzeichnis des Stagingbereichs befinden.
Document AI verwendet Verzeichnistabellen. Weitere Informationen dazu finden Sie unter Abfragen von Verzeichnistabellen.
Das Modell Document AI kann Listen zurückgeben. Ein Beispiel dafür ist das Feld
invoice_items
.Wenn das Modell Document AI keine Antwort in dem Dokument findet, gibt das Modell keinen
value
-Schlüssel zurück. Es gibt jedoch den Schlüsselscore
zurück, der angibt, wie sicher sich das Modell ist, dass das Dokument die Antwort nicht enthält. Ein Beispiel dafür ist das Feldbuyer_name
.Wenn bei der Tabellenextraktion eine Zelle leer ist, gibt das Document AI-Modell keinen
value
-Schlüssel zurück. Es gibt jedoch den Schlüsselscore
zurück, der angibt, wie sicher sich das Modell ist, dass die Zelle leer ist. Zum Beispiel enthälttable1
eine leere Zelle in der Spalteage
,table2
enthält eine völlig leeredate
-Spalte undtable3
ist eine leere Tabelle, die nur aus Headern besteht.Bei der Tabellenextraktion werden die Werte in der JSON-Ausgabe in der gleichen Reihenfolge wie die Zeilen in der Tabelle bereitgestellt, sodass Spalten leicht verbunden werden können.
Beispiel¶
Das folgende Beispiel extrahiert Informationen aus allen Dokumenten im Stagingbereich pdf_inspections_stage
für die Version 1
des Modell-Builds inspections
:
SELECT inspections!PREDICT(
GET_PRESIGNED_URL(@pdf_inspections_stage, RELATIVE_PATH), 1)
FROM DIRECTORY(@pdf_inspections_stage);
Das folgende Beispiel extrahiert Informationen aus dem Dokument 'paystubs/paystub01.pdf'
im Stagingbereich pdf_paystubs_stage
für die Version 1
des Modell-Builds paystubs
:
SELECT paystubs!PREDICT(
GET_PRESIGNED_URL(@pdf_paystubs_stage, 'paystubs/paystub01.pdf'), 1);