Bot de Telegram com RAG sem bancos de dados vetoriais: exemplo em Cloudflare Workers
Como criar um bot de Telegram com recursos de busca em uma base de conhecimento sem bancos de dados vetoriais e infraestrutura cara? Um desenvolvedor mostrou…
Processado por IA de Habr AI; editado por Hamidun News
Um bot de Telegram com busca em uma base de conhecimento é uma tarefa popular. Normalmente, para isso usam-se bancos de dados vetoriais como Pinecone ou Weaviate, embeddings e infraestrutura em nuvem paga. Um desenvolvedor do Habr mostrou que isso não é necessário: existe uma forma mais barata e simples.
Por que bancos de dados vetoriais não são a única solução
RAG (Retrieval-Augmented Generation) não requer necessariamente embeddings vetoriais. Para uma base de conhecimento de tamanho médio, é suficiente uma busca full-text por palavras-chave. O algoritmo Jaccard calcula a similaridade entre dois textos através da intersecção de palavras — simples, rápido, não requer aprendizado de máquina.
Veja como funciona na prática: se a base contém FAQ de suporte técnico e o usuário escreve "como reiniciar o dispositivo", o bot divide a consulta em palavras, procura correspondências nos documentos, pega os com maior intersecção e os passa para o LLM. Os resultados podem ser até melhores do que com APIs caras para embeddings, se o conteúdo for bem estruturado. Mais rápido — porque não é necessário esperar pela geração de embeddings.
O principal benefício: zero dependências de serviços externos, exceto um LLM-API para gerar respostas. O histórico de diálogos e a própria base de conhecimento são armazenados diretamente no Cloudflare KV — um armazenamento integrado incluído no plano gratuito. Sem fila para implantação de infraestrutura, sem contas mensais pelo armazenamento de vetores.
Como funciona a arquitetura
O fluxo funciona assim: o usuário escreve uma pergunta no Telegram → o bot procura documentos relevantes da base de conhecimento através do algoritmo Jaccard → pega os top-3 resultados e os passa junto com a pergunta para o Groq API (LLM gratuito) → Groq gera a resposta com base nos documentos encontrados → o bot envia o resultado para o chat. O histórico de diálogos é salvo no KV para contexto entre mensagens. Isso permite que o bot se lembre de perguntas anteriores e refine respostas dependendo do contexto da conversa.
Notavelmente: Groq foi escolhido não sem razão. É um serviço LLM rápido com limites generosos do plano gratuito, ideal para chatbots e sistemas RAG onde é necessária geração instantânea de respostas. A própria base de conhecimento é armazenada como um conjunto de documentos no KV: chave — ID do documento, valor — texto.
Ao fazer uma consulta, o bot carrega todos os documentos, aplica Jaccard a cada um e os classifica por pontuação de similaridade. Esta solução escala para milhares de documentos sem problemas.
Qual stack é necessário
Para a implementação é necessário um número mínimo de componentes:
- TypeScript — linguagem em que todo o código é escrito, com suporte a tipos
- Telegraf — biblioteca leve e popular para trabalhar com a API do Telegram
- Cloudflare Workers — plataforma serverless para implantação (plano gratuito com limites generosos)
- Cloudflare KV — armazenamento integrado para base de conhecimento e histórico de diálogos
- Groq API — serviço LLM gratuito para gerar respostas com base em documentos encontrados
A implantação acontece com um único comando através do Wrangler — um utilitário CLI para Cloudflare Workers. Sem configuração de servidores, sem necessidade de hospedagem própria, sem contêineres Docker. Se o bot não ultrapassar os limites do plano gratuito do Workers (um milhão de solicitações por mês), o custo será exatamente zero. Para comparação: uma configuração típica com banco de dados vetorial requer pelo menos US$ 20-50 por mês apenas para armazenamento.
O que isso significa para os desenvolvedores
Isso abre caminho para sistemas RAG simples que antes pareciam caros ou complexos demais de implementar. Para pequenas equipes, startups e entusiastas — é uma forma de lançar rapidamente um bot de IA com busca em conhecimentos praticamente de graça. Exemplo clássico: um bot interno de escritório que responde por FAQ, políticas corporativas, guias técnicos e documentação. Antes, tal projeto exigia alocação de orçamento para infraestrutura, manutenção de um sistema complexo. Agora tudo isso pode viver em um bucket KV e ser lançado em uma hora. Isso é especialmente útil para equipes que desejam adicionar rapidamente uma função de IA sem grandes investimentos.
Quer parar de ler sobre IA e começar a usar?
AI News é um feed curado de notícias de IA. A Hamidun Academy ensina você a usar IA no trabalho.