Funktion für die Verarbeitung natürlicher Sprache auswählen
In diesem Dokument werden die Funktionen zur Verarbeitung natürlicher Sprache in BigQuery ML verglichen: ML.GENERATE_TEXT
, ML.TRANSLATE
und ML.UNDERSTAND_TEXT
.
ML.GENERATE_TEXT
kann Aufgaben ausführen, die auch die anderen beiden Funktionen erledigen können, wie im folgenden Bild dargestellt:
Anhand der Informationen in diesem Dokument können Sie entscheiden, welche Funktion Sie verwenden sollten, wenn sich die Funktionen in ihren Capabilities überschneiden.
Grob gesagt unterscheiden sich diese Funktionen so:
ML.GENERATE_TEXT
eignet sich gut für die kostengünstige Ausführung benutzerdefinierter Natural Language Processing-Aufgaben (NLP). Diese Funktion bietet mehr Sprachunterstützung, einen schnelleren Durchsatz und die Möglichkeit zur Modelloptimierung. Außerdem funktioniert sie mit multimodalen Modellen.ML.TRANSLATE
eignet sich gut für übersetzungsspezifische NLP-Aufgaben, bei denen eine hohe Anzahl von Abfragen pro Minute unterstützt werden muss.ML.UNDERSTAND_TEXT
eignet sich gut für die Ausführung von NLP-Aufgaben, die von der Cloud Natural Language API unterstützt werden.
Unterstützte Modelle
Folgende Modelle werden unterstützt:
ML.GENERATE_TEXT
: Sie können einen Teil des Vertex AI-Modells Gemini oder PaLM verwenden, um Text zu generieren. Weitere Informationen zu unterstützten Modellen finden Sie in der Syntax fürML.GENERATE_TEXT
.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
Folgende Aufgaben werden unterstützt:
ML.GENERATE_TEXT
: Sie können jede NLP-Aufgabe ausführen. Welche Aufgabe das Modell ausführt, hängt vom von Ihnen angegebenen Prompt ab. Wenn Sie beispielsweise eine Aufgabe zur Beantwortung von Fragen ausführen möchten, können Sie einen Prompt ä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
Berücksichtigen Sie bei der Auswahl der Funktion, ob Ihre Daten einzeln analysiert werden können oder ob zusätzlicher Kontext für die Analyse erforderlich ist.
Wenn für Ihre Daten zusätzlicher Kontext erforderlich ist, ist die Verwendung von ML.GENERATE_TEXT
mit einem Vertex AI-Modell die bessere Wahl. Mit diesen Modellen können Sie den Kontext als Teil des eingereichten Prompts angeben. Beachten Sie, dass die Tokenanzahl und die Kosten steigen, wenn Sie zusätzlichen Kontext als Eingabe angeben.
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 in der Ausgabespalte ml_generate_text_llm_result
immer wiederkehrende Ergebnisse zurück. Sie können auch den Prompt 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
liefern für jeden erfolgreichen API-Aufruf die gleiche Ausgabe für einen bestimmten Aufgabentyp. Außerdem enthält die Ausgabe dieser Funktionen zusätzliche Metadaten zu den Ergebnissen. Die Ausgabe von ML.TRANSLATE
enthält beispielsweise Informationen zur Eingabesprache und die Ausgabe von ML.UNDERSTAND_TEXT
enthält Informationen zur Stärke des Sentiments bei Aufgaben der Sentimentanalyse. Die Generierung dieser Metadaten ist mit den Vertex AI-Modellen möglich, erfordert aber umfangreiche Prompt-Entwicklung und ist wahrscheinlich nicht so detailliert.
Preise
Die Kosten werden folgendermaßen berechnet:
ML.GENERATE_TEXT
: Preise für die Vertex AI-Modelle, die Sie mit dieser Funktion verwenden, finden Sie unter Vertex AI-Preise. Die beaufsichtigte Optimierung unterstützter Modelle wird gemäß den Preisen für benutzerdefiniertes Vertex AI-Training in US-Dollar pro Knotenstunde abgerechnet.ML.TRANSLATE
: Die Preise für den Cloud AI-Dienst, den Sie mit dieser Funktion verwenden, finden Sie unter Preise für die Cloud Translation API.ML.UNDERSTAND_TEXT
: Preise für den Cloud-KI-Dienst, den Sie mit dieser Funktion verwenden, finden Sie unter Preise für die Cloud Natural Language API.
Überwachte Abstimmung
Die überwachte Abstimmung wird so unterstützt:
ML.GENERATE_TEXT
: Für einige Modelle wird die überwachte Abstimmung unterstützt.ML.TRANSLATE
: Die überwachte Abstimmung wird nicht unterstützt.ML.UNDERSTAND_TEXT
: Die überwachte Abstimmung wird nicht unterstützt.
Multimodalität
Die Unterstützung für die Multimodalität ist so:
ML.GENERATE_TEXT
: unterstützt die Eingabe von Text und Text + Bild.ML.TRANSLATE
: unterstützt die Texteingabe.ML.UNDERSTAND_TEXT
: unterstützt die Texteingabe.
Limit für Abfragen pro Minute
Die Limits für die Anzahl der Aufrufe pro Minute sind:
ML.GENERATE_TEXT
: variiert je nach verwendetem Modell zwischen 100 und 1.600 QPM in der Standardregionus-central1
.ML.TRANSLATE
: 6.000 Abfragen pro Minute für Version 3.ML.UNDERSTAND_TEXT
: 600 Abfragen pro Minute
Tokenlimit
Die Tokenlimits sind:
ML.GENERATE_TEXT
: Je nach verwendetem Modell liegt die maximale Anzahl von Tokens zwischen 8.192 und 24.576.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 dieselben Sprachen wie Gemini oder Embeddings, je nachdem, welches Vertex AI-Modell Sie für den BigQuery ML-Remote-Modellendpunkt auswählen. Die PaLM-Textmodelle unterstützen dieselben Sprachen wie die Embeddings-Modelle.ML.TRANSLATE
: unterstützt Sprachen der Cloud Translation API.ML.UNDERSTAND_TEXT
: Unterstützt Sprachen der Cloud Natural Language API.
Regionale Verfügbarkeit
Die regionale Verfügbarkeit ist so:
ML.GENERATE_TEXT
: Verfügbar in allen Regionen, in denen generative KI für Vertex AI unterstützt wird.ML.TRANSLATE
: verfügbar in den MultiregionenEU
undUS
.ML.UNDERSTAND_TEXT
: verfügbar in den MultiregionenEU
undUS
.