Pular para o conteúdo

Design clássico · Staff

Assistente com LLM e RAG (suporte e código)

Projeto de entrevista clássico. Pontos centrais: serviço de LLM (inferência).

17 min de leitura · Conteúdo revisado em 23 de outubro de 2026

Resposta curta

Projeto de entrevista clássico. Pontos centrais: serviço de LLM (inferência). Um assistente de suporte precisa conhecer o negócio específico em que atua. Uma técnica para dar esse conhecimento ao modelo é a RAG: o sistema recupera informação relevante da base de conhecimento e a anexa ao prompt do usuário.

01 · CONTEXTO E REQUISITOS

Por que um assistente precisa de RAG

Um assistente de suporte precisa conhecer o negócio específico em que atua. Uma técnica para dar esse conhecimento ao modelo é a RAG: o sistema recupera informação relevante da base de conhecimento e a anexa ao prompt do usuário.

No resumo do paper que deu nome à técnica, dar proveniência às decisões do modelo e atualizar seu conhecimento aparecem como problemas em aberto. Modelos só paramétricos precisam de mais treinamento para mudar o comportamento, enquanto um modelo com memória não paramétrica tem o conhecimento atualizado com facilidade.

Antes de montar a infraestrutura, vale perguntar se ela é necessária. A Anthropic observa que, para uma base abaixo de 200.000 tokens (cerca de 500 páginas), dá para incluir a base inteira no prompt, sem RAG.

02 · VISÃO GERAL

O caminho de uma pergunta

A base é preparada antes das perguntas: o corpus é quebrado em trechos pequenos, um modelo de embeddings converte cada trecho em um vetor que codifica significado e os vetores ficam em um banco vetorial que permite busca por similaridade semântica.

  1. No diagrama, o usuário chega ao gateway de API, que encaminha o pedido ao orquestrador do assistente.

    Diagrama da arquitetura: Assistente com RAG: visão geral
    CLUsuário
    NWGateway de API
    CPOrquestrador do assistente
    CPRecuperador
    DBÍndice vetorial
    CPFiltro de segurança
    CPServiço de LLM
    NWColeta de métricas e avaliações
  2. Na consulta, o banco vetorial é usado para achar os trechos mais relevantes por similaridade semântica com a pergunta.

    Diagrama da arquitetura: Assistente com RAG: visão geral
    CLUsuário
    NWGateway de API
    CPOrquestrador do assistente
    CPRecuperador
    DBÍndice vetorialbusca por similaridade
    CPFiltro de segurança
    CPServiço de LLM
    NWColeta de métricas e avaliações
  3. Os trechos mais relevantes são adicionados ao prompt enviado ao modelo generativo.

    Diagrama da arquitetura: Assistente com RAG: visão geral
    CLUsuário
    NWGateway de API
    CPOrquestrador do assistente
    CPRecuperador
    DBÍndice vetorial
    CPFiltro de segurança
    CPServiço de LLMrecebe o prompt
    NWColeta de métricas e avaliações
  4. No diagrama, o filtro de segurança fica entre o orquestrador e o serviço de LLM.

    Diagrama da arquitetura: Assistente com RAG: visão geral
    CLUsuário
    NWGateway de API
    CPOrquestrador do assistente
    CPRecuperador
    DBÍndice vetorial
    CPFiltro de segurança
    CPServiço de LLM
    NWColeta de métricas e avaliações
  5. No diagrama, o orquestrador também envia os registros de cada interação à coleta de métricas e avaliações.

    Diagrama da arquitetura: Assistente com RAG: visão geral
    CLUsuário
    NWGateway de API
    CPOrquestrador do assistente
    CPRecuperador
    DBÍndice vetorial
    CPFiltro de segurança
    CPServiço de LLM
    NWColeta de métricas e avaliações

03 · RECUPERAÇÃO

Recuperar bem é metade do trabalho

A busca vetorial captura relações semânticas, mas os modelos de embeddings podem perder correspondências exatas. O BM25 é uma função de ranqueamento que usa correspondência lexical para achar palavras ou frases exatas e é especialmente eficaz em consultas com identificadores únicos ou termos técnicos.

Uma recuperação híbrida usa as duas buscas: o BM25 acha os melhores trechos por correspondência exata, os embeddings acham os melhores por similaridade semântica, e os resultados são combinados e deduplicados com técnicas de fusão de ranking.

Outro problema é o contexto perdido: a RAG tradicional remove contexto ao codificar a informação. A proposta da Anthropic, chamada Contextual Retrieval, antepõe a cada trecho um contexto explicativo específico antes do embedding.

TécnicaRedução da falha de recuperaçãoTaxa de falha
Embeddings contextuais35%5,7% para 3,7%
Embeddings contextuais e BM25 contextual49%5,7% para 2,9%
Os dois com reranking67%5,7% para 1,9%

O reranking é uma técnica de filtragem para que só os trechos mais relevantes cheguem ao modelo; ele melhora as respostas e reduz custo e latência porque o modelo processa menos informação. Por outro lado, há um trade-off entre rerankear mais trechos, para melhor desempenho, e menos, para menor latência e custo.

O mesmo equilíbrio vale para a quantidade de trechos no prompt: colocar mais trechos na janela de contexto aumenta a chance de incluir a informação relevante, mas informação demais pode distrair o modelo.

04 · SERVIÇO DE LLM

O modelo é o recurso caro

Um guia de preparação para entrevistas de system design recomenda entender como funciona a inferência em lote, como clusters de GPU são gerenciados, o que a RAG envolve e como funciona o limite de taxa para APIs de LLM.

  1. No diagrama, as requisições do orquestrador passam pelo limitador de taxa e esperam na fila de requisições.

    Diagrama da arquitetura: Assistente com RAG: caminho até o modelo
    CPOrquestrador do assistente
    NWLimitador de taxa
    QFila de requisições
    CPServidores de inferência
    CHMemória do KV cache
  2. Servir LLMs com alta vazão exige agrupar requisições suficientes em lote; no diagrama, os servidores de inferência consomem a fila.

    Diagrama da arquitetura: Assistente com RAG: caminho até o modelo
    CPOrquestrador do assistente
    NWLimitador de taxa
    QFila de requisições
    CPServidores de inferênciaforma lotes
    CHMemória do KV cache
  3. A memória de KV cache de cada requisição é enorme e cresce e encolhe dinamicamente.

    Diagrama da arquitetura: Assistente com RAG: caminho até o modelo
    CPOrquestrador do assistente
    NWLimitador de taxa
    QFila de requisições
    CPServidores de inferência
    CHMemória do KV cachememória por requisição
  4. Mal gerenciada, essa memória pode ser desperdiçada por fragmentação e duplicação redundante, o que limita o tamanho do lote.

    Diagrama da arquitetura: Assistente com RAG: caminho até o modelo
    CPOrquestrador do assistente
    NWLimitador de taxa
    QFila de requisições
    CPServidores de inferência
    CHMemória do KV cachepode ser desperdiçada

05 · ATUALIZAÇÃO E QUALIDADE

Manter o conhecimento atual e medir a qualidade

No paper de RAG, o problema de busca de produto interno máximo (MIPS) pode ser resolvido de forma aproximada em tempo sublinear, e os autores montam o índice MIPS com FAISS e uma aproximação do tipo Hierarchical Navigable Small World para recuperação rápida.

  1. No diagrama, as mudanças nas fontes entram na fila de mudanças.

    Diagrama da arquitetura: Assistente com RAG: atualização do índice
    DBFontes: documentação e repositórios
    QFila de mudanças
    CPWorker de indexação
    DBÍndice novo
    DBÍndice ativo
    CPRecuperador
  2. No diagrama, o worker de indexação consome a fila e grava os trechos no índice novo.

    Diagrama da arquitetura: Assistente com RAG: atualização do índice
    DBFontes: documentação e repositórios
    QFila de mudanças
    CPWorker de indexação
    DBÍndice novoíndice em construção
    DBÍndice ativo
    CPRecuperador
  3. No diagrama, o recuperador consulta o índice ativo.

    Diagrama da arquitetura: Assistente com RAG: atualização do índice
    DBFontes: documentação e repositórios
    QFila de mudanças
    CPWorker de indexação
    DBÍndice novo
    DBÍndice ativo
    CPRecuperador
  4. No paper de RAG, o conhecimento do modelo pode ser atualizado trocando a memória não paramétrica, o índice, enquanto modelos só paramétricos precisam de mais treinamento.

    Diagrama da arquitetura: Assistente com RAG: atualização do índice
    DBFontes: documentação e repositórios
    QFila de mudanças
    CPWorker de indexação
    DBÍndice novosubstitui o ativo
    DBÍndice ativo
    CPRecuperador

Quanto à qualidade, a fonte da Anthropic lista entre as considerações de implementação sempre rodar evals, e recomenda experimentar configurações no seu caso de uso específico para achar o equilíbrio.

Perguntas frequentes

O que é Assistente com LLM e RAG (suporte e código)?

Projeto de entrevista clássico. Pontos centrais: serviço de LLM (inferência).

O que o design de Assistente com LLM e RAG (suporte e código) cobre?

Ele está organizado nestas seções: Por que um assistente precisa de RAG, O caminho de uma pergunta, Recuperar bem é metade do trabalho, O modelo é o recurso caro e Manter o conhecimento atual e medir a qualidade.

Quanto tempo leva Assistente com LLM e RAG (suporte e código) e qual é o nível?

Leva cerca de 17 minutos para ler e tem nível Staff.

Agora projete você mesmo

Rode este caso como uma entrevista na escola de System Design: você toma as decisões, o tutor as questiona e você vê a nota do seu desenho.