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, em seguida, simular um usuário para testar a lógica de conversa multiturno 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. Um caso de avaliação é uma especificação que define 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 multiturno. Essa propriedade nos 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 multiturno.
- 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 seu pacote 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
}
}
)