Unidade 3 / 12

Gerando respostas a partir da base de conhecimento (introdução ao RAG)

Ganhos:

  • Compreender a lógica da geração baseada em conhecimento (RAG) e por que ela reduz as alucinações
  • Capacidade de fazer com que o modelo responda com citação, com base apenas nos documentos de origem fornecidos
  • Capacidade de gerenciar questões que não estão na fonte, transferindo-as com segurança, sem inventar perguntas

Um modelo de linguagem “sabe” muito, mas não conhece a política de devolução da sua empresa hoje, sua lista de preços atual ou seu contrato de remessa que mudou ontem. Pior ainda, quando não sabe, muitas vezes inventa e escreve em tom extremamente confiante. Esta é uma falha fatal no atendimento ao cliente: o modelo diz “Os reembolsos são emitidos em 30 dias”, enquanto sua apólice pode ser de 14 dias. A abordagem que preenche essa lacuna é chamada RAG: Retrieval-Augmented Generation, ou seja, “produção aumentada por recuperação”.

A ideia é simples: o modelo responde à pergunta não de memória, mas a partir dos documentos de origem corretos colocados à sua frente naquele momento. Primeiro, o documento correto relevante para a questão é "recuperação" e, em seguida, o modelo "gera" a resposta com base apenas nesse trecho. Nesta unidade, você entenderá a lógica do RAG e aprenderá como controlar o modelo para que ele se atenha apenas à fonte verificada que você fornece.

Nota: Esta unidade ensina a lógica de funcionamento e o lado imediato do RAG. Os sistemas de recuperação automática de documentos em escala empresarial (banco de dados vetorial, etc.) requerem uma instalação técnica; A disciplina aqui é a base para que esse sistema responda corretamente.

Por que o RAG reduz as alucinações?

Alucinação é quando o modelo produz informações irreais como se fossem reais. O modelo está programado para produzir uma resposta que parece “possível” quando detecta uma lacuna; Não sabe se é verdade ou não. O RAG preenche essa lacuna: você fornece ao modelo o texto relevante junto com a pergunta e diz “apenas responda daqui”. Dessa forma o modelo não “precisa” se ajustar.

Existem três componentes:

  • Base de conhecimento: textos confiáveis, como perguntas frequentes, documentos de políticas, manuais de produtos, listas de preços.
  • Recuperação: Encontrar o documento que contém a resposta à pergunta e entregá-lo ao modelo.
  • Edição limitada: O modelo responde com orçamento, baseado apenas na peça fornecida.

Passo a passo: uma resposta fiel à fonte

  1. Prepare a fonte. Encontre o texto no qual a resposta se baseará (política, FAQ) num formato claro e atualizado.
  2. Incorpore a fonte no prompt. Coloque o texto em uma tag como <source>.
  3. Escreva a regra de lealdade. "Use apenas as informações da fonte; não se afaste da fonte."
  4. Faça a citação obrigatória. Deixe-o indicar em qual seção a resposta se baseia.
  5. Identifique o comportamento sem recursos. Se a resposta não estiver na fonte, deixe-o dizer “não tenho essa informação” e repasse-a.
  6. Verificar. Confirme a resposta comparando-a com a frase original em que se baseia.

Prompts copiáveis

Prompt de resposta com base na fonte subjacente:

Função: você é um assistente de suporte ao cliente. Responda a pergunta SOMENTE com base nas informações do bloco <source>abaixo. Não adicione nenhuma informação que não esteja na fonte, adivinhe ou responda com base no seu conhecimento geral. Adicione a seção na qual você está confiando no final da sua resposta no formato "[Fonte: ...]". Se a resposta não estiver na fonte, escreva o seguinte: "Não tenho informações definitivas sobre este assunto, estou transferindo você para um funcionário que possa dar a resposta correta."<source>{{ policy_or_faq_text }}</source>Pergunta: {{ customer_question }}

No caso de múltiplas fontes, o prompt para mostrar em qual documento se baseia:

Existem vários recursos numerados abaixo. Ao responder à pergunta, indique o número da fonte que você usou, como [Fonte 2]. Se mais de uma fonte contradiz você, diga isso claramente e diga que você deve perguntar qual delas é mais atualizada.<sources>1) {{ source_1 }}2) {{ source_2 }}3) {{ source_3 }}</sources>Pergunta: {{ customer_question }}

Prompt que gerencia com segurança a pergunta que não é de origem:

Se a resposta à pergunta for PARCIALMENTE encontrada na fonte: responda apenas a parte coberta pela fonte e diga “este detalhe não está na fonte” para o restante. Nunca preencha a parte que falta adivinhando.

Prompt que traduz a resposta para o idioma do cliente, mas permanece fiel à fonte:

Traduza a expressão oficial/técnica da fonte para uma linguagem simples que o cliente possa entender, mas NÃO altere o significado e os valores numéricos (dia, valor, taxa). Por exemplo, arredondando “14 dias corridos” para “cerca de duas semanas”; mantenha o valor total.

Alerta Fraco/Prompt Forte

Alerta fraco

Alerta poderoso

"Conte-nos sobre nossa política de devolução"

Fonte incorporada + "responda apenas aqui" + solicita orçamento

Resposta da memória do modelo (talvez errada)

Resposta do seu documento atual

Se não estiver na fonte, ele inventa

Ele diz “não tenho essa informação” e passa adiante.

Pode arredondar e distorcer números

Mantém dia/valor/taxa exatamente

A diferença é que o prompt forte dá ao modelo uma âncora (texto fonte) e um banimento (saída da fonte). O modelo não fala mais de memória, mas da realidade que tem diante de si.

Três Mini Estojos

Caso 1 — A velha armadilha política. “Devoluções aceitas em 30 dias”, disse o bot de uma loja enquanto funcionava sem crédito; Porém, a empresa reduziu o prazo para 14 dias. Quando o texto da política atualizado é adicionado à fonte na instalação do RAG, o bot agora responde "14 dias corridos [Fonte: Política de Devolução, artigo 2]". As disputas de reembolso decorrentes de falsas promessas foram redefinidas.

Caso 2 — Capturando a contradição. Um cliente perguntou sobre os custos de envio. Tanto a lista de preços antiga como a nova foram inseridas no sistema como fontes. Graças ao prompt de múltiplas fontes, o modelo disse: “Duas fontes fornecem preços diferentes (49 TL e 59 TL); preciso confirmar o atual” e transmitiu o problema ao humano. Em vez de informar ao cliente uma quantia incorreta, ele comunicou a incerteza com honestidade.

Caso 3 — Disciplina de resposta parcial. “Você envia o produto para o exterior e quem paga a taxa alfandegária?” Na pergunta, a fonte disse apenas que o envio foi feito, não havia nada sobre quem pagou o imposto. A modelo dizia: “Sim, o envio é feito para o exterior [Fonte: Cargo FAQ]. Porém, não está indicado neste documento quem paga os direitos aduaneiros; estou transferindo você ao funcionário para esclarecer isso”. Em vez de uma resposta meio verdadeira e meio fabricada, produziu um resultado honesto e confiante.

Dica: mantenha a versão mais atual e de fonte única de verdade de sua base de conhecimento. Ter as mesmas informações (por exemplo, período de retorno) escritas de forma diferente em três documentos separados é o maior inimigo do RAG; O modelo responde de maneira diferente dependendo de para quem olha. Primeiro desduplique seus documentos e depois automatize-os.

Verificação: não relaxe só porque a fonte existe

RAG reduz bastante a alucinação, mas não a reinicia. O modelo pode, por vezes, interpretar mal a fonte, confundindo duas frases ou tirando uma “conclusão” que não está na fonte. É por isso que o requisito de citação é fundamental: abra a seção na qual a resposta afirma se basear e verifique se ela realmente diz isso. Esse controle é inegociável, principalmente em respostas que contenham números (dia, valor, taxa) e condições (exceção, condição).

Cuidado: Se a fonte em si estiver errada ou desatualizada, o RAG repete fielmente esse erro. Dizer “o modelo fala da fonte” não significa “o modelo fala corretamente”; Você é responsável pela atualidade e precisão de sua fonte.

Mantendo a base de conhecimento pronta para resposta

A qualidade do RAG depende em grande parte de como o texto fonte é escrito. O modelo retorna uma resposta muito mais precisa do que textos bem estruturados, intitulados e de tópico único. Conselhos práticos: escreva suas políticas em seções curtas e intituladas, em vez de parágrafos longos e aninhados; Deixe que cada seção responda a uma única pergunta (“Quantos dias é o período de devolução?”, “Quais produtos não podem ser devolvidos?”). Manter as perguntas frequentes (FAQs) em formato de perguntas e respostas torna mais fácil para o modelo encontrar a peça certa. Indique valores como data, valor e taxa de forma clara e em um só lugar do texto; Escrever o mesmo número de forma diferente em seções diferentes confunde o modelo.

Outro hábito importante é manter viva a base de conhecimento. As políticas, preços e promoções variam; Se a fonte não for atualizada, o modelo continua a repetir com segurança a velha verdade. A cada mudança de política, atualize a fonte e faça novamente ao modelo algumas perguntas de teste sobre o tópico alterado para confirmar se ele fornece a resposta correta. Esta manutenção pequena, mas regular, evita que o sistema RAG “dê errado silenciosamente” ao longo do tempo.

Erros comuns

  • Dizer “explique nossa política” sem enterrar a fonte e confiar na memorização do modelo.
  • Não definir o limite "resposta somente da fonte" e comportamento não relacionado à fonte.
  • Não solicitar citação/referência da fonte e deixar a resposta não verificável.
  • Manter versões conflitantes das mesmas informações em vários documentos da base de conhecimento.
  • Permitindo que o modelo arredonda/interprete valores numéricos.
  • Esquecer de atualizar a fonte, fazendo com que o modelo repita fielmente informações antigas.

Em resumo

  • RAG significa que o modelo produz sua resposta a partir do documento de origem atual, e não da memória.
  • A forma mais prática de diminuir a alucinação: enterrar a fonte, dizer “só responda aqui”, pedir citação.
  • Se a resposta não estiver na fonte, não se deve ajustar um modelo; Ele deveria dizer “Não tenho” e entregá-lo.
  • Torne o modelo ciente de fontes conflitantes; Você preservou exatamente os valores numéricos.
  • A precisão do RAG depende da atualidade da sua fonte; Sempre confirme a cotação.

Tarefa de aplicativo

Pegue um texto de política real (devolução, envio ou associação) de sua própria empresa e incorpore-o como fonte no prompt básico do RAG acima. Em seguida, faça três perguntas: (1) uma pergunta cuja resposta esteja clara na fonte, (2) uma pergunta cuja resposta não esteja de forma alguma na fonte, (3) uma pergunta cuja resposta esteja apenas incompleta na fonte. Verifique se o modelo responde corretamente, diz “Não tenho” e marca honestamente a resposta parcial e a falta, respectivamente. Corrija o comportamento desviante fortalecendo as regras de lealdade e não recursos no prompt.

lista de verificação

  • [] Incorporei a fonte atual na qual a resposta será baseada no prompt.
  • [] Adicionei a regra "Responda apenas da fonte, não vá além".
  • [] Coloquei um requisito de referência/citação da fonte.
  • [] Defini o comportamento de delegação se a resposta não estiver disponível na fonte.
  • [ ] Exigi que os valores numéricos fossem preservados com exatidão.
  • [] Confirmei a resposta da frase fonte em que se baseia.