Pular para o conteúdo

Construindo um Agente de Voz eficaz para nossa própria documentação

Publicado
Última atualização

OuvirOuça este artigo

Na ElevenLabs, recentemente incorporamos um agente de voz IA em nossa documentação para ajudar a reduzir a carga de suporte para perguntas relacionadas à documentação (Experimente mais de 80%). Nosso agente de suporte agora está lidando com sucesso com mais de 80% das consultas dos usuários em

Nossos objetivos

Nos propusemos a construir um agente que possa:

  • Resolver perguntas de suporte que podem ser respondidas a partir do contexto de nosso produto e documentação de suporte
  • Redirecionar usuários para seções relevantes da documentação
  • Encaminhar consultas complexas para suporte por e-mail/discord quando necessário
  • Ter uma conversa fluida e natural, com baixa latência e manejo realista de interrupções

Resultados e Impacto

Implementamos duas camadas de avaliação:

(1) Ferramenta de Avaliação de IA: Para cada chamada, nossa ferramenta de avaliação integrada analisa a conversa finalizada e avalia se o agente foi bem-sucedido. Os critérios são totalmente personalizáveis. Perguntamos se o agente resolveu a consulta do usuário ou foi capaz de redirecioná-lo para um canal de suporte relevante.

Solved User Inquiry Chart

Conseguimos melhorar constantemente a capacidade do LLM de resolver ou redirecionar a consulta com sucesso, alcançando 80% de acordo com nossa ferramenta de avaliação.

Excluindo chamadas com menos de 1 turno na conversa, o que implica que nenhuma pergunta/problema foi levantado pelo chamador.

Agora, é importante considerar que nem todos os tipos de consultas ou perguntas de suporte podem ser resolvidos por um LLM, especialmente para uma startup que constrói rapidamente e inova constantemente, e com usuários extremamente técnicos e criativos. Como um aviso adicional, um LLM de avaliação não avaliará corretamente 100% do tempo.

(2) Validação Humana: Para contrastar a eficácia de nossa ferramenta de validação LLM, realizamos uma validação humana de 150 conversas, usando os mesmos critérios de avaliação fornecidos à ferramenta LLM:

  • consulta_usuario_resolvida: definido como sucesso quando o agente respondeu às perguntas do usuário com informações relevantes ou foi capaz de redirecionar para a página/canal de suporte relevante.
    • O LLM e o Humano concordaram em 81% dos casos
  • alucinação_kb: este critério verificará a transcrição final e verificará se as respostas dadas pelo LLM sobre os produtos ElevenLabs aderem às informações na base de conhecimento ou vão além dela.
    • O LLM e o Humano concordaram em 83% dos casos

A avaliação humana também revelou que 89% das perguntas de suporte relevantes foram respondidas ou redirecionadas corretamente pelo agente de Documentação.

Outras descobertas:

  • Vários chamadores só queriam brincar e tentar falar em diferentes idiomas sem fazer uma pergunta de suporte.
    • Atualmente, nosso Conversational AI suporta vários idiomas, mas eles precisam ser definidos no início da conversa.
  • Vários chamadores se envolvem em conversas não relevantes para o objetivo do agente de falar sobre a ElevenLabs, seus produtos e documentação. As barreiras de proteção ajudaram na maioria das vezes, mas nem sempre.
  • Vários chamadores estavam procurando suporte para codificação ou depuração.

Forças e Limitações

Forças

O agente alimentado por LLM é hábil em resolver perguntas claras e específicas que podem ser respondidas com nossa documentação, apontando os chamadores para a documentação relevante e fornecendo alguma orientação inicial sobre consultas mais complexas. Na maioria desses casos, o agente fornece respostas rápidas, diretas e corretas que são imediatamente úteis.

As perguntas incluem:

  • A ElevenLabs tem um endpoint de API para excluir uma voz?
  • Como posso configurar substituições de conversa no meu agente?
  • Como faço para integrar com telefonia?
  • A ElevenLabs suporta o idioma espanhol?

Recomendações:

  • Alvo um público que terá principalmente perguntas claras/específicas que um LLM com documentação e ferramentas é bom em responder.
  • Aproveite os redirecionamentos para outros canais para as perguntas vagas/aquelas que exigem investigação. Isso ajuda muito!
  • Adicione ferramentas de avaliação para capturar todas as perguntas feitas e monitorar essas -> ajuste o prompt com os aprendizados. Adicione ferramentas de avaliação para sucesso e alucinações/desvios da base de conhecimento.

Limitações

Por outro lado, o agente é menos útil com problemas de conta, perguntas sobre preços/descontos ou perguntas não específicas que se beneficiariam de uma investigação mais aprofundada. Além disso, questões que são bastante vagas e genéricas -> apesar de ser solicitado a fazer perguntas, o LLM geralmente prefere responder com algo que possa parecer relevante na documentação.

As perguntas incluem:

  • A etapa de verificação do meu PVC está falhando repetidamente. Por quê?
  • Quanto custará um agente de IA? Posso ter um desconto?
  • Estou recebendo um erro com o JS SDK? -> O agente pode redirecionar para a documentação relevante, mas não pode encontrar e resolver o problema facilmente via voz.

Recomendações

  • Voz não é o meio certo para compartilhar código. Instrua-o a não tentar, mas sim redirecionar para páginas com exemplos ou redirecionar para Discord/Suporte.
  • Instrua o agente a não responder com longas listas de recomendações quando os problemas/perguntas forem mais complicados. Isso funciona em texto, mas menos via voz.
  • LLMs tendem a preferir responder a fazer perguntas - instrua-o agressivamente para isso, se necessário, para o caso de uso de suporte. (ou seja, faça essas 3 perguntas antes de prosseguir). Isso é mais fácil para casos de uso de saída com scripts fixos.

Como construímos

Configuração do Agente:

Prompt do Sistema

“Você é um agente de suporte técnico chamado Alexis. Você tentará responder a quaisquer perguntas que o usuário possa ter sobre os produtos ElevenLabs. Você receberá documentação sobre os produtos ElevenLabs e deve usar apenas essas informações para responder a perguntas sobre ElevenLabs. Você deve ser prestativo, amigável e profissional. Se você não conseguir responder à pergunta, redirecione os chamadores com redirectToEmailSupport (que abre um e-mail no lado deles para suporte), se isso não parecer funcionar, eles podem enviar um e-mail diretamente para team@elevenlabs.io.

Se a pergunta ou problema não estiver totalmente claro ou específico o suficiente, peça mais detalhes e para qual produto eles estão solicitando suporte. Se a pergunta for vaga ou muito ampla, pergunte mais especificamente o que eles estão tentando alcançar e como.

Aderir estritamente ao idioma da sua primeira mensagem na conversa, mesmo quando solicitado ou falado em um idioma diferente. Diga que é melhor se eles encerrarem e reiniciarem a chamada, selecionando o idioma alternativo desejado.

Sua saída será lida por um modelo de text to speech, então deve ser formatada como é pronunciada. Por exemplo: em vez de sair "por favor, entre em contato com team@elevenlabs.io" você deve sair "por favor, entre em contato com 'team at elevenlabs dot I O'". Não formate sua resposta de texto com marcadores, negrito ou cabeçalhos. Não retorne longas listas, mas resuma-as e pergunte qual parte o usuário está interessado. Não retorne exemplos de código, mas sugira que o usuário veja os exemplos de código em nossa documentação. Retorne a resposta diretamente, não comece respostas com "Agente:" ou algo semelhante. Não corrija erros de ortografia, simplesmente ignore-os.

Responda sucintamente em algumas frases e deixe o usuário guiá-lo sobre onde dar mais detalhes.

Você tem as seguintes ferramentas à sua disposição. Use-as conforme apropriado com base na solicitação do usuário:

`redirectToDocs`:

- Quando usar: Na maioria das situações, especialmente quando o usuário precisa de informações ou orientações mais detalhadas.

- Por quê: Fornecer acesso direto à documentação é útil para tópicos complexos, garantindo que o usuário possa revisar e entender o conteúdo por conta própria.

`redirectToEmailSupport`:

- Quando usar: Se o usuário precisar de assistência com problemas pessoais ou específicos da conta.

- Por quê: Consultas relacionadas à conta são melhor tratadas por nossa equipe de suporte por e-mail, onde eles podem acessar detalhes relevantes com segurança.

`redirectToExternalURL`:

- Quando usar: Se o usuário perguntar sobre soluções em nível empresarial ou quiser se juntar a comunidades externas, como nosso servidor Discord. Também se parecer ser um desenvolvedor com dificuldades técnicas com a ElevenLabs.

- Por quê: Consultas empresariais e interações comunitárias estão fora do escopo do suporte direto na plataforma e são melhor tratadas por meio de links externos.

Barreiras de Proteção:

- Fique em tópicos e produtos relacionados à ElevenLabs. Se alguém perguntar sobre assuntos não relacionados à ElevenLabs, diga que você está aqui apenas para responder sobre produtos ElevenLabs.

- Redirecione o chamador para uma página por vez, pois cada redirecionamento substitui o anterior.

- Não responda com longas listas ou com código. Em vez disso, direcione para a documentação para exemplos de código.”

Base de Conhecimento

Junto com o prompt, estamos passando ao LLM uma Base de Conhecimento de informações relevantes no contexto. Esta base de conhecimento inclui uma versão resumida, mas ainda grande (80k caracteres) de toda a documentação da ElevenLabs, bem como alguns URLs relevantes.

Também estamos adicionando esclarecimentos e FAQs como parte da base de conhecimento.

Ferramentas

Temos três ferramentas configuradas:

  • redirectToExternalURL: redireciona para contato de vendas ou para o discord.
  • redirectToEmailSupport: abre um e-mail para team@elevenlabs.io
  • redirectToDocs: esta ferramenta é configurada para redirecionar o chamador para páginas relevantes dentro de nossa documentação.

Avaliação Integrada

Nossa ferramenta de avaliação envolve um LLM revisando a transcrição final e avaliando a conversa com base em critérios definidos.

Critérios de Avaliação (sucesso / falha / desconhecido)

  • hallucination_kb: este critério verificará a transcrição final e verificará se as respostas dadas pelo LLM sobre os produtos ElevenLabs aderem às informações na base de conhecimento ou vão além dela.
  • interaction: avalia se a conversa foi além de um turno de conversa. Uma maneira rápida de marcar se as conversas foram iniciadas, mas nunca engajadas.
  • solved_user_inquiry: definido como sucesso quando o agente respondeu às perguntas do usuário com informações relevantes ou foi capaz de redirecionar para a página/canal de suporte relevante.
  • positive_interaction: avalia se a conversa ocorreu sem reações negativas do chamador.

Coleta de Dados:

  • Issue_type: categorizar a conversa como bug, problema de suporte, fr ou outro
  • Categoria do produto: extrair o produto relevante (TTS, ConvAI, etc)
  • AllQuestions: extrair todas as perguntas feitas pelo chamador
  • Unsolved_question: extrair perguntas não respondidas pelo LLM com informações relevantes
  • Redirects: extrair os caminhos de redirecionamento acionados pelo agente e a reação do chamador

Resumo

Nosso agente de documentação provou ser eficaz para ajudar os usuários a navegar em perguntas comuns de produtos e suporte, e é um copiloto envolvente para usuários que navegam em nossa documentação. Conseguimos iterar e melhorar consistentemente nosso agente por meio de monitoramento contínuo automatizado e manual. Reconhecemos que nem todos os tipos de consultas ou perguntas de suporte podem ser resolvidos por um LLM, especialmente para uma startup que constrói rapidamente e inova constantemente, e com usuários extremamente técnicos e criativos. Mas descobrimos que quanto mais conseguimos automatizar, mais tempo nossa equipe pode dedicar a enfrentar os problemas difíceis e interessantes que surgem nas margens, à medida que nossa comunidade continua a expandir os limites do que é possível com Áudio IA.

Nosso agente é alimentado por IA Conversacional ElevenLabs. Se você gostaria de reproduzir meus resultados, você pode criar uma conta gratuitamente e seguir meus passos. Se você ficar preso, pode falar com o agente que implantamos em nossa documentação ou entrar em contato comigo e minha equipe no Discord. Para casos de uso de alto volume (>100 chamadas por dia), entre em contato com nossa equipe de vendas para descontos por volume.

Artigos relacionados

Crie com o áudio de IA da mais alta qualidade