As práticas recomendadas a seguir podem ajudar você a criar agentes robustos.
Nome do playbook em linguagem natural
Os nomes dos playbooks precisam ser claros, descritivos e em inglês natural. Isso ajuda na performance do gerador de IA no ambiente de execução. Por exemplo, "Customer Help Center Playbook" é melhor do que "company_specialist".
Mantenha todos os nomes com menos de 64 caracteres, incluindo letras e espaços em inglês.
Metas concisas
As metas precisam ser uma descrição concisa da finalidade do playbook.
Fornecer instruções de qualidade
As instruções precisam:
- Refletir a abordagem detalhada para resolver um problema do usuário final.
- Conter frases concisas em linguagem natural, com instruções de alto nível.
- Ser diretas e especificar os cenários para o uso das ferramentas.
Pelo menos um exemplo para cada playbook
É recomendável ter pelo menos um exemplo para cada playbook, mas o ideal é ter pelo menos quatro. Os exemplos precisam incluir cenários de caminho feliz.
Sem exemplos suficientes, um playbook pode apresentar um comportamento imprevisível. Se o playbook não estiver respondendo ou se comportando da maneira esperada, é provável que a causa seja exemplos ausentes ou mal definidos. Melhore os exemplos ou adicione novos.
Precisão de instruções e exemplos
Embora seja útil escrever instruções claras e descritivas, a qualidade e a quantidade dos exemplos é que determinam a precisão do comportamento do playbook. Em outras palavras, dedique mais tempo a escrever exemplos detalhados do que instruções perfeitamente precisas.
Ferramentas de referência em exemplos
Se o playbook for projetado para fornecer respostas usando ferramentas, faça referência a elas nos exemplos correspondentes a esse tipo de solicitação.
Campo operationId do esquema de ferramentas
Ao definir esquemas para suas ferramentas, o valor operationId é importante. As instruções do playbook farão referência a esse valor.
Confira a seguir algumas recomendações de nomenclatura para esse campo:
- Somente letras, números e sublinhados.
- Precisa ser exclusivo entre todos os
operationIds descritos no esquema. - Precisa ser um nome significativo que reflita a capacidade fornecida.
Validação do esquema de ferramentas
Valide o esquema de ferramentas. Você pode usar o Swagger Editor para verificar a sintaxe do esquema openAPI 3.0.
Processar resultados de ferramentas vazios
Quando o playbook depende de uma ferramenta para informar a resposta, um resultado vazio pode levar a um comportamento imprevisível. Às vezes, o gerador de IA do playbook alucina informações em uma resposta em vez de um resultado de ferramenta. Para evitar isso, adicione instruções específicas para garantir que o gerador de IA do playbook não tente responder por conta própria.
Alguns casos de uso exigem que as respostas do playbook sejam bem fundamentadas nos resultados da ferramenta ou nos dados fornecidos e precisam mitigar respostas baseadas apenas no conhecimento do gerador de IA do playbook.
Confira alguns exemplos de instruções para mitigar alucinações:
- "Você precisa usar a ferramenta para responder a todas as perguntas do usuário."
- "Se você não receber nenhum dado da ferramenta, responda que não sabe a resposta à consulta do usuário."
- "Não invente uma resposta se você não receber nenhum dado da ferramenta."
Gerar um esquema com o Gemini
Gemini pode gerar um esquema para você. Por exemplo, tente "você pode criar um exemplo de esquema openAPI 3.0 para o Google Agenda?".
Playbooks focados
Evite criar playbooks muito grandes e complexos. Cada playbook precisa realizar uma tarefa específica e clara. Se você tiver um playbook complexo, considere dividi-lo em subplaybooks menores.
Evitar loops e recursão
Não crie loops ou recursão ao vincular agentes nas instruções. Um loop pode ocorrer se você tentar rotear para um playbook ancestral que, direta ou indiretamente, chamou o atual.
Fornecer informações de roteamento para exemplos
Quando um playbook precisa ser roteado para outro, forneça essas informações aos exemplos. Isso é fornecido a um exemplo do campo Concluir o exemplo com informações de saída da seção de exemplo Entrada e saída.
Por exemplo, a frase final desse campo pode ser "Redirecione de volta para o playbook padrão para mais consultas".
Usar funções JavaScript do Dialogflow CX Messenger para personalização
Ao usar o Dialogflow CX Messenger, as seguintes funções são úteis para enviar informações de personalização do usuário da interface da Web para o playbook:
Planejamento de performance
Os recursos generativos geralmente exigem vários segundos ou até dezenas de segundos para gerar uma resposta. Embora os playbooks melhorem a naturalidade da conversa, é fundamental gerenciar os tempos de resposta para manter uma experiência positiva do usuário final.
Confira a seguir algumas estratégias para otimizar a performance:
- Equilibrar o uso de recursos generativos:considere cuidadosamente a compensação entre o tempo necessário para executar vários recursos generativos e o valor que eles agregam à conversa. Evite o uso excessivo desses recursos se eles não contribuírem significativamente para a meta do usuário.
- Minimizar a entrada de recursos generativos:procure coletar e processar a quantidade mínima de informações necessárias para que um gerador de IA gere uma resposta útil. Isso pode reduzir significativamente o tempo de processamento.
- Usar o armazenamento em cache de contexto: se você estiver usando o Gemini por meio de uma ferramenta e tiver um contexto inicial grande, explore o armazenamento em cache de informações usando Vertex AI Context Caching para evitar solicitações repetitivas dos mesmos dados.
- Implementar respostas fixas para velocidade:se o aplicativo não exigir conteúdo dinâmico e exclusivo, considere armazenar respostas usadas com frequência em um banco de dados tradicional, como o Firebase. Como são predefinidas e estão prontamente disponíveis, essas respostas fixas oferecem tempos de resposta muito mais rápidos do que um recurso generativo que precisa calcular uma resposta em tempo real.
- Instruir o gerador de IA a produzir respostas concisas do playbook:para entrada e saída de texto, o tempo de resposta do gerador de IA depende muito do modelo usado e do comprimento da saída. Respostas curtas podem melhorar significativamente a performance. Embora o comprimento da entrada também seja um fator, o comprimento da saída tem um impacto maior.