Como a IA pensa
Esta página é opcional — você não precisa entender a engenharia pra usar o ConectAI. Mas se você gosta de saber como a coisa funciona por dentro, aqui está o resumo.
A pilha de IA
Cada interação atravessa uma pipeline em 5 camadas:
┌──────────────────────────────────────────────────────────┐
│ 1. Captura: voz/texto/áudio do cliente │
├──────────────────────────────────────────────────────────┤
│ 2. Transcrição (STT): áudio → texto │
├──────────────────────────────────────────────────────────┤
│ 3. Cérebro (LLM): texto + contexto + KB → resposta │
├──────────────────────────────────────────────────────────┤
│ 4. Ações (Tools): chamadas a sistemas externos │
├──────────────────────────────────────────────────────────┤
│ 5. Síntese (TTS): texto → voz (em chamadas) │
└──────────────────────────────────────────────────────────┘1. Captura — onde a conversa nasce
Telefone
Quando o cliente liga, a chamada chega ao trunk SIP (Athostec, Retell, Twilio ou trunk próprio do provedor) e é roteada para o agente IA. O áudio é streaming em tempo real.
WhatsApp (Cloud API)
A Meta envia um webhook para o ConectAI cada vez que o cliente manda mensagem. O webhook é validado pela assinatura X-Hub-Signature-256 (usando o seu App Secret) antes de qualquer coisa rolar.
Suporta: texto, áudio, imagem, documento, sticker, localização.
2. Transcrição (Speech-to-Text)
Para chamadas telefônicas e áudios de WhatsApp, o áudio é transcrito por:
- Whisper (OpenAI) — para áudios longos e áudios de WhatsApp
- Provider de voz integrado (Vapi/Retell/Athostec) — para o stream contínuo do telefone
A transcrição é em português brasileiro, com adaptação para gírias e regionalismos comuns.
3. Cérebro (LLM)
O motor é o Claude da Anthropic. A cada turno, o cérebro recebe:
- O system prompt (definido pela configuração do agente: saudação, tom, regras)
- O histórico da conversa (turnos anteriores)
- Os trechos relevantes da base de conhecimento (RAG — busca por similaridade)
- O schema das ferramentas disponíveis (abrir chamado, segunda via, agendar visita, transferir)
E devolve: ou uma resposta para o cliente, ou uma chamada de ferramenta.
Por que Claude? Porque tem o melhor desempenho em pt-BR formal (atendimento), seguir instruções complexas (regras de escalonamento) e usar ferramentas com confiabilidade. Não significa que vamos ficar nele pra sempre — a arquitetura permite trocar o LLM sem refazer a base.
4. Ações (Tools)
Quando o cliente pede algo concreto, o cérebro chama uma ferramenta em vez de só responder texto. Exemplos das ferramentas nativas hoje:
| Tool | O que faz |
|---|---|
check_connection_status | Verifica status de conexão e mensalidade |
open_ticket | Abre chamado técnico (estrutura padrão) |
send_second_invoice | Gera e envia 2ª via |
schedule_visit | Lê agenda do Google Calendar e reserva slot |
escalate_to_human | Transfere com contexto via webhook |
Além das nativas, você pode adicionar HTTP Tools customizadas em /ia/tools — qualquer endpoint REST que aceite JSON. Útil pra consultar IXC, MK-Auth, sistemas próprios.
5. Síntese (Text-to-Speech)
Para chamadas, a resposta do cérebro é convertida de volta em áudio com vozes naturais em pt-BR. A latência fim-a-fim (cliente fala → IA responde) é abaixo de 1.5s na maior parte dos casos.
A escolha do engine de voz é por agente:
- ConectaAI (LiveKit) — pipeline próprio, mais customizável
- Retell — parceiro, latência otimizada, configs avançadas restritas
Memória da conversa
Cada conversa mantém memória de curto prazo dentro do turno (todo o histórico até ali). E mantém memória de longo prazo vinculada ao assinante (último problema, último plano, observações).
Quando uma conversa escala para humano, o operador recebe junto:
- Resumo do que foi conversado
- O que a IA tentou e o motivo de escalar
- Dados estruturados que a IA já coletou (endereço, modelo, sintoma)
RAG na base de conhecimento
O ConectAI usa busca por similaridade (embeddings) na base de conhecimento. Em cada turno:
- Pega o que o cliente disse no último turno
- Busca os 3-5 trechos mais similares na sua KB
- Injeta esses trechos no prompt do LLM
- O LLM responde só com base no que veio dali, evitando alucinação
Por isso: quanto mais detalhada e bem escrita sua KB, melhor a IA responde.
Por que a IA não “decora” tudo?
Existem 3 razões:
- Custo — colocar TODA a KB no prompt deixaria caro e lento
- Drift — quanto mais texto no prompt, mais a IA se distrai com o irrelevante
- Atualização — se você muda um plano, basta editar a KB; a IA “aprende” no próximo turno
Latência real
| Canal | Latência típica |
|---|---|
| WhatsApp (texto) | 1-3 segundos |
| WhatsApp (áudio) | 4-8 segundos (transcrição) |
| Telefone | 800ms - 1.5s (turno) |
| Tool call (IXC) | +500ms a +2s, depende do IXC |
Onde a IA falha
A IA falha quando:
- A pergunta requer acesso a sistema não integrado (ex.: cliente quer cancelar e o ConectAI não tem permissão de cancelamento)
- O cliente está muito alterado emocionalmente (raiva, choro) — escala mais cedo
- A KB está desatualizada ou rasa — IA inventa ou transfere demais
- O cliente fala com muito ruído (barzinho, rua, etc) — STT degrada
- A pergunta é fora do escopo (consultoria fiscal, política — escala)
O que está roadmapped
- Atual: atendimento reativo (cliente fala primeiro)
- Em desenvolvimento: outbound (IA liga ativamente — cobrança, confirmação)
- Em desenvolvimento: diagnóstico técnico avançado (TR-069 deep)
- Roadmap: voice-cloning da voz oficial do provedor