Embeddings de texto (text-embedding-004
) são o nome do modelo que suporta embeddings de texto.
Os embeddings de texto são uma técnica de PLN que converte dados textuais em vetores
numéricos que podem ser processados por algoritmos de aprendizado de máquina,
especialmente modelos grandes. Essas representações vetoriais são projetadas para capturar o significado
semântico e o contexto das palavras que representam.
Há algumas versões disponíveis para embeddings. text-embedding-004
é o modelo de embedding estável mais recente com qualidade de IA aprimorada, e text-multilingual-embedding-002
é um modelo otimizado para vários idiomas diferentes do inglês.
Para conferir esse modelo no console, consulte o Embeddings para card de modelo de texto no
Model Garden.
Acessar o Model Garden
Casos de uso
Pesquisa semântica: embeddings de texto podem ser usados para representar a consulta do usuário e o universo de documentos em um espaço vetorial de alta dimensão. Os documentos que são semanticamente semelhantes à consulta do usuário terão uma distância menor no espaço vetorial e poderão ter uma classificação mais alta nos resultados da pesquisa.
Classificação de texto: como treinar um modelo que mapeia os embeddings de texto para os rótulos de categoria corretos (por exemplo, gato versus cachorro, spam versus não spam). Depois que o modelo é treinado, ele pode ser usado para classificar novas entradas de texto em uma ou mais categorias com base nos embeddings delas.
Idiomas de texto compatíveis
Todos os modelos de embedding de texto são compatíveis e foram avaliados em inglês
de texto. Os parâmetros textembedding-gecko-multilingual@001
e
Os modelos text-multilingual-embedding-002
também oferecem suporte
avaliados nos seguintes idiomas:
- Idiomas avaliados:
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)
- Idiomas disponíveis:
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
.
Solicitação HTTP
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/textembedding-gecko:predict
Versões do modelo
Para usar uma versão de modelo estável, especifique o número da versão de modelo, por exemplo, text-embedding-004
.
Cada versão estável está disponível por seis meses após a data de lançamento da
versão estável subsequente.
A tabela a seguir contém as versões de modelo estável disponíveis:
modelo textembedding-gecko | Data da versão | Data de desativação |
---|---|---|
textembedding-gecko@003 | 12 de dezembro de 2023 | 14 de maio de 2025 |
textembedding-gecko@002 | 2 de novembro de 2023 | 9 de outubro de 2024 |
textembedding-gecko-multilingual@001 | 2 de novembro de 2023 | 14 de maio de 2025 |
textembedding-gecko@001 | 7 de junho de 2023 | 9 de outubro de 2024 |
text-embedding-004 | 14 de maio de 2024 | Não relevante |
text-multilingual-embedding-002 | 14 de maio de 2024 | Não relevante |
Para mais informações, consulte Versões e ciclo de vida do modelo.
Corpo da solicitação
{
"instances": [
{
"task_type": "RETRIEVAL_DOCUMENT",
"title": "document title",
"content": "I would like embeddings for this text!"
},
]
}
A API de embedding de PaLM da Vertex Generative AI executa previsões on-line (em tempo real) para receber embeddings do texto de entrada.
A API aceita no máximo 3.072 tokens de entrada e gera embeddings de vetores
com 768 dimensões. Use os parâmetros a seguir para o modelo de embeddings de texto textembedding-gecko
.
Para mais informações, consulte Visão geral de embeddings de texto.
Parâmetro | Descrição | Valores aceitáveis |
---|---|---|
|
O texto que você quer gerar embeddings. | Texto |
|
O parâmetro "task_type" é definido como o aplicativo downstream pretendido para ajudar o modelo a produzir embeddings de melhor qualidade. É uma string que pode assumir um dos seguintes valores. | RETRIEVAL_QUERY , RETRIEVAL_DOCUMENT , SEMANTIC_SIMILARITY , CLASSIFICATION , CLUSTERING , QUESTION_ANSWERING , FACT_VERIFICATION .
|
|
O título do embedding. | Texto |
Exemplo de solicitação
REST
Para testar um prompt de texto usando a API Vertex AI, envie uma solicitação POST para o endpoint do modelo do editor.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto.
- TEXT: o texto para o qual você quer gerar embeddings.
Método HTTP e URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/textembedding-gecko@003:predict
Corpo JSON da solicitação:
{ "instances": [ { "content": "TEXT"} ], }
Para enviar a solicitação, escolha uma destas opções:
curl
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
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/textembedding-gecko@003:predict"
PowerShell
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$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/textembedding-gecko@003:predict" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante à amostra de resposta.
Python
Para saber como instalar o SDK da Vertex AI para Python, consulte Instalar o SDK da Vertex AI para Python. Para mais informações, consulte a documentação de referência da API Python.
Node.js
Antes de testar essa amostra, siga as instruções de configuração para Node.js Guia de início rápido da Vertex AI: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Node.js.
Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Java
Antes de testar essa amostra, siga as instruções de configuração para Java Guia de início rápido da Vertex AI: como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Java.
Para autenticar na Vertex AI, configure o Application Default Credentials. Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
Corpo da resposta
{
"predictions": [
{
"embeddings": {
"statistics": {
"truncated": boolean,
"token_count": integer
},
"values": [ number ]
}
}
]
}
Elemento de resposta | Descrição |
---|---|
embeddings |
O resultado gerado a partir do texto de entrada. |
statistics |
As estatísticas calculadas a partir do texto de entrada. |
truncated |
Indica se o texto de entrada era maior que o número máximo permitido de tokens e truncados. |
tokenCount |
Número de tokens do texto de entrada. |
values |
O campo values contém os vetores de embedding correspondentes às palavras no texto de entrada. |
Exemplo de resposta
{
"predictions": [
{
"embeddings": {
"values": [
0.0058424929156899452,
0.011848051100969315,
0.032247550785541534,
-0.031829461455345154,
-0.055369812995195389,
...
],
"statistics": {
"token_count": 4,
"truncated": false
}
}
}
]
}