Antes de começar
Para simular e avaliar o comportamento do agente, verifique se você concluiu o seguinte:
- Crie uma versão do agente: a simulação exige um snapshot imutável da configuração do agente, incluindo instruções do sistema, ferramentas, modelo etc. Crie pelo menos uma versão do agente no Registro de agentes.
- Inicialize o SDK: se você planeja executar a simulação de forma programática, instale o SDK da Agent Platform e inicialize o cliente conforme descrito em Avaliar seus agentes.
Com a simulação, é possível criar um pacote de avaliação abrangente do zero, mesmo sem dados de produção. Esse processo usa LLMs para gerar automaticamente casos de teste e simular um usuário para testar a lógica de conversa de várias rodadas do seu agente.
O fluxo de trabalho de simulação em duas etapas
O teste de um novo agente geralmente segue um processo de duas etapas:
Gerar cenários:crie um conjunto de dados de "especificações de teste" com base nas instruções do seu agente e nas definições de ferramentas.
Simular sessões:execute essas especificações fazendo com que um usuário simulado interaja com seu agente para produzir rastreamentos de comportamento. Um rastreamento é um registro factual e imutável do comportamento do agente, incluindo entradas do modelo, respostas e chamadas de ferramentas.
Na primeira etapa, o sistema cria casos de avaliação, que são especificações que definem a tarefa de um agente. Cada caso consiste em dois elementos:
- Comando inicial:a primeira mensagem que um usuário envia ao agente.
- Plano de conversa:uma "instrução" oculta para o usuário simulado, descrevendo as metas dele e como ele deve reagir se o agente fizer determinadas perguntas.
Na segunda etapa, o sistema gera uma lista de comportamentos do agente no formato de dados canônicos do agente.
Gerar cenários no console
No console do Google Cloud , navegue até a página Agent Platform > Agentes > Avaliação.
Clique em Nova avaliação e selecione Simular sessões.
Insira uma instrução de geração para orientar os cenários (por exemplo, "Gere cenários em que o usuário tenta reservar um voo, mas muda de ideia").
Revise a tabela gerada. Você pode editar os comandos ou adicionar manualmente seus próprios casos de teste.
Executar simulação de usuário
Depois que os cenários são gerados, o Simulador de usuário age como o usuário para continuar a conversa.
Configurações de simulação de usuário
Ao executar a simulação, é possível configurar os seguintes atributos:
- Max Turn:número máximo de invocações permitidas pela execução do agente de várias rodadas. Essa propriedade permite interromper uma conversa em que o agente e o simulador de usuário entram em um loop sem fim. O valor padrão é 5.
- Nome do modelo:o nome do modelo para simular a próxima mensagem do usuário em uma execução de agente de várias interações.
- Configuração do modelo:a configuração do modelo para simular a mensagem do usuário.
Exemplo de SDK: simulação programática
Você também pode inicializar o conjunto de avaliação usando o SDK da Agent Platform:
# 1. Define agent
travel_agent = Agent(
model="gemini-3-flash-preview",
name='travel_agent',
instruction='You are a travel expert, help users to find flights, book flights with flight ID',
tools=[find_flights, book_flight],
)
# 2. Generate scenarios from agent info
travel_agent_info = types.evals.AgentInfo.load_from_agent(agent=travel_agent)
eval_dataset = client.evals.generate_conversation_scenarios(
agent_info=travel_agent_info,
config={
"count": 5,
"generation_instruction": "Generate scenarios where the user tries to book a flight.",
"environment_context": "Today is Monday. I am located in San Francisco. Flights to Paris, New York, Tokyo, Chicago, Sydney, etc are available.",
},
)
# 3. Simulate multi-turn interactions
eval_dataset_with_traces = client.evals.run_inference(
agent=travel_agent,
src=eval_dataset,
config={
"user_simulator_config": {
"max_turn": 5
}
}
)