Funktion für Natural Language Processing auswählen
In diesem Dokument werden die Natural Language Processing-Funktionen verglichen, die in BigQuery ML verfügbar sind: ML.GENERATE_TEXT
, ML.TRANSLATE
und
ML.UNDERSTAND_TEXT
.
ML.GENERATE_TEXT
kann Aufgaben ausführen, die auch die anderen beiden Funktionen ausführen können, wie in der folgenden Abbildung dargestellt:
Anhand der Informationen in diesem Dokument können Sie entscheiden, welche Funktion Sie verwenden sollten, wenn sich die Funktionen in ihren Capabilities überschneiden.
Auf übergeordneter Ebene unterscheiden sich diese Funktionen in folgender Weise:
ML.GENERATE_TEXT
ist eine gute Wahl, um benutzerdefinierte NLP-Aufgaben (Natural Language Processing) zu geringeren Kosten auszuführen. Diese Funktion bietet mehr Sprachunterstützung, einen schnelleren Durchsatz und eine Funktion zur Modelloptimierung und funktioniert auch mit multimodalen Modellen.ML.TRANSLATE
ist eine gute Wahl für übersetzungsspezifische NLP-Aufgaben, bei denen Sie eine hohe Rate von Abfragen pro Minute unterstützen müssen.ML.UNDERSTAND_TEXT
ist eine gute Wahl für NLP-Aufgaben, die von der Cloud Natural Language API unterstützt werden.
Unterstützte Modelle
Die folgenden Modelle werden unterstützt:
ML.GENERATE_TEXT
: Sie können eine Teilmenge des Vertex AI Gemini- oder PaLM-Modells verwenden, um Text zu generieren. Weitere Informationen zu unterstützten Modellen finden Sie in derML.GENERATE_TEXT
-Syntax.ML.TRANSLATE
: Sie verwenden das Standardmodell der Cloud Translation API.ML.UNDERSTAND_TEXT
: Sie verwenden das Standardmodell der Cloud Natural Language API.
Unterstützte Aufgaben
Unterstützte Aufgaben sind:
ML.GENERATE_TEXT
: Sie können jede NLP-Aufgabe ausführen. Welche Aufgabe das Modell ausführt, hängt von der von Ihnen angegebenen Eingabeaufforderung ab. Wenn Sie beispielsweise eine Aufgabe zur Beantwortung von Fragen ausführen möchten, können Sie eine Eingabeaufforderung ähnlich wieCONCAT("What are the key concepts in the following article?: ", article_text)
angeben. Sie können auch Kontext als Teil des Prompts angeben. Beispiel:CONCAT("context: Only output 'yes' or 'no' to the following question: ", question)
.ML.TRANSLATE
: Sie können die folgenden Aufgaben ausführen:ML.UNDERSTAND_TEXT
: Sie können die folgenden Aufgaben ausführen:
Datenkontext
Überlegen Sie bei der Auswahl der zu verwendenden Funktion, ob Ihre Daten isoliert analysiert werden können oder ob zusätzlicher Kontext zur Unterstützung der Analyse erforderlich ist.
Wenn Ihre Daten zusätzlichen Kontext erfordern, ist die Verwendung von ML.GENERATE_TEXT
mit einem Vertex AI-Modell die bessere Wahl, da Sie mit diesen Modellen Kontext als Teil des von Ihnen gesendeten Prompts angeben können. Beachten Sie, dass durch die Bereitstellung von zusätzlichem Kontext bei der Eingabe die Anzahl der Tokens und die Kosten erhöht werden.
Wenn Ihre Daten analysiert werden können, ohne dass ein anderer Kontext vom Modell berücksichtigt wird (z. B. die Übersetzung eines Textstrings, ohne zu wissen, warum sie geschrieben wurde), könnte die Verwendung von ML.TRANSLATE
oder ML.UNDERSTAND_TEXT
eine bessere Wahl zu sein, vorausgesetzt, die gewünschte Aufgabe wird unterstützt.
Ausgabestruktur
ML.GENERATE_TEXT
gibt konsistent Ergebnisse in der Ausgabespalte ml_generate_text_llm_result
zurück. Sie können auch die Eingabeaufforderung verwenden, um die Ausgabestruktur zu definieren. Beispielsweise können Sie das Modell anweisen, Ihr Ergebnis als JSON mit benutzerdefinierten übergeordneten und untergeordneten Feldern zurückzugeben, und geben Sie ein Beispiel für diese Anleitung dieses Ergebnis an.
ML.TRANSLATE
und ML.UNDERSTAND_TEXT
erzeugen für jeden erfolgreichen Aufruf an die API dieselbe Ausgabe für einen bestimmten Aufgabentyp. Darüber hinaus enthält die Ausgabe dieser Funktionen zusätzliche Metadaten zu den Ergebnissen. Die ML.TRANSLATE
-Ausgabe enthält beispielsweise Informationen über die Eingabesprache und die ML.UNDERSTAND_TEXT
-Ausgabe enthält Informationen über den Grad der Stimmung in Sentimentanalyseaufgaben. Das Generieren dieser Metadaten ist mit den Vertex AI-Modellen möglich, aber dies erfordert ein erhebliches Prompt Engineering und bietet wahrscheinlich nicht dieselbe Granularität.
Preise
Die Kosten werden folgendermaßen berechnet:
ML.GENERATE_TEXT
: 0,00025 $ pro 1.000 Zeichen für Palm2-Modelle und 0,000375 $ pro 1.000 Zeichen für Gemini 1.0-Modelle. Die überwachte Abstimmung unterstützter Modelle wird zu US-Dollar pro Knotenstunde zu den Preisen für benutzerdefiniertes Vertex AI-Training abgerechnet. Weitere Informationen finden Sie unter Vertex AI-Preise.ML.TRANSLATE
: 0,02 $ pro 1000 Zeichen. Weitere Informationen finden Sie unter Preise für die Cloud Translation API.ML.UNDERSTAND_TEXT
: beginnt bei 0,001 $pro 1.000 Zeichen, je nach Aufgabentyp und Nutzung. Weitere Informationen finden Sie unter Cloud Natural Language API – Preise.
Modelltraining
Die Unterstützung für benutzerdefinierte Trainings sieht so aus:
ML.GENERATE_TEXT
: Die überwachte Abstimmung wird für einige Modelle unterstützt.ML.TRANSLATE
: Benutzerdefiniertes Training wird nicht unterstützt.ML.UNDERSTAND_TEXT
: Benutzerdefiniertes Training wird nicht unterstützt.
Multimodalitäten
So wird Multimodalitäten unterstützt:
ML.GENERATE_TEXT
: unterstützt Text- und Text- und Bildeingabe.ML.TRANSLATE
: Unterstützt die Texteingabe.ML.UNDERSTAND_TEXT
: Unterstützt die Texteingabe.
Limit für Abfragen pro Minute
Für die QPM gelten folgende Limits:
ML.GENERATE_TEXT
: reicht von einem Limit von 100 bis 1.600 QPM in der Standardregionus-central1
, je nach verwendetem Modell.ML.TRANSLATE
: 6.000 QPM Limit für v3.ML.UNDERSTAND_TEXT
: Limit von 600 QPM.
Tokenlimit
Es gelten die folgenden Token-Limits:
ML.GENERATE_TEXT
: reicht von einem 8.192- bis zu 24.576 Tokenlimit, je nach verwendetem Modell.ML.TRANSLATE
: Kein Tokenlimit. Für diese Funktion gilt jedoch ein Limit von 30.000 Byte.ML.UNDERSTAND_TEXT
: Tokenlimit von 100.000.
Unterstützte Sprachen
Folgende Sprachen werden unterstützt:
ML.GENERATE_TEXT
: unterstützt generative KI für Vertex AI-Sprachen.ML.TRANSLATE
: unterstützt Sprachen der Cloud Translation API.ML.UNDERSTAND_TEXT
: unterstützt Cloud Natural Language API-Sprachen.
Regionale Verfügbarkeit
Die Verfügbarkeit nach Region ist:
ML.GENERATE_TEXT
: verfügbar in allen Regionen für generative KI für Vertex AI.ML.TRANSLATE
: verfügbar in den MultiregionenEU
undUS
.ML.UNDERSTAND_TEXT
: verfügbar in den MultiregionenEU
undUS
.