Agentes com avatar em tempo real: o que levam por dentro
Construímos para um cliente agentes avatarizados que falam com utilizadores em tempo real. Esta é a arquitetura: system prompt próprio, RAG sobre o conhecimento da empresa, voz e controlo de latência.
Um agente com avatar é um assistente com cara e voz: o utilizador fala, o avatar escuta, pensa e responde em tempo real, com gestos e sincronização labial. Construímos um para um cliente e está a funcionar em produção. Este artigo explica o que leva por dentro, sem segredos de cozinha mas com a honestidade de quem lutou com cada peça.
As peças
Um agente destes são cinco sistemas coordenados:
- Voz para texto (STT): transcreve o utilizador enquanto fala, em streaming.
- O cérebro (LLM + system prompt): decide o que responder.
- Recuperação (RAG): dá ao cérebro o conhecimento da empresa.
- Texto para voz (TTS): converte a resposta em áudio com uma voz consistente.
- O avatar: renderiza cara, gestos e sincronização labial sobre esse áudio.
Cada peça funciona sozinha em qualquer demo. O verdadeiro projeto é fazê-las funcionar juntas, depressa e sem dizer disparates.
O system prompt: a personalidade é trabalho de engenharia
O system prompt define quem é o agente: o que sabe, o que nunca deve fazer, como fala a marca, quando deve reconhecer que não sabe e quando passar a uma pessoa. Algumas coisas que aprendemos:
- Primeiro os limites. Antes de escrever "és um assistente simpático", escreva o que lhe é proibido: prometer preços, inventar políticas, comentar a concorrência, sair do seu âmbito.
- Exemplos, não adjetivos. "Tom próximo e profissional" não significa nada para um modelo. Três exemplos de pergunta bem resolvida valem mais do que um parágrafo de adjetivos.
- Versões e regressões. Cada mudança do prompt passa por uma bateria de perguntas de teste. Um ajuste inocente de tom pode partir um limite de segurança que custou a afinar.
RAG: responder com o seu negócio, não com a internet
Sem recuperação, o modelo responde com o seu conhecimento geral e soa a brochura. Com RAG, indexamos o conhecimento do cliente (catálogo, políticas, perguntas frequentes, documentação interna) numa base vetorial; em cada pergunta recuperam-se os fragmentos relevantes e o modelo responde ancorado nessa base.
Os detalhes importam mais do que parece: como se dividem os documentos, que metadados se guardam para filtrar, e o que faz o agente quando a recuperação não encontra nada (a resposta certa é admiti-lo e oferecer o contacto humano, não improvisar).
A latência manda
No texto, dois segundos de espera perdoam-se. Numa conversa com voz e cara, meio segundo de silêncio já se nota e dois segundos matam a ilusão. Todo o design gira à volta disso:
- Streaming em cada etapa: transcreve-se enquanto o utilizador fala, o modelo começa a responder antes de ter o texto completo, o TTS sintetiza por frases e o avatar arranca com o primeiro fragmento de áudio.
- Modelos por camadas: um pequeno e rápido classifica e responde ao trivial; o grande entra só nas perguntas de fundo.
- Orçamento de milissegundos por peça, medido em produção, não na demo.
Guardas e passagem a humanos
Um agente virado ao público precisa de: filtros de entrada e saída (temas vetados, dados pessoais), um limiar de confiança abaixo do qual não improvisa, registo completo de conversas para revisão, e um botão visível de "falar com uma pessoa". O objetivo não é que o agente resolva tudo: é que resolva o frequente e encaminhe bem o difícil.
Quando compensa?
Um agente avatarizado compensa quando há volume de conversas repetitivas com valor real (suporte de primeiro nível, qualificação comercial, onboarding guiado) e uma marca a que dar-lhe cara acrescenta algo. Para um formulário de contacto, é exagero: um assistente de texto com RAG dá 80% do valor por uma fração do custo.
Se está a pensar em algo assim (com avatar ou sem ele), falemos. Já percorremos o caminho completo: system prompt, RAG, voz e produção, e sabemos onde estão os buracos.