Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks SQL
Databricks Runtime
Die ai_extract() Funktion extrahiert strukturierte Daten aus Text und Dokumenten gemäß einem von Ihnen bereitgestellten Schema. Sie können einfache Feldnamen für die grundlegende Extraktion verwenden oder komplexe Schemas mit geschachtelten Objekten, Arrays, Typüberprüfungen und Feldbeschreibungen für Geschäftsdokumente wie Rechnungen, Verträge und Finanzablage definieren.
Die Funktion akzeptiert Text oder VARIANT Ausgabe von anderen KI-Funktionen, z ai_parse_document. B. die Aktivierung von komponierbaren Workflows für die End-to-End-Dokumentverarbeitung.
Eine visuelle Benutzeroberfläche zum Überprüfen und Durchlaufen der Ergebnisse finden ai_extractSie unter "Information Extraction".
Anforderungen
Apache 2.0-Lizenz
Die zugrunde liegenden Modelle, die derzeit verwendet werden können, sind unter der Apache 2.0-Lizenz, Copyright © The Apache Software Foundation lizenziert. Kunden sind dafür verantwortlich, die Einhaltung anwendbarer Modelllizenzen sicherzustellen.
Databricks empfiehlt, diese Lizenzen zu überprüfen, um die Einhaltung der geltenden Bedingungen zu gewährleisten. Wenn in Zukunft Modelle entstehen, die gemäß den internen Benchmarks von Databricks besser funktionieren, kann Databricks das Modell (und die Liste der anwendbaren Lizenzen auf dieser Seite) ändern.
Das Modell, das diese Funktion unterstützt, wird mithilfe von Model Serving Foundation Model-APIs verfügbar gemacht. Informationen dazu, welche Modelle für Databricks verfügbar sind, sowie die Lizenzen und Richtlinien, die die Verwendung dieser Modelle regeln, finden Sie unter "Anwendbare Modellbedingungen ".
Wenn in Zukunft Modelle entstehen, die nach den internen Benchmarks von Databricks besser funktionieren, können Databricks die Modelle ändern und die Dokumentation aktualisieren.
- Diese Funktion ist nur in einigen Regionen verfügbar, siehe Verfügbarkeit der KI-Funktion.
- Für Arbeitsbereiche mit dem Add-On "Erweiterte Sicherheit und Compliance"
- Siehe regionale Unterstützung für
ai_extractden entsprechenden Compliancestandard. - Informationen zum Aktivieren in Ihrem Arbeitsbereich finden Sie unter "Verwalten Azure Databricks Vorschauen".
- Diese Funktion ist in Pro- oder Classic SQL Warehouses nicht verfügbar.
- Databricks Runtime 18.2 oder höher ist erforderlich.
- Siehe regionale Unterstützung für
- Serverlose Berechnung ist für Notizbücher und Databricks-Workflows erforderlich.
- Weitere Informationen finden Sie auf der Seite zu den Preisen von Databricks SQL.
Tip
Databricks empfiehlt die Verwendung von Version 2.0 oder höher für ai_extract. Version 1.0 ist eine ältere Schnittstelle, die diese Funktionen nicht unterstützt und nicht für neue oder Produktionsworkloads empfohlen wird.
Version 2.0 und höher unterstützt,
- Umfangreiche JSON-Schemas mit geschachtelten Objekten, Arrays, Typüberprüfung und Feldbeschreibungen
- Akzeptiert sowohl als auch
STRINGVARIANTEingaben von vorgelagerten KI-Funktionen wieai_parse_document
Version 2.1 fügt auch Zitate und Konfidenzergebnisse hinzu.
Um eine Version explizit anzuheften, übergeben Sie options => map('version', '2.1').
Syntax
Version 2.1 (empfohlen)
ai_extract(content, schema [, options])
Version 2
ai_extract(content, schema [, options])
Version 1 (Legacy)
ai_extract(content, labels [, options])
Argumente
Version 2.1 (empfohlen)
content: EinVARIANT- oderSTRING-Ausdruck. Akzeptiert entweder:- Unformatierter Text als
STRING - Eine von einer anderen KI-Funktion erzeugte Funktion (z
VARIANT. B.ai_parse_document)
- Unformatierter Text als
schema: EinSTRINGLiteral, das das JSON-Schema für die Extraktion definiert. Das Schema kann folgendes sein:- Einfaches Schema: Ein JSON-Array von Feldnamen (als Zeichenfolgen angenommen)
"[\"vendor_name\", \"invoice_id\", \"total_amount\"]" - Erweitertes Schema: Ein JSON-Objekt mit Typinformationen, Beschreibungen und geschachtelten Strukturen
- Unterstützt
string,integer,number, ,booleanundenumTypen. Führt die Typüberprüfung aus. Ungültige Werte führen zu einem Fehler. Maximal 500 Enumerationswerte. - Unterstützt geschachtelte Objekte mit
"type": "object""properties" - Unterstützt Arrays von Grundtypen oder Objekten, die mit
"type": "array""items" - Optionales
"description"Feld für jede Eigenschaft zur Anleitung der Extraktionsqualität
- Unterstützt
- Einfaches Schema: Ein JSON-Array von Feldnamen (als Zeichenfolgen angenommen)
options: Optional enthaltendeMAP<STRING, STRING>Konfigurationsoptionen:-
version: Versionswechsel zur Unterstützung der Migration ("2.1","2.0","1.0"). Der Standardwert basiert auf Eingabetypen. -
instructions: Globale Beschreibung der Aufgabe und Domäne zur Verbesserung der Extraktionsqualität. Muss kleiner als 20.000 Zeichen sein. -
enableCitations: Wenntruedie Ausgabe für jedes Feld im Extraktionsschema eine Liste mit null oder mehr Zitaten enthält, die im Dokument die extrahierte Ausgabe angibt. -
enableConfidenceScores: Wenntruedie Ausgabe für jedes Feld im Extraktionsschema eine Konfidenzbewertung zwischen 0 und 1 enthält, die angibt, wie sicher das Modell über diesen Wert ist. Der entsprechende Konfidenzschwellenwert hängt von Ihrem spezifischen Anwendungsfall ab, und Sie sollten einen Cutoff auswählen, der ihrer Toleranz für Risiko und Fehler entspricht.
-
Version 2
content: EinVARIANT- oderSTRING-Ausdruck. Akzeptiert entweder:- Unformatierter Text als
STRING - Eine von einer anderen KI-Funktion erzeugte Funktion (z
VARIANT. B.ai_parse_document)
- Unformatierter Text als
schema: EinSTRINGLiteral, das das JSON-Schema für die Extraktion definiert. Das Schema kann folgendes sein:- Einfaches Schema: Ein JSON-Array von Feldnamen (als Zeichenfolgen angenommen)
"[\"vendor_name\", \"invoice_id\", \"total_amount\"]" - Erweitertes Schema: Ein JSON-Objekt mit Typinformationen, Beschreibungen und geschachtelten Strukturen
- Unterstützt
string,integer,number, ,booleanundenumTypen. Führt die Typüberprüfung aus. Ungültige Werte führen zu einem Fehler. Maximal 500 Enumerationswerte. - Unterstützt geschachtelte Objekte mit
"type": "object""properties" - Unterstützt Arrays von Grundtypen oder Objekten, die mit
"type": "array""items" - Optionales
"description"Feld für jede Eigenschaft zur Anleitung der Extraktionsqualität
- Unterstützt
- Einfaches Schema: Ein JSON-Array von Feldnamen (als Zeichenfolgen angenommen)
options: Optional enthaltendeMAP<STRING, STRING>Konfigurationsoptionen:-
version: Version switch to support migration ("1.0"for v1 behavior,"2.0"for v2 behavior). Der Standardwert basiert auf Eingabetypen, fällt jedoch auf"1.0". -
instructions: Globale Beschreibung der Aufgabe und Domäne zur Verbesserung der Extraktionsqualität. Muss kleiner als 20.000 Zeichen sein.
-
Version 1 (Legacy)
content: EinSTRINGAusdruck, der den unformatierten Text enthält.labels: EinARRAY<STRING>-Literal. Jedes Element ist ein Entitätstyp, der extrahiert werden soll.options: Optional enthaltendeMAP<STRING, STRING>Konfigurationsoptionen:-
version: Version switch to support migration ("1.0"for v1 behavior,"2.0"for v2 behavior). Der Standardwert basiert auf Eingabetypen, fällt jedoch auf"1.0".
-
Rückgabe
Version 2.1 (empfohlen)
Gibt einen enthaltenden Wert zurück VARIANT :
{
"response": {...}, // Extracted data matching the provided schema. Each leaf is returned as a Field object (see below).
"error_message": null, // null on success, or error message on failure
"metadata": { ... } // Metadata about the response, including version and citation details.
}
Das response Feld enthält die strukturierten Daten, die gemäß dem Schema extrahiert wurden:
- Feldnamen und -typen entsprechen der Schemadefinition
- Die Struktur des Schemas wird in der Antwort beibehalten: Geschachtelte Objekte und Arrays behalten ihre ursprüngliche Form bei. Jedes Skalarfeld im Extraktionsschema weist ein Ausgabeobjekt mit den folgenden Feldern auf:
-
value: Der extrahierte Wert, der gemäß dem Schema eingegeben wurde.Nullwenn das Feld nicht extrahiert werden kann. -
citation_ids: Nur vorhanden, wennenableCitationses sich umtrue. Ein Array von IDs indiziert inmetadata.citations. -
confidence_score: Nur vorhanden, wennenableConfidenceScoreses sich umtrue. Ein float zwischen 0 und 1.
-
- Die Typüberprüfung wird für ganze Zahlen, boolesche und Enumerationstypen erzwungen.
- Wenn es
contentNULList, ist das ErgebnisNULL.
Das metadata Feld enthält die Metadaten zur Antwort. Wenn enableCitations ja true, enthält es auch Details zu jeder Zitat-ID im response Feld, die den extrahierten Wert zurück an seine Position in der Eingabe zurückverfolgt.
Je nach Eingabetyp können Zitate von einem von zwei Typen sein:
- Bei Unformatierten Texteingaben (STRING) ist ein Zitat eine Textspanne in der ursprünglichen Eingabe. Jedes Objekt in "metadata.citations" enthält:
-
id: Ganze Zahl, die einem citation_ids Eintrag in einem Feld abgleicht. -
start: Inklusiver 0-basierter Zeichenoffset in der Eingabezeichenfolge. -
stop: Exklusiver 0-basierter Zeichenoffset in der Eingabezeichenfolge.
-
- Bei PDF-Dokumenten und Bildern (bei Verwendung
ai_extractnachgelagerterai_parse_documentElemente) ist ein Zitat ein umgebendes Feld in der ursprünglichen Eingabe. Jedes Objekt enthältmetadata.citationsFolgendes:-
id: Ganze Zahl, die einemcitation_idsEintrag in einem Feld abgleicht. -
bbox: Array von{coord, page_id}Objekten, identisch in Shape mit element.bbox inai_parse_documentausgabe.coordist Pixelkoordinaten auf dem Seitenbild wie[x0, y0, x1, y1]; page_idein 0-basierter Seitenindex.
-
Version 2
Gibt einen enthaltenden Wert zurück VARIANT :
{
"response": { ... }, // Extracted data matching the provided schema
"metadata": {
"version": "2.0" // Function version used
},
"error_message": null // null on success, or error message on failure
}
Das response Feld enthält die strukturierten Daten, die gemäß dem Schema extrahiert wurden:
- Feldnamen und -typen entsprechen der Schemadefinition
- Geschachtelte Objekte und Arrays werden in der Struktur beibehalten.
- Felder können gefunden werden, wenn sie nicht gefunden werden
null - Die Typüberprüfung wird für
integer,number,booleanundenumTypen erzwungen.
Das metadata Feld enthält Metadaten zur Antwort.
Wenn es contentNULL ist, ist das Ergebnis NULL.
Version 1 (Legacy)
Gibt eine STRUCT Stelle zurück, an der jedes Feld einem entitätstyp entspricht, der in labels. Jedes Feld enthält eine Zeichenfolge, die die extrahierte Entität darstellt. Wenn die Funktion mehrere Kandidaten für einen Entitätstyp findet, wird nur eine zurückgegeben.
Beispiele
Version 2.1 (empfohlen)
Einfaches Schema – nur Feldnamen
> SELECT ai_extract(
'Invoice #12345 from Acme Corp for $1,250.00 dated 2024-01-15',
'["invoice_id", "vendor_name", "total_amount", "invoice_date"]',
options => map('version', '2.1')
);
{
"response": {
"invoice_id": {"value": "12345"},
"vendor_name": {"value": "Acme Corp"},
"total_amount": {"value": "1250.00"},
"invoice_date": {"value": "2024-01-15"}
},
"error_message": null
}
Erweitertes Schema – mit Typen und Beschreibungen
> SELECT ai_extract(
'Invoice #12345 from Acme Corp for $1,250.00 dated 2024-01-15',
'{
"invoice_id": {"type": "string", "description": "Unique invoice identifier"},
"vendor_name": {"type": "string", "description": "Legal business name"},
"total_amount": {"type": "number", "description": "Total invoice amount"},
"invoice_date": {"type": "string", "description": "Date in YYYY-MM-DD format"}
}',
options => map('version', '2.1')
);
{
"response": {
"invoice_id": {"value": "12345"},
"vendor_name": {"value": "Acme Corp"},
"total_amount": {"value": 1250.00},
"invoice_date": {"value": "2024-01-15"}
},
"error_message": null
}
Geschachtelte Objekte und Arrays
> SELECT ai_extract(
'Invoice #12345 from Acme Corp
Line 1: Widget A, qty 10, $50.00 each
Line 2: Widget B, qty 5, $100.00 each
Subtotal: $1,000.00, Tax: $80.00, Total: $1,080.00',
'{
"invoice_header": {
"type": "object",
"properties": {
"invoice_id": {"type": "string"},
"vendor_name": {"type": "string"}
}
},
"line_items": {
"type": "array",
"description": "List of invoiced products",
"items": {
"type": "object",
"properties": {
"description": {"type": "string"},
"quantity": {"type": "integer"},
"unit_price": {"type": "number"}
}
}
},
"totals": {
"type": "object",
"properties": {
"subtotal": {"type": "number"},
"tax_amount": {"type": "number"},
"total_amount": {"type": "number"}
}
}
}',
options => map('version', '2.1')
);
{
"response": {
"invoice_header": {
"invoice_id": {"value": "12345"},
"vendor_name": {"value": "Acme Corp"}
},
"line_items": [
{"description": {"value": "Widget A"}, "quantity": {"value": 10}, "unit_price": {"value": 50.00}},
{"description": {"value": "Widget B"}, "quantity": {"value": 5}, "unit_price": {"value": 100.00}}
],
"totals": {
"subtotal": {"value": 1000.00},
"tax_amount": {"value": 80.00},
"total_amount": {"value": 1080.00}
}
},
"error_message": null
}
Kompositierbarkeit mit ai_parse_document
> WITH parsed_docs AS (
SELECT
path,
ai_parse_document(
content,
MAP('version', '2.0')
) AS parsed_content
FROM READ_FILES('/Volumes/finance/invoices/', format => 'binaryFile')
)
SELECT
path,
ai_extract(
parsed_content,
'["invoice_id", "vendor_name", "total_amount"]',
MAP('version', '2.1', 'instructions', 'These are vendor invoices.')
) AS invoice_data
FROM parsed_docs;
Verwenden von Enumerationen
> SELECT ai_extract(
'Invoice #12345 from Acme Corp, amount: $1,250.00 USD',
'{
"invoice_id": {"type": "string"},
"vendor_name": {"type": "string"},
"total_amount": {"type": "number"},
"currency": {
"type": "enum",
"labels": ["USD", "EUR", "GBP", "CAD", "AUD"],
"description": "Currency code"
},
"payment_terms": {"type": "string"}
}',
options => map('version', '2.1')
);
{
"response": {
"invoice_id": {"value": "12345"},
"vendor_name": {"value": "Acme Corp"},
"total_amount": {"value": 1250.00},
"currency": {"value": "USD"},
"payment_terms": {"value": null}
},
"error_message": null
}
Zitate (STRING-Eingabe, SPAN-Zitate)
> SELECT ai_extract(
'Invoice #12345 from Acme Corp for $1,250.00 dated 2024-01-15',
'{
"invoice_id": {"type": "string", "description": "Unique invoice identifier"},
"vendor_name": {"type": "string", "description": "Legal business name"},
"total_amount": {"type": "number", "description": "Total invoice amount"},
"invoice_date": {"type": "string", "description": "Date in YYYY-MM-DD format"}
}',
options => map(
'version', '2.1',
'enableCitations', 'true'
)
);
{
"response": {
"invoice_id": {"citation_ids": [0], "value": "12345"},
"vendor_name": {"citation_ids": [0], "value": "Acme Corp"},
"total_amount": {"citation_ids": [1], "value": 1250.00},
"invoice_date": {"citation_ids": [1], "value": "2024-01-15"}
},
"metadata": {
"version": "2.1",
"chunk_type": "span",
"citations": [
{"id": 0, "start": 0, "stop": 29},
{"id": 1, "start": 29, "stop": 60}
]
},
"error_message": null
}
Zitate (VARIANT aus ai_parse_document, BBOX Zitate)
> WITH parsed AS (
SELECT ai_parse_document(
content,
map('imageOutputPath', '/Volumes/main/default/parsed_images/') // necessary for rendering bboxes
) AS doc
FROM READ_FILES('/Volumes/main/default/invoices/invoice.pdf', format => 'binaryFile')
)
SELECT ai_extract(
doc,
'{"invoice_id":{"type":"string"}, "total_amount":{"type":"number"}}',
options => map('version','2.1','enableCitations','true')
) AS extracted
FROM parsed;
{
"response": {
"invoice_id": {"citation_ids": [0], "value": "12345"},
"total_amount": {"citation_ids": [1], "value": 1250.00}
},
"metadata": {
"version": "2.1",
"chunk_type": "bbox",
"citations": [
{"id": 0, "bbox": [{"coord": [120, 80, 240, 110], "page_id": 0}]},
{"id": 1, "bbox": [{"coord": [400, 500, 560, 530], "page_id": 0}]}
],
"pages": [{"id": 0, "image_uri": "/Volumes/main/default/parsed_images/6077ca79...f8efdb2ed05.jpg"}]
},
"error_message": null
}
Konfidenzbewertungen
> SELECT ai_extract(
'Invoice #12345 from Acme Corp for $1,250.00 dated 2024-01-15',
'{
"invoice_id": {"type": "string", "description": "Unique invoice identifier"},
"vendor_name": {"type": "string", "description": "Legal business name"},
"total_amount": {"type": "number", "description": "Total invoice amount"},
"invoice_date": {"type": "string", "description": "Date in YYYY-MM-DD format"}
}',
options => map(
'version', '2.1',
'enableConfidenceScores', 'true'
)
);
{
"response": {
"invoice_id": {"confidence_score": 0.95, "value": "12345"},
"vendor_name": {"confidence_score": 0.62, "value": "Acme Corp"},
"total_amount": {"confidence_score": 1.0, "value": 1250.00},
"invoice_date": {"confidence_score": 0.99, "value": "2024-01-15"}
},
"error_message": null
}
Notebook-Beispiel
Das folgende Notizbuch stellt eine visuelle Debugschnittstelle zum Analysieren der Zitatausgabe der ai_extract Funktion bereit. Es veranschaulicht, wie Zitatmetadaten als Teilzeichenfolgenausschnitte (STRING-Eingabe) oder Begrenzungsfeldüberlagerungen (VARIANT-Eingabe) gerendert und Zitate zurück zu ai_extract Elementen in SQL verknüpft ai_parse_document werden, damit Sie Extraktionen mit niedriger Konfidenz für die manuelle Überprüfung kennzeichnen können.
Zitatrendering-Notizbuch
Version 2
Einfaches Schema – nur Feldnamen
> SELECT ai_extract(
'Invoice #12345 from Acme Corp for $1,250.00 dated 2024-01-15',
'["invoice_id", "vendor_name", "total_amount", "invoice_date"]'
);
{
"response": {
"invoice_id": "12345",
"vendor_name": "Acme Corp",
"total_amount": "1250.00",
"invoice_date": "2024-01-15"
},
"metadata": {
"version": "2.0"
},
"error_message": null
}
Erweitertes Schema – mit Typen und Beschreibungen
> SELECT ai_extract(
'Invoice #12345 from Acme Corp for $1,250.00 dated 2024-01-15',
'{
"invoice_id": {"type": "string", "description": "Unique invoice identifier"},
"vendor_name": {"type": "string", "description": "Legal business name"},
"total_amount": {"type": "number", "description": "Total invoice amount"},
"invoice_date": {"type": "string", "description": "Date in YYYY-MM-DD format"}
}'
);
{
"response": {
"invoice_id": "12345",
"vendor_name": "Acme Corp",
"total_amount": 1250.00,
"invoice_date": "2024-01-15"
},
"metadata": {
"version": "2.0"
},
"error_message": null
}
Geschachtelte Objekte und Arrays
> SELECT ai_extract(
'Invoice #12345 from Acme Corp
Line 1: Widget A, qty 10, $50.00 each
Line 2: Widget B, qty 5, $100.00 each
Subtotal: $1,000.00, Tax: $80.00, Total: $1,080.00',
'{
"invoice_header": {
"type": "object",
"properties": {
"invoice_id": {"type": "string"},
"vendor_name": {"type": "string"}
}
},
"line_items": {
"type": "array",
"description": "List of invoiced products",
"items": {
"type": "object",
"properties": {
"description": {"type": "string"},
"quantity": {"type": "integer"},
"unit_price": {"type": "number"}
}
}
},
"totals": {
"type": "object",
"properties": {
"subtotal": {"type": "number"},
"tax_amount": {"type": "number"},
"total_amount": {"type": "number"}
}
}
}'
);
{
"response": {
"invoice_header": {
"invoice_id": "12345",
"vendor_name": "Acme Corp"
},
"line_items": [
{"description": "Widget A", "quantity": 10, "unit_price": 50.00},
{"description": "Widget B", "quantity": 5, "unit_price": 100.00}
],
"totals": {
"subtotal": 1000.00,
"tax_amount": 80.00,
"total_amount": 1080.00
}
},
"metadata": {
"version": "2.0"
},
"error": null
}
Kompositierbarkeit mit ai_parse_document
> WITH parsed_docs AS (
SELECT
path,
ai_parse_document(
content,
MAP('version', '2.0')
) AS parsed_content
FROM READ_FILES('/Volumes/finance/invoices/', format => 'binaryFile')
)
SELECT
path,
ai_extract(
parsed_content,
'["invoice_id", "vendor_name", "total_amount"]',
MAP('instructions', 'These are vendor invoices.')
) AS invoice_data
FROM parsed_docs;
Verwenden von Enumerationen
> SELECT ai_extract(
'Invoice #12345 from Acme Corp, amount: $1,250.00 USD',
'{
"invoice_id": {"type": "string"},
"vendor_name": {"type": "string"},
"total_amount": {"type": "number"},
"currency": {
"type": "enum",
"labels": ["USD", "EUR", "GBP", "CAD", "AUD"],
"description": "Currency code"
},
"payment_terms": {"type": "string"}
}'
);
{
"response": {
"invoice_id": "12345",
"vendor_name": "Acme Corp",
"total_amount": 1250.00,
"currency": "USD",
"payment_terms": null
},
"metadata": {
"version": "2.0"
},
"error": null
}
Version 1 (Legacy)
> SELECT ai_extract(
'John Doe lives in New York and works for Acme Corp.',
array('person', 'location', 'organization')
);
{"person": "John Doe", "location": "New York", "organization": "Acme Corp."}
> SELECT ai_extract(
'Send an email to jane.doe@example.com about the meeting at 10am.',
array('email', 'time')
);
{"email": "jane.doe@example.com", "time": "10am"}
Einschränkungen
Version 2.1 (empfohlen)
- Diese Funktion ist für Azure Databricks SQL Classic nicht verfügbar.
- Diese Funktion kann nicht mit Ansichten verwendet werden.
- Das Schema unterstützt maximal 128 Felder.
- Feldnamen können bis zu 150 Zeichen enthalten.
- Schemas unterstützen bis zu sieben Schachtelungsebenen für geschachtelte Felder.
- Enumerationsfelder unterstützen maximal 500 Werte.
- Die Typüberprüfung wird für
integer,number,booleanundenumTypen erzwungen. Wenn ein Wert nicht mit dem angegebenen Typ übereinstimmt, gibt die Funktion einen Fehler zurück. - Die maximale Gesamtkontextgröße beträgt 128.000 Token.
Version 2
- Diese Funktion ist für Azure Databricks SQL Classic nicht verfügbar.
- Diese Funktion kann nicht mit Ansichten verwendet werden.
- Das Schema unterstützt maximal 128 Felder.
- Feldnamen können bis zu 150 Zeichen enthalten.
- Schemas unterstützen bis zu sieben Schachtelungsebenen für geschachtelte Felder.
- Enumerationsfelder unterstützen maximal 500 Werte.
- Die Typüberprüfung wird für
integer,number,booleanundenumTypen erzwungen. Wenn ein Wert nicht mit dem angegebenen Typ übereinstimmt, gibt die Funktion einen Fehler zurück. - Die maximale Gesamtkontextgröße beträgt 128.000 Token.
Version 1 (Legacy)
- Diese Funktion ist für Azure Databricks SQL Classic nicht verfügbar.
- Diese Funktion kann nicht mit Ansichten verwendet werden.
- Wenn mehrere Kandidaten für einen Entitätstyp im Inhalt gefunden werden, wird nur ein Wert zurückgegeben.