
Chatbot: regras, NLP ou LLM — qual escolher
Quando alguém diz "vamos colocar um chatbot no nosso site", a pergunta que deveria vir imediatamente depois é: "que tipo de chatbot?". A resposta muda radicalmente o custo, a complexidade de manutenção e a qualidade da experiência do usuário. Existe chatbot de três reais e chatbot de três mil reais por mês — e ambos podem ser a escolha certa dependendo do contexto.
Há três arquiteturas principais hoje: baseada em regras, baseada em NLP (processamento de linguagem natural) e baseada em LLMs (modelos de linguagem grande como GPT-4 e Claude). Cada uma resolve problemas diferentes, tem custos diferentes e exige níveis diferentes de maturidade técnica para operar. Neste artigo vamos desmistificar as três.
Chatbots Baseados em Regras: Simples e Previsíveis
O chatbot de regras é o mais antigo e ainda o mais usado. Ele funciona com um conjunto fixo de fluxos: se o usuário digita X, responde Y. Se digita Z, responde W. A lógica é uma árvore de decisão — menus, botões, respostas predefinidas.
Ferramentas como Typebot, Landbot e ManyChat são a versão visual dessa abordagem. Você arrasta blocos, conecta condições e publica. Em questão de horas você tem um bot funcional que coleta leads, qualifica clientes ou responde as dez perguntas mais frequentes.
As vantagens são claras: custo baixíssimo (muitas ferramentas têm plano gratuito), comportamento 100% previsível, fácil de auditar e corrigir, nenhum risco de "alucinação" e conformidade simples com LGPD porque o bot nunca gera conteúdo próprio.
As limitações também são claras: o bot não entende variações de linguagem. Se o fluxo espera "agendar consulta" e o usuário digita "quero marcar um horário", o bot não sabe o que fazer. Qualquer desvio do script previsto resulta em uma resposta genérica de fallback.
Quando usar: FAQ estático, qualificação de leads com perguntas predefinidas, agendamento com opções fixas, coleta de dados estruturados (nome, CPF, e-mail). Qualquer fluxo onde as respostas possíveis são conhecidas e finitas.
NLP com Rasa e Dialogflow: Intenções e Entidades
O salto para NLP resolve o problema das variações de linguagem. Em vez de mapear frases exatas, você treina o modelo para reconhecer intenções (o que o usuário quer) e entidades (os dados relevantes na mensagem).
"Quero agendar para terça às 14h" → intenção: agendar_consulta, entidade: data=terça, entidade: horario=14:00
"Me encaixa semana que vem de manhã" → mesma intenção: agendar_consulta, entidade: data=próxima semana, entidade: horario=manhã
Dialogflow (Google) é o mais fácil de começar. Interface visual para criar intenções, suporte nativo a português brasileiro, integração direta com Google Assistant, Telegram, Slack e WhatsApp. A versão CX (Customer Experience) tem fluxos de conversa mais complexos e é a recomendada para projetos sérios. O custo é baseado em volume de requisições — acessível para volumes médios.
Rasa é a alternativa open-source. Você hospeda no seu servidor, treina seus próprios modelos, tem controle total dos dados. É mais complexo para configurar (exige conhecimento de Python e de conceitos de ML), mas o custo operacional é muito menor em alto volume e a privacidade dos dados é garantida — nada sai para servidores de terceiros.
O ponto fraco do NLP clássico é que ele ainda falha em conversas abertas e contextos inesperados. Ele reconhece intenções treinadas, mas se o usuário faz uma pergunta fora do conjunto de intenções, o bot não sabe responder. A manutenção é constante: você precisa revisar logs, identificar falhas de reconhecimento e adicionar exemplos de treinamento regularmente.
LLMs: Qualidade Alta, Custo Alto e Controle Baixo
Os modelos de linguagem grande mudaram o que é possível em um chatbot. Com GPT-4, Claude ou Gemini, você tem um bot que:
- Entende perguntas em qualquer forma
- Mantém contexto de conversas longas
- Responde com linguagem natural fluida
- Pode raciocinar sobre documentos, FAQs e bases de conhecimento
A arquitetura mais comum para chatbots de atendimento com LLM é RAG (Retrieval-Augmented Generation): você indexa sua documentação, perguntas frequentes e políticas em um banco vetorial (Pinecone, Weaviate, pgvector). Quando o usuário pergunta algo, o sistema busca os trechos mais relevantes e passa para o LLM junto com a pergunta. O modelo responde baseado nessa contexto.
from openai import OpenAI
from typing import Optional
client = OpenAI()
SYSTEM_PROMPT = """Você é o assistente virtual da Empresa X.
Responda apenas com base nas informações fornecidas no contexto.
Se não souber a resposta, diga que vai conectar com um atendente humano.
Seja sempre cordial e objetivo. Responda em português brasileiro."""
def responder_usuario(
pergunta: str,
contexto_recuperado: str,
historico: list[dict]
) -> str:
mensagens = [
{"role": "system", "content": SYSTEM_PROMPT},
*historico,
{
"role": "user",
"content": f"Contexto relevante:\n{contexto_recuperado}\n\nPergunta: {pergunta}"
}
]
resposta = client.chat.completions.create(
model="gpt-4o-mini",
messages=mensagens,
temperature=0.3, # baixo para respostas mais consistentes
max_tokens=500
)
return resposta.choices[0].message.content
Os problemas dos LLMs são reais e precisam ser gerenciados ativamente. Alucinações acontecem — o modelo pode inventar informações com confiança. O custo por mensagem é ordens de grandeza maior do que NLP clássico. A latência é maior. E o comportamento não é 100% determinístico, o que dificulta testes automatizados.
O custo em alto volume é o maior frenador: 1 milhão de mensagens por mês com GPT-4o pode custar alguns milhares de dólares. Para volumes menores e casos de uso de alto valor (suporte técnico complexo, vendas consultivas), o ROI justifica. Para FAQ básico de e-commerce, não justifica.
Matriz de Decisão por Caso de Uso
| Caso de Uso | Regras | NLP | LLM |
|---|---|---|---|
| FAQ estático (10-30 perguntas) | Ideal | Excessivo | Excessivo |
| Qualificação de leads | Ideal | Bom | Desnecessário |
| Agendamento com opções fixas | Ideal | Bom | Desnecessário |
| Suporte técnico com variações | Ruim | Bom | Excelente |
| Atendimento em linguagem livre | Ruim | Regular | Excelente |
| Vendas consultivas complexas | Ruim | Ruim | Excelente |
| Resposta sobre documentos internos | Não funciona | Regular | Excelente (RAG) |
| Alto volume (1M+ msgs/mês) | Ideal | Bom | Caro |
| Dados sensíveis (saúde, jurídico) | Seguro | Seguro (Rasa) | Risco |
A lógica central é: use regras para fluxos previsíveis, NLP para variações de linguagem natural em domínios conhecidos, e LLM para conversas abertas onde a qualidade da resposta é crítica e o custo é justificável.
Uma abordagem híbrida frequentemente faz mais sentido: o primeiro nível usa regras para os fluxos mais comuns (que representam 80% do volume), e o fallback para tudo fora do fluxo usa LLM. Isso controla o custo e mantém a qualidade onde importa.
Conclusão
Não existe chatbot ideal — existe chatbot adequado ao contexto. A decisão entre regras, NLP e LLM é uma decisão de engenharia que deve considerar volume de mensagens, complexidade das perguntas, sensibilidade dos dados, orçamento e tolerância a erros.
O erro mais caro é escolher uma arquitetura mais complexa do que o necessário — implementar um LLM para responder "qual o horário de funcionamento" é desperdício. O segundo erro mais caro é escolher uma arquitetura simples demais para um problema complexo — colocar um chatbot de regras para suporte técnico de SaaS vai frustrar clientes e não resolver nada.
Na SystemForge, fazemos essa análise antes de escrever qualquer linha de código. Mapeamos os casos de uso, estimamos o volume, avaliamos a sensibilidade dos dados e recomendamos a arquitetura que entrega mais resultado pelo menor custo de operação. Converse com a gente sobre o seu projeto.
Precisa de Bots e Automações?
Desenvolvemos bots e automações personalizadas para o seu negócio.
Saiba mais →Precisa de ajuda?

