AI_COMPLETE mit Dokumenten

Die Funktion AI_COMPLETE von Cortex ist eine allgemeine AI-Funktion, die in PDF, Microsoft Word und anderen Dokumentdateiformaten gespeicherte Daten verstehen kann. Sie können mit AI_COMPLETE eine Vielzahl von Aufgaben zur Extraktion von Dokumentdaten ausführen, wie z. B.:

  • Beantworten von Fragen mithilfe von Daten in Graphen und Diagrammen.

  • Ermitteln von Beziehungen zwischen Diagrammen und Dokumenttext.

  • Zusammenfassen des Dokumentinhalts in einer bestimmten Frage.

  • Extrahieren von Entitäten aus Dokumenten.

Ein Vorteil von AI_COMPLETE gegenüber anderen:doc:AI Funktionen zur Dokumentenverarbeitung <ai-documents> ist die Möglichkeit, ein Modell auszuwählen, sodass Sie das beste Modell für Ihre spezielle Dokumentenverarbeitungsaufgabe verwenden können.

Verarbeitung von Dokumenten mit AI_COMPLETE

Die Funktion COMPLETE verarbeitet Dokumentdateien, die in einem internen Snowflake-Stagingbereich oder einem externen Stagingbereich gespeichert sind. Der Vervollständigungs-Prompt kann auf ein einzelnes Dokument oder auf mehrere Dokumente verweisen. Sie vergleichen beispielsweise die Korrektheit einer Übersetzung von Marketingmaterial, indem Sie die ursprünglichen und übersetzten Dokumente als Eingabe für die Funktion bereitstellen, zusammen mit einem Prompt, in dem das Modell aufgefordert wird, die Übersetzungsqualität zu bewerten.

Wenn Sie die Funktion aufrufen, müssen Sie das zu verwendende Modell und einen Prompt angeben. Der Prompt sollte Anweisungen zusammen mit einer FILE-Objektreferenz für jedes Dokument umfassen, das Sie verarbeiten möchten. Beispiel-Prompts und -Vervollständigungen finden Sie unter ` Beispiele`_ und die Syntax von Funktionsaufrufen unter AI_COMPLETE (Prompt-Objekt).

Eingabeanforderungen

AI_COMPLETE ist sowohl für digital erstellte als auch für gescannte Dokumente optimiert. In der folgenden Tabelle sind die Beschränkungen und Anforderungen für Eingabedokumente aufgeführt:

Unterstützte Dateitypen

Alle Modelle: .txt, .md, .pdf
Claude-Modelle: .txt, .md, .pdf, .doc, .docx, .xls, .xlsx, .csv, .xhtml

Stagingbereich-Verschlüsselung

Serverseitige Verschlüsselung:

Datentyp

FILE-Objekt

Bemerkung

Die Verarbeitung von Dateien aus Stagingbereichen mit AI_COMPLETE ist derzeit nicht mit kundenspezifischen Netzwerkrichtlinien kompatibel.

Beispiele

Die folgenden Beispiele veranschaulichen die Verwendung von AI_COMPLETE, um drei gängige Anwendungsfälle zu verarbeiten: Fragen und Antworten für Diagramme, kontextbezogene Dokumentenzusammenfassung und Erkundung technischer Berichte.

Beispiel für Fragen und Antworten für Diagramme

Titelseite des EU-Berichts „Breaking the Gridlock“

Das folgende Beispiel verwendet das Claude Opus 4-Modell von Anthropic, um Daten zu analysieren, die in einem Diagramm im Kontext des Dokuments hdr2023-24snapshoten.pdf dargestellt sind, das im Stagingbereich @docs gespeichert ist.

SELECT AI_COMPLETE(
  MODEL => 'claude-4-opus',
  PROMPT => PROMPT('Compare the distributions of HDI in each group: low HDI group, medium HDI group, high HDI group and very high HDI group visualized in {0}', TO_FILE('@docs', 'hdr2023-24snapshoten.pdf'))
);

Antwort:

Looking at the document, I can see Figure S.2 on page 6 which shows the recovery of HDI values since the 2020-2021
decline across different HDI groups. The visualization shows:

**Low HDI group**:
- 49% recovered
- 51% did not recover

**Medium HDI group**:
- The document doesn't provide specific recovery percentages for this group in the figure

**High HDI group**:
- The document doesn't provide specific recovery percentages for this group in the figure

**Very high HDI group**:
- 100% recovered (all OECD countries)

The document also provides additional insights about HDI distributions:

1. **Inequality trends** (Figure S.3, page 7): The inequality between very high HDI and low HDI countries has been
   increasing since 2020, reversing a long-term declining trend. The difference in HDI values between these groups
   increased from 0.38 in 2017 to 0.39 in 2020 and is projected to continue rising.

2. **Overall recovery patterns**: The text notes that "every Organisation for Economic Co-operation and Development
   country is projected to have recovered, but only about half of the Least Developed Countries are projected to have
   done so."

3. **Global HDI trajectory**: While the global HDI value is projected to reach a record high in 2023, it remains below
   its pre-2019 trend, suggesting a permanent shift in the development trajectory.

The document emphasizes the highly unequal nature of recovery across HDI groups, with countries in higher HDI
categories showing much stronger recovery rates than those in lower HDI categories.

Beispiel für die kontextbezogene Dokumentenzusammenfassung

Erste Seite des EU-Beschlusses 1008/2008

Das folgende Beispiel verwendet das Claude Sonnet 4-Modell von Anthropic, um die Zusammenfassung eines rechtlichen Textes mit einem komplexen Layout zu extrahieren. Das Dokument``CELEX_32008R1008_EN_TXT.pdf`` ist im Stagingbereich @docs gespeichert; der Prompt schränkt den Zusammenfassungskontext ein.

SELECT AI_COMPLETE(
  MODEL => 'claude-4-sonnet',
  PROMPT => PROMPT('summarize the changes from the perspective of private aviation {0}', TO_FILE('@docs', 'CELEX_32008R1008_EN_TXT.pdf'))
);

Antwort:

From a private aviation perspective, this EU Regulation 1008/2008 introduces several significant changes that affect
private operators and business aviation:

## Key Changes Affecting Private Aviation:

### **Operating License Requirements**
- **Stricter financial oversight**: Private operators must demonstrate they can meet financial obligations for 24
  months from start of operations, with enhanced monitoring during the first two years
- **Simplified requirements for smaller operators**: Aircraft under 10 tonnes MTOM and/or less than 20 seats need
  only demonstrate €100,000 net capital (unless operating scheduled services or exceeding €3 million turnover)

### **Aircraft Registration and Leasing**
- **Flexible registration**: Private operators can register aircraft either in their home Member State or anywhere within the Community

- **Wet lease restrictions**: Stricter limitations on wet leasing aircraft from third countries, requiring prior
  approval and justification based on:
  - Exceptional needs (up to 7 months, renewable once)
  - Seasonal capacity requirements
  - Operational difficulties when EU-registered aircraft unavailable
- **Safety equivalence**: All third-country leased aircraft must meet equivalent safety standards to EU requirements.

### **Enhanced Supervision**

- **Unified oversight**: The same Member State authority now oversees both the Air Operator Certificate (AOC) and
  operating license, improving efficiency for operators with bases in multiple countries
- **Regular assessments**: Mandatory financial reviews, particularly after two years of operation and when potential
  problems are suspected

### **Insurance Requirements**
- **Extended coverage**: Insurance requirements now explicitly include mail liability coverage in addition to
  passengers, cargo, and third parties

### **Operational Flexibility**
- **Code-sharing freedom**: Private operators can more freely enter into code-share arrangements on intra-Community
  routes and routes to third countries
- **Pricing freedom**: Complete freedom to set fares and rates for intra-Community services

### **Administrative Streamlining**
- **Consolidated regulation**: The three separate regulations are now combined into one comprehensive framework,
  simplifying compliance
- **Reduced bureaucracy**: Member States cannot require documents already provided to licensing authorities

These changes generally **liberalize** private aviation operations within the EU while **strengthening** financial
and safety oversight, creating a more integrated and competitive market for private operators.

Erkundung von technischen Berichten

Erste Seite eines Spezifikationshefts für eine 75-mm-Waffe

Das folgende Beispiel verwendet das Gemini 3 Pro-Modell, um die Einsatz- und Wirkungsdaten zu analysieren, die in den Diagrammen eines technischen Berichts enthalten sind. Das Dokument 75mm-M3-spec-booklet-MK-VI.pdf ist im Stagingbereich @docs gespeichert.

SELECT AI_COMPLETE(
  MODEL => 'gemini-3-pro',
  PROMPT => PROMPT('explain findings from figures 69-73 of {0}', TO_FILE('@docs', '75mm-M3-spec-booklet-MK-VI.pdf'))
);

Antwort:

Based on the provided document, specifically **page 4**, here is an explanation of the findings from Figures 69
through 73. These figures illustrate the fragmentation patterns and effectiveness of the **75-mm Shell, H.E., M48**
when fired from an M3 Gun. They visualize how dangerous the shell is to personnel (casualties) and equipment
(perforation of mild steel) at different burst heights and orientations.

Unterstützte Modelle und Beschränkungen

Alle für Snowflake Cortex verfügbaren Modelle haben eine Beschränkung bei der Gesamtzahl der Eingabe- und Ausgabe-Token, die als Kontextfenster des Modells bezeichnet werden. Die Größe des Kontextfensters wird in Token gemessen. Eingaben, die die Beschränkung des Kontextfensters überschreiten, führen zu einem Fehler.

Bei Textmodellen stehen Token in der Regel für etwa vier Zeichen Text. Die Wortanzahl, die einem Limit entspricht, liegt daher etwas unter dem in Token angegebenen Kontextfenster. Bei Bildmodellen hängt die Anzahl der Token pro Dokument von der Architektur des Visionsmodells ab. Token innerhalb eines Prompts (z. B. „Fasse dieses Dokument zusammen:“) tragen ebenfalls zum Kontextfenster des Modells bei.

Modell

Kontextfenster (Token)

Dateitypen

Dateigröße

Dokumente pro Prompt

gemini-3-pro

1.000.000

.pdf, .txt, .md

10MB, maximal 900 Seiten

20

claude-3-7-sonnet

200,000

.txt, .md, .pdf, .doc, .docx, .xls, .xlsx, .csv, .xhtml

4.5MB

5

claude-4-sonnet

200,000

.txt, .md, .pdf, .doc, .docx, .xls, .xlsx, .csv, .xhtml

4.5MB

5

claude-4-opus

200,000

.txt, .md, .pdf, .doc, .docx, .xls, .xlsx, .csv, .xhtml

4.5MB

5

claude-haiku-4-5

200,000

.txt, .md, .pdf, .doc, .docx, .xls, .xlsx, .csv, .xhtml

4.5MB

5

claude-sonnet-4-5

200,000

.txt, .md, .pdf, .doc, .docx, .xls, .xlsx, .csv, .xhtml

4.5MB

5

claude-opus-4-5

200,000

.txt, .md, .pdf, .doc, .docx, .xls, .xlsx, .csv, .xhtml

4.5MB

5

Anforderungen an die Zugriffssteuerung

Um die Funktion AI_COMPLETE zu verwenden, muss ein Benutzer mit der Rolle ACCOUNTADMIN dem Benutzer, der die Funktion aufruft, die Datenbankrolle SNOWFLAKE.CORTEX_USER erteilen. Siehe Cortex LLM-Berechtigungen für weitere Informationen.

Benutzende müssen auch READ-Zugriff auf den Stagingbereich und die zu verarbeitende Datei haben.

Hinweise zu Kosten

Die Kosten werden anhand Gesamtzahl der verarbeiteten Token bestimmt, nicht anhand der Dateigröße. Beim Hochladen von Dokumenten wird der Textinhalt extrahiert und in Token konvertiert; visuelle Segmente der Seite (Bilder) werden ebenfalls in Token umgewandelt. Die Abrechnung basiert auf der Summe der Eingabetoken (Text plus Bilder, die das Modell liest) und der Ausgabetoken (Text, den das Modell generiert).

Die tatsächliche Anzahl der Token variiert je nach der zugrunde liegenden Architektur eines Modells sowie der Zusammensetzung und Struktur des Dokuments. Inhalte wie dichte Tabellen, Tabellenkalkulationen, strukturierte Daten, Code, wiederholte Kopf- und Fußzeilen oder mit OCR erfasster Text können die Anzahl der Token erhöhen. Umgekehrt können bildintensive Dokumente oder folienbasierte Dokumente mit nur minimalem extrahierbarem Text zu einer geringeren Anzahl von Token führen.

Bemerkung

Die Funktion AI_COUNT_TOKENS unterstützt derzeit keine Dokumenteingaben in multidimensionalen Modellen.

Auswählen eines Modells

Die Benchmark MMLongBench-Doc wird verwendet, um die Fähigkeiten von Modellen bei der multimodalen Verarbeitung und beim Verständnis von Langzeitkontext zu bewerten, einschließlich des Abrufs von Informationen über mehrere Seiten hinweg.

Modell

MMLongBench-Doc-Bewertung

claude-3-5-sonnet

46,8 %

claude-3-7-sonnet

52,8 %

claude-4-sonnet

50,2 %

claude-4-opus

53,0 %

claude-haiku-4-5

48,9 %

claude-sonnet-4-5

61,4 %

claude-opus-4-5

63,8 %

claude-sonnet-4-6

62,3 %

gemini-3-pro

60,5 %

Regionale Verfügbarkeit

Siehe Regionale Verfügbarkeit.

Fehlerbedingungen

Snowflake Cortex AI_COMPLETE kann die folgenden Fehlermeldungen erzeugen:

Meldung

Erläuterung

_COMPLETE_WITH_PROMPT_HISTORY_LLM$V1 with remote service error: 400 „invalid request parameters: unsupported document content type: application/vnd.ms-excel“

Die ausgewählte Datei eines nicht unterstützten Typs (in diesem Beispiel eine Microsoft Excel-Datei). Nur Claude-Modelle unterstützen Excel-Dateien.

Request failed for external function _COMPLETE_WITH_PROMPT_HISTORY_LLM$V1 with remote service error: 400 ‚„invalid request parameters: File data exceeds the limit of 10.00 MB for file prefix/file.pdf“

Die Dateigröße überschreitet das Limit (10MB in diesem Beispiel).

Remote file @docs/file.pdf‘ was not found. There are several potential causes. The file might not exist. The required credentials may be missing or invalid. If you are running a copy command, please make sure files are not deleted when they are being loaded or files are not being loaded into two different tables concurrently with auto purge option.

Möglicherweise ein Fehler im Dateinamen. Bei Dateinamen wird zwischen Groß- und Kleinschreibung unterschieden. Oder die Datei wurde gelöscht.

Fehler in sicherem Objekt

Kann anzeigen, dass der Stagingbereich nicht existiert. Überprüfen Sie den Namen des Stagingbereichs und stellen Sie sicher, dass der Stagingbereich vorhanden und zugänglich ist. Achten Sie darauf, dass Sie am Anfang des Stagingbereichsnamens ein At-Zeichen (@) verwenden. Stellen Sie sicher, dass der Stagingbereich eine serverseitige Verschlüsselung verwendet.

Request failed for external function COMPLETE$V6 with remote service error: 400 ‚„model "model_name" does not support given modality“

Das in der Anforderung angegebene Modell unterstützt keine Dokument- oder Textmodalität.

Request failed for external function _COMPLETE_WITH_PROMPT with remote service error: 500 ‚„internal error“

Problem bei der Verarbeitung der Anforderung auf der Serverseite. Die Datei könnte beschädigt oder abgeschnitten sein.