Nesta página, mostramos como criar uma instância da Example Store ou reutilizar uma instância existente. Você pode armazenar seus exemplos em um repositório de exemplos ao desenvolver seu aplicativo de LLM e recuperá-los dinamicamente para usar nos comandos do LLM.
Para ensinar um LLM ou um agente usando exemplos de few-shot, primeiro crie ou reutilize uma instância da Example Store para seu projeto e local e depois faça upload de exemplos para ela.
Para cada projeto e local, é possível ter no máximo 50 instâncias da loja de exemplos. Depois de criar uma instância da Example Store, você pode compartilhá-la em vários aplicativos e agentes de LLM.
Há duas maneiras de provisionar uma instância da loja de exemplo:
Criar uma nova instância da Example Store: ao criar uma instância da Example Store, você precisa especificar o modelo de incorporação, que a Example Store usa para determinar quais exemplos são relevantes para as consultas dos usuários. A loja de exemplos é compatível com os seguintes modelos de embedding:
text-embedding-005
text-multilingual-embedding-002
Não é possível mudar um modelo de incorporação depois de criar a instância da loja de exemplos. Se quiser usar um modelo de incorporação diferente, crie outra loja de exemplos. Para mais informações sobre embeddings de texto, consulte Receber embeddings de texto.
Reutilize uma instância da Example Store: as instâncias da Example Store são projetadas para serem usadas por vários agentes. Assim, é possível acessar os exemplos armazenados em aplicativos de LLM. Não é possível mudar o modelo de embedding ao reutilizar uma instância da Example Store.
Pré-requisitos
Antes de usar os exemplos em Python nesta página, instale e inicialize o SDK da Vertex AI para Python no ambiente Python local.
Execute o seguinte comando para instalar o SDK da Vertex AI para Python da Example Store.
pip install --upgrade google-cloud-aiplatform>=1.87.0
Use o exemplo de código a seguir para importar e inicializar o SDK da Example Store.
import vertexai from vertexai.preview import example_stores vertexai.init( project="PROJECT_ID", location="LOCATION" )
Substitua:
PROJECT_ID: o ID do projeto.
LOCATION: sua região. Somente
us-central1
é aceito.
Criar uma instância da loja de exemplo
Use os exemplos a seguir para criar uma instância da Example Store para um projeto e local especificados. A criação de uma instância da Example Store leva alguns minutos.
Python
Antes de testar esse exemplo, siga as instruções de configuração para Python no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Python.
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.
import vertexai
from vertexai.preview import example_stores
vertexai.init(
project="PROJECT_ID",
location="LOCATION"
)
my_example_store = example_stores.ExampleStore.create(
example_store_config=example_stores.ExampleStoreConfig(
vertex_embedding_model="EMBEDDING_MODEL"
)
)
Substitua:
- PROJECT_ID: o ID do projeto.
- LOCATION: a região em que você quer criar a loja de exemplo. A única região compatível é
us-central1
. - EMBEDDING_MODEL: modelo de embedding que a instância da loja de exemplos usa para determinar quais exemplos são relevantes para as consultas dos usuários. A loja de exemplos é compatível com os seguintes modelos de embedding:
text-embedding-004
text-multilingual-embedding-002
REST
Para criar um recurso ExampleStore
, envie uma solicitação POST
usando o método exampleStores.create
.
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
- PROJECT_ID: o ID do projeto.
- LOCATION: a região em que você quer criar a instância da
Example Store. A única região compatível é
us-central1
. - DISPLAY_NAME: o nome da instância da loja de exemplo.
- EMBEDDING_MODEL: modelo de embedding que a instância da loja de exemplos usa para determinar quais exemplos são relevantes para as consultas dos usuários. A loja de exemplos é compatível com os seguintes modelos de embedding:
textembedding-gecko@003
text-embedding-004
text-multilingual-embedding-002
Método HTTP e URL:
POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/exampleStores
Corpo JSON da solicitação:
{ "display_name": "DISPLAY_NAME", "example_store_config": {"vertex_embedding_model": EMBEDDING_MODEL} }
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://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/exampleStores"
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://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/exampleStores" | Select-Object -Expand Content
Você vai receber uma resposta JSON semelhante a esta, em que EXAMPLE_STORE_ID representa o ID da instância da Example Store.
Reutilizar uma instância da Example Store
Use o exemplo a seguir para reutilizar uma instância da loja de exemplo em um projeto e local especificados.
Python
Antes de testar esse exemplo, siga as instruções de configuração para Python no Guia de início rápido da Vertex AI sobre como usar bibliotecas de cliente. Para mais informações, consulte a documentação de referência da API Vertex AI para Python.
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.
import vertexai
from vertexai.preview import example_stores
vertexai.init(
project="PROJECT_ID",
location="LOCATION"
)
example_store = example_stores.ExampleStore(
"EXAMPLE_STORE_NAME")
Substitua:
- PROJECT_ID: o ID do projeto.
- LOCATION: a região em que você quer criar a loja de exemplo. A única região compatível é
us-central1
. - EXAMPLE_STORE_NAME: Nome da instância da Example Store que você quer reutilizar.