Para projetar um prompt que funcione bem, teste diferentes versões dele e use parâmetros para determinar o que resulta na resposta ideal. É possível testar comandos de maneira programática com as APIs Codey e no console do Google Cloud com o Vertex AI Studio.
Testar solicitações de chat
Para testar os comandos de código, escolha um dos métodos a seguir.
REST
Para testar um comando de chat de código 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.
- Mensagens: histórico de conversas fornecido ao modelo em um formulário estruturado de autor alternativo. As mensagens aparecem em ordem cronológica: a mais antiga primeiro e a mais recente por último. Quando o histórico de mensagens faz com que a entrada exceda o tamanho máximo, as mensagens mais antigas são removidas até que todo o comando esteja dentro do limite permitido. É necessário que haja um número ímpar de mensagens (pares AUTHOR-CONTENT) para o modelo gerar uma resposta.
- AUTHOR: o autor da mensagem.
- CONTENT: o conteúdo da mensagem.
- TEMPERATURE: a temperatura é usada para amostragem durante a geração da resposta. A temperatura controla o grau de aleatoriedade na seleção do token. Temperaturas mais baixas são boas para solicitações que exigem uma
resposta menos aberta ou criativa, enquanto as mais altas podem levar a resultados mais diversos ou
criativos. Uma temperatura de
0
significa que os tokens de maior probabilidade são sempre selecionados. Nesse caso, as respostas para uma determinada solicitação são, na maioria, deterministas, mas uma pequena quantidade de variação ainda é possível. - MAX_OUTPUT_TOKENS: número máximo de tokens que podem ser gerados na resposta. Um token tem cerca de quatro caracteres. 100 tokens correspondem a cerca de 60 a 80 palavras.
Especifique um valor mais baixo para respostas mais curtas e um valor mais alto para respostas potencialmente mais longas.
- CANDIDATE_COUNT:
o número de variações de resposta a serem retornadas. Para cada solicitação, você paga pelos
tokens de saída de todos os candidatos, mas são cobrados apenas uma vez pelos tokens de entrada.
Especificar vários candidatos é um recurso em fase de pré-lançamento que funciona com
generateContent
(streamGenerateContent
não é compatível). Os seguintes modelos são compatíveis:- Gemini 1.5 Flash:
1
-8
, padrão:1
- Gemini 1.5 Pro:
1
-8
, padrão:1
int
entre 1 e 4. - Gemini 1.5 Flash:
Método HTTP e URL:
POST https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/codechat-bison:predict
Corpo JSON da solicitação:
{ "instances": [ { "messages": [ { "author": "AUTHOR", "content": "CONTENT" } ], "parameters": { "temperature": TEMPERATURE, "maxOutputTokens": MAX_OUTPUT_TOKENS, "candidateCount": CANDIDATE_COUNT } }
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/codechat-bison: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/codechat-bison:predict" | Select-Object -Expand Content
Você receberá uma resposta JSON semelhante a seguinte.
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.
Console
Para testar um comando de chat de código usando o Vertex AI Studio no Console do Google Cloud, faça o seguinte:
- Na seção Vertex AI do console do Google Cloud, acesse o Vertex AI Studio.
- Clique em Começar.
- Clique em Chat com código.
- Em Modelo, selecione o modelo com o nome que começa com
codechat-bison
. Um número de três dígitos depois decodechat-bison
indica o número da versão do modelo. - Ajuste a temperatura e o limite de tokens para testar como eles afetam a resposta. Para mais informações, consulte Parâmetros do modelo de chat de código.
- Em Inserir um comando para iniciar uma conversa, digite um comando para iniciar uma conversa sobre o código.
- Clique em Continuar a conversa para enviar o comando para o chat.
- Depois de receber uma resposta, repita as duas etapas anteriores para continuar a conversa.
- Clique em Salvar se quiser salvar um comando.
- Clique em Conferir código para consultar o código Python ou um comando curl para seu comando.
Exemplo de solicitação de chat por código
MODEL_ID="codechat-bison"
PROJECT_ID=PROJECT_ID
curl \
-X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/us-central1/publishers/google/models/${MODEL_ID}:predict -d \
$"{
'instances': [
{
'messages': [
{
'author': 'user',
'content': 'Hi, how are you?',
},
{
'author': 'system',
'content': 'I am doing good. What Can I help you with in the coding world?',
},
{
'author': 'user',
'content': 'Please help write a function to calculate the min of two numbers',
}
]
}
],
'parameters': {
'temperature': 0.2,
'maxOutputTokens': 1024,
'candidateCount': 1
}
}"
Para saber mais sobre como projetar comandos de bate-papo, consulte Comandos de bate-papo.
Resposta de stream do modelo de chat de código
Para conferir exemplos de solicitações de código e respostas usando a API REST, consulte Exemplos usando a API REST de streaming.
Para conferir exemplos de código de solicitações e respostas usando o SDK da Vertex AI para Python, consulte Exemplos que usam o SDK da Vertex AI para Python para streaming.
A seguir
- Saiba como criar comandos de preenchimento de código.
- Saiba como criar comandos de geração de código.
- Saiba mais sobre as práticas recomendadas de IA responsável e os filtros de segurança da Vertex AI.