In diesem Leitfaden erfahren Sie, wie Sie mit der Text Embeddings API Text in numerische Vektoren umwandeln. In diesem Dokument werden folgende Themen behandelt: Die Text Embeddings API wandelt Text in numerische Vektoren um, die als Einbettungen bezeichnet werden. Diese Vektordarstellungen erfassen die semantische Bedeutung und den Kontext des Texts. Unterstützte Modelle: Sie können Texteinbettungen mit den folgenden Modellen abrufen: Für eine hervorragende Einbettungsqualität ist In der folgenden Tabelle werden die Beispielantwort Das folgende Beispiel zeigt, wie Sie das Embedding für einen Textstring abrufen.
Nachdem Sie Ihre Umgebung eingerichtet haben, können Sie mit REST einen Text-Prompt testen. Im folgenden Beispiel wird eine Anfrage an den Publisher gesendet
Modellendpunkt zu erstellen.
Ersetzen Sie diese Werte in den folgenden Anfragedaten: HTTP-Methode und URL: JSON-Text der Anfrage: Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:
Speichern Sie den Anfragetext in einer Datei mit dem Namen
Speichern Sie den Anfragetext in einer Datei mit dem Namen Sie sollten eine JSON-Antwort ähnlich wie diese erhalten: Beachten Sie, dass Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren.
Weitere Informationen finden Sie in der
Python-API-Referenzdokumentation.
Bevor Sie dieses Beispiel anwenden, folgen Sie den Go-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken.
Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Go API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein.
Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Bevor Sie dieses Beispiel anwenden, folgen Sie den Java-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken.
Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Java API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein.
Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Bevor Sie dieses Beispiel anwenden, folgen Sie den Node.js-Einrichtungsschritten in der Vertex AI-Kurzanleitung zur Verwendung von Clientbibliotheken.
Weitere Informationen finden Sie in der Referenzdokumentation zur Vertex AI Node.js API.
Richten Sie zur Authentifizierung bei Vertex AI Standardanmeldedaten für Anwendungen ein.
Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.
Alle Modelle für die Texteinbettung werden unterstützt und wurden in englischer Sprache bewertet. Das Modell Das Modell Wenn Sie ein aktuelles stabiles Modell verwenden möchten, geben Sie die Modellversionsnummer an, z. B. Es wird nicht empfohlen, ein Modell ohne Versionsnummer anzugeben, da es sich um einen Legacy-Zeiger auf ein anderes Modell handelt und nicht stabil ist. Weitere Informationen finden Sie unter Modellversionen und Lebenszyklus. Weitere Informationen zu Texteinbettungen:
Modellname
Beschreibung
Ausgabeabmessungen
Maximale Sequenzlänge
Unterstützte Textsprachen
gemini-embedding-001
Hervorragende Leistung bei Aufgaben in englischer Sprache, mehrsprachigen Aufgaben und Code-Aufgaben. Es vereint die bisherigen spezialisierten Modelle wie
text-embedding-005
und text-multilingual-embedding-002
und erzielt in den jeweiligen Bereichen eine bessere Leistung. Weitere Informationen finden Sie in unserem technischen Bericht.Bis zu 3.072
2.048 Tokens
Unterstützte Textsprachen
text-embedding-005
Spezialisiert auf Aufgaben in englischer Sprache und Code.
Bis zu 768
2.048 Tokens
Englisch
text-multilingual-embedding-002
Spezialisiert auf mehrsprachige Aufgaben.
Bis zu 768
2.048 Tokens
Unterstützte Textsprachen
gemini-embedding-001
unser großes Modell, das für höchste Leistung entwickelt wurde. gemini-embedding-001
unterstützt eine Instanz pro Anfrage.Syntax
curl
PROJECT_ID = PROJECT_ID
REGION = us-central1
MODEL_ID = MODEL_ID
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://${REGION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/publishers/google/models/${MODEL_ID}:predict -d \
'{
"instances": [
...
],
"parameters": {
...
}
}'
Python
PROJECT_ID = PROJECT_ID
REGION = us-central1
MODEL_ID = MODEL_ID
import vertexai
from vertexai.language_models import TextEmbeddingModel
vertexai.init(project=PROJECT_ID, location=REGION)
model = TextEmbeddingModel.from_pretrained(MODEL_ID)
embeddings = model.get_embeddings(...)
Anfrage und Antwort
Anfragetext
{
"instances": [
{
"task_type": "RETRIEVAL_DOCUMENT",
"title": "document title",
"content": "I would like embeddings for this text!"
},
]
}
Anfrageparameter
instances
: erforderlich. Eine Liste von Objekten, die den einzubettenden Text enthalten. Die folgenden Felder werden unterstützt:
content
(string
): Der Text, für den Einbettungen generiert werden sollen.task_type
(string
): Optional. Gibt die beabsichtigte nachgelagerte Anwendung an, um dem Modell zu helfen, Einbettungen mit höherer Qualität zu erstellen. Wenn Sie keinen Wert angeben, ist der Standardwert RETRIEVAL_QUERY
. Weitere Informationen zu Aufgabentypen finden Sie unter Aufgabentyp für Einbettungen auswählen.title
(string
): Optional. Ein Titel für den Textinhalt. Dieses Feld gilt nur, wenn task_type
RETRIEVAL_DOCUMENT
ist.parameters
: Optional. Ein Objekt mit den folgenden Feldern:
autoTruncate
(bool
): Wenn true
, wird der eingegebene Text gekürzt, wenn er länger als die maximale Länge des Modells ist. Wenn false
, wird für eine zu große Eingabe ein Fehler zurückgegeben. Der Standardwert ist true
.outputDimensionality
(int
): Die gewünschte Einbettungsgröße. Wenn festgelegt, werden die Ausgabeeinbettungen auf diese Dimension gekürzt.Aufgabentypen
task_type
-Parameterwerte und ihre Anwendungsfälle beschrieben:
task_type
Beschreibung
Anwendungsfall
RETRIEVAL_QUERY
Der eingegebene Text ist eine Anfrage in einer Such- oder Abrufeinstellung.
Wird für den Abfragetext verwendet, wenn in einer Sammlung von Dokumenten gesucht wird.
RETRIEVAL_DOCUMENT
für die Dokumente koppeln.
RETRIEVAL_DOCUMENT
Der eingegebene Text ist ein Dokument in einer Such- oder Abrufeinstellung.
Wird für die Dokumente in einer Sammlung verwendet, in denen gesucht werden soll. Kombiniere
RETRIEVAL_QUERY
mit der Suchanfrage.
SEMANTIC_SIMILARITY
Der Eingabetext wird für die semantische Textähnlichkeit (Semantic Textual Similarity, STS) verwendet.
Zwei Textteile vergleichen, um ihre semantische Ähnlichkeit zu ermitteln.
CLASSIFICATION
Die Einbettung wird für Klassifizierungsaufgaben verwendet.
Ein Modell trainieren, um Text in vordefinierte Klassen zu kategorisieren.
CLUSTERING
Die Einbettung wird für Clustering-Aufgaben verwendet.
Ähnliche Texte ohne vordefinierte Labels gruppieren.
QUESTION_ANSWERING
Der Eingabetext ist eine Anfrage für ein Frage-Antwort-System.
Antworten auf Fragen in einer Reihe von Dokumenten finden. Verwenden Sie
RETRIEVAL_DOCUMENT
für die Dokumente.
FACT_VERIFICATION
Der Eingabetext ist eine Behauptung, die anhand einer Reihe von Dokumenten überprüft werden soll.
Überprüfung der Richtigkeit einer Aussage Verwenden Sie
RETRIEVAL_DOCUMENT
für die Dokumente.
CODE_RETRIEVAL_QUERY
Der Eingabetext ist eine Anfrage zum Abrufen relevanter Code-Snippets (Java und Python).
Eine Codebasis nach relevanten Funktionen oder Snippets durchsuchen. Verwenden Sie
RETRIEVAL_DOCUMENT
für die Codedokumente.
task_type=RETRIEVAL_QUERY
für den Eingabetext, der eine Suchanfrage ist.task_type=RETRIEVAL_DOCUMENT
für den Eingabetext, der Teil der Dokumentsammlung ist, die durchsucht wird.
task_type=SEMANTIC_SIMILARITY
für beide Eingabetexte, um ihre allgemeine Bedeutungsähnlichkeit zu bestimmen.SEMANTIC_SIMILARITY
ist nicht für Abrufanwendungsfälle wie die Dokumentsuche und den Informationsabruf vorgesehen. Verwenden Sie für diese Anwendungsfälle RETRIEVAL_DOCUMENT
, RETRIEVAL_QUERY
, QUESTION_ANSWERING
und FACT_VERIFICATION
.Antworttext
{
"predictions": [
{
"embeddings": {
"statistics": {
"truncated": boolean,
"token_count": integer
},
"values": [ number ]
}
}
]
}
Antwortparameter
predictions
: Eine Liste von Objekten, wobei jedes Objekt einer Eingabeinstanz aus der Anfrage entspricht. Jedes Objekt enthält das folgende Feld:
embeddings
: Die aus dem Eingabetext generierte Einbettung. Sie enthält die folgenden Felder:
values
: Eine Liste von Gleitkommazahlen, die den Einbettungsvektor des Eingabetexts darstellt.statistics
: Die Statistiken, die aus dem Eingabetext berechnet wurden. Sie enthält die folgenden Felder:
truncated
(bool
): true
, wenn der Eingabetext gekürzt wurde, weil er länger als die maximale Anzahl von Tokens war, die vom Modell zugelassen werden.token_count
(int
): Die Anzahl der Tokens im Eingabetext.{
"predictions": [
{
"embeddings": {
"values": [
0.0058424929156899452,
0.011848051100969315,
0.032247550785541534,
-0.031829461455345154,
-0.055369812995195389,
...
],
"statistics": {
"token_count": 4,
"truncated": false
}
}
}
]
}
Beispiele
Textstring einbetten
REST
textembedding-gecko@001
. Die maximale Länge des Eingabetokens für textembedding-gecko@001
beträgt 3.072. Für gemini-embedding-001
kann jede Anfrage nur einen einzelnen Eingabetext enthalten. Weitere Informationen finden Sie unter Limits für Texteinbettungen.
false
gesetzt, schlägt Text, der das Tokenlimit überschreitet, fehl. Der Standardwert ist true
.POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/gemini-embedding-001:predict
{
"instances": [
{ "content": "TEXT"}
],
"parameters": {
"autoTruncate": AUTO_TRUNCATE
}
}
curl
request.json
und führen Sie den folgenden Befehl aus:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/gemini-embedding-001:predict"PowerShell
request.json
und führen Sie den folgenden Befehl aus:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/gemini-embedding-001:predict" | Select-Object -Expand Contentvalues
gekürzt wurde, um Speicherplatz zu sparen.
generateContent
können Sie anfordern, dass die Antwort zurückgegeben wird, nachdem sie vollständig generiert wurde.
Um die Wahrnehmung von Latenz für menschliche Zielgruppen zu verringern, streame die Antwort, während sie
mithilfe der Methode
streamGenerateContent
erzeugt wird.
gemini-2.0-flash
). Dieses Beispiel unterstützt möglicherweise auch andere Modelle.
Python
Go
Java
Node.js
Unterstützte Textsprachen
text-multilingual-embedding-002
unterstützt auch die folgenden Sprachen. Es wurde für die Sprachen in der Liste Bewertete Sprachen ausgewertet.
Arabic (ar)
, Bengali (bn)
, English (en)
,
Spanish (es)
, German (de)
, Persian (fa)
, Finnish (fi)
, French (fr)
,
Hindi (hi)
, Indonesian (id)
, Japanese (ja)
, Korean (ko)
,
Russian (ru)
, Swahili (sw)
, Telugu (te)
, Thai (th)
, Yoruba (yo)
,
Chinese (zh)
Afrikaans
, Albanian
, Amharic
, Arabic
,
Armenian
, Azerbaijani
, Basque
, Belarusiasn
, Bengali
, Bulgarian
,
Burmese
, Catalan
, Cebuano
, Chichewa
, Chinese
, Corsican
, Czech
,
Danish
, Dutch
, English
, Esperanto
, Estonian
, Filipino
, Finnish
,
French
, Galician
, Georgian
, German
, Greek
, Gujarati
,
Haitian Creole
, Hausa
, Hawaiian
, Hebrew
, Hindi
, Hmong
,
Hungarian
, Icelandic
, Igbo
, Indonesian
, Irish
, Italian
,
Japanese
, Javanese
, Kannada
, Kazakh
, Khmer
, Korean
, Kurdish
,
Kyrgyz
, Lao
, Latin
, Latvian
, Lithuanian
, Luxembourgish
,
Macedonian
, Malagasy
, Malay
, Malayalam
, Maltese
, Maori
, Marathi
,
Mongolian
, Nepali
, Norwegian
, Pashto
, Persian
, Polish
,
Portuguese
, Punjabi
, Romanian
, Russian
, Samoan
, Scottish Gaelic
,
Serbian
, Shona
, Sindhi
, Sinhala
, Slovak
, Slovenian
, Somali
,
Sotho
, Spanish
, Sundanese
, Swahili
, Swedish
, Tajik
, Tamil
,
Telugu
, Thai
, Turkish
, Ukrainian
, Urdu
, Uzbek
, Vietnamese
,
Welsh
, West Frisian
, Xhosa
, Yiddish
, Yoruba
, Zulu
.gemini-embedding-001
unterstützt die folgenden Sprachen:Arabic
, Bengali
, Bulgarian
, Chinese (Simplified and Traditional)
, Croatian
, Czech
, Danish
, Dutch
, English
, Estonian
, Finnish
, French
, German
, Greek
, Hebrew
, Hindi
, Hungarian
, Indonesian
, Italian
, Japanese
, Korean
, Latvian
, Lithuanian
, Norwegian
, Polish
, Portuguese
, Romanian
, Russian
, Serbian
, Slovak
, Slovenian
, Spanish
, Swahili
, Swedish
, Thai
, Turkish
, Ukrainian
, Vietnamese
, Afrikaans
, Amharic
, Assamese
, Azerbaijani
, Belarusian
, Bosnian
, Catalan
, Cebuano
, Corsican
, Welsh
, Dhivehi
, Esperanto
, Basque
, Persian
, Filipino (Tagalog)
, Frisian
, Irish
, Scots Gaelic
, Galician
, Gujarati
, Hausa
, Hawaiian
, Hmong
, Haitian Creole
, Armenian
, Igbo
, Icelandic
, Javanese
, Georgian
, Kazakh
, Khmer
, Kannada
, Krio
, Kurdish
, Kyrgyz
, Latin
, Luxembourgish
, Lao
, Malagasy
, Maori
, Macedonian
, Malayalam
, Mongolian
, Meiteilon (Manipuri)
, Marathi
, Malay
, Maltese
, Myanmar (Burmese)
, Nepali
, Nyanja (Chichewa)
, Odia (Oriya)
, Punjabi
, Pashto
, Sindhi
, Sinhala (Sinhalese)
, Samoan
, Shona
, Somali
, Albanian
, Sesotho
, Sundanese
, Tamil
, Telugu
, Tajik
, Uyghur
, Urdu
, Uzbek
, Xhosa
, Yiddish
, Yoruba
, Zulu
.Modellversionen
gemini-embedding-001
.Nächste Schritte
Texteinbettungs-API
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-08-19 (UTC).