RAG explicado de forma simples
Autoria: Better Stack · Assistir no YouTube
Vídeo de autoria do canal indicado, não da IANIA; todos os direitos pertencem ao criador. Transcrição, resumo e tradução gerados automaticamente; o conteúdo no idioma original é preservado na versão em idioma original.
Idioma original: inglês
Vídeo original: RAG Simply Explained · Canal: Better Stack · 01:01 · Assistir no YouTube
Tópicos: Dados, bancos de dados e embeddings, Modelos de IA, RAG, busca e recuperação de informação
O vídeo explica como bancos de dados vetoriais permitem buscar informações por significado, mesmo quando as palavras da consulta não aparecem nos documentos. Para isso, o texto é convertido em embeddings, representados como vetores de números. O RAG conecta esses bancos de dados a modelos: a aplicação recupera trechos relevantes e os inclui no prompt junto à pergunta original. Assim, o modelo pode responder com base em documentos que não estavam nos dados de treinamento.
Pontos-chave
Seção intitulada “Pontos-chave”- Bancos de dados vetoriais permitem pesquisar informações por significado, em vez de depender de palavras coincidentes.
- Um embedding representa o significado de um texto como uma lista de números.
- Textos com significados próximos ficam próximos no espaço vetorial, enquanto textos diferentes ficam mais distantes.
- O banco de dados armazena cada embedding junto ao texto original.
- A pergunta do usuário também é convertida em embedding para encontrar os textos mais próximos.
- RAG conecta bancos de dados vetoriais a modelos de linguagem.
- Os trechos recuperados são incluídos no prompt junto à pergunta original.
- Com o texto recuperado como contexto, o modelo pode responder sobre documentos que não conhecia durante o treinamento.
Capítulos
Seção intitulada “Capítulos”| Início | Capítulo | Resumo |
|---|---|---|
| 00:00 | Busca por significado | O vídeo apresenta bancos de dados vetoriais e explica como eles podem encontrar documentos mesmo sem palavras em comum com a consulta. |
| 00:30 | Embeddings e vetores | Uma analogia com frutas ilustra como embeddings representam significados em várias dimensões e ajudam a localizar textos semelhantes. |
| 00:30 | Como o RAG usa os trechos recuperados | O RAG inclui no prompt os trechos encontrados pelo banco de dados vetorial para que o modelo responda com base neles. |
Citações
Seção intitulada “Citações”Um banco de dados vetorial permite armazenar e pesquisar dados por significado. — 00:00
Uma busca por como recebo meu dinheiro de volta pode encontrar um documento chamado política de reembolso. — 00:00
Um embedding faz o mesmo com milhares de direções. — 00:30
O modelo escreve a resposta usando esse texto. — 01:01
Conceitos e entidades
Seção intitulada “Conceitos e entidades”- vector database (conceito): Banco de dados que armazena e pesquisa informações com base na proximidade entre seus significados.
- embedding (conceito): Representação numérica do significado de um texto, usada para comparar conteúdos.
- vector (conceito): Lista de números que representa um embedding e permite posicionar o conteúdo em um espaço de múltiplas dimensões.
- RAG (conceito): Abordagem que recupera trechos relevantes de uma fonte de dados e os fornece ao modelo para gerar uma resposta.
Tradução completa (pt-BR)
Seção intitulada “Tradução completa (pt-BR)”00:00 Certo, então, além dos próprios modelos, você vai querer fazer perguntas sobre coisas que o modelo nunca aprendeu durante o treinamento, como os documentos internos da sua empresa ou talvez algo que aconteceu ontem. Para começar, um banco de dados vetorial permite armazenar e pesquisar dados por significado. Assim, uma busca por “como faço para receber meu dinheiro de volta?” pode encontrar um documento chamado “política de reembolso”, embora os dois não compartilhem nenhuma palavra. Para isso, o texto é transformado em embeddings, que são longas listas de números que capturam seu significado. Você pode imaginar isso como um gráfico com duas direções distintas. Digamos
00:30 o quão redondo algo é e o quanto é uma fruta: uma laranja e uma maçã ficam próximas, enquanto um carro acaba ficando longe. Um embedding faz a mesma coisa com milhares de direções. Essa coleção de números é chamada de vetor, e é daí que vem o nome do banco de dados. Ele armazena cada embedding junto do texto original e, quando você faz uma busca, sua pergunta também é transformada em um embedding, para que o banco de dados possa retornar o texto que fica mais próximo dela. RAG, ou geração aumentada por recuperação, conecta bancos de dados vetoriais aos modelos. Quando você faz uma pergunta, seu aplicativo, hum, pesquisa no banco de dados vetorial os
01:01 trechos de texto mais relevantes e depois os insere no prompt junto com sua pergunta original. Então, o modelo escreve a resposta usando esse texto, para poder responder a perguntas sobre um documento com o qual nunca foi treinado.
Transcrição original
[00:00] Okay, so beyond the models themselves, you’ll want to ask questions the model never learned during training, like about your company’s internal docs or maybe something that happened yesterday. First up, a vector database is which lets you store and search data by meaning. So, a search for how do I get my money back can find a document called refund policy even though the two don’t share any single words. To do that, the text gets turned into embeddings, which are long lists of numbers that capture its meaning. You can picture it as a chart with two distinct directions. Say
[00:30] how round something is and how much of a fruit it is an orange and an apple land close together and a car ends up far away. An embedding does the same thing with thousands of directions. That collection of numbers is called a vector and it’s where the database gets its name. It stores each embedding next to the original text and when you search, your question gets turned into an embedding, too, so the database can hand back the text that sits closest to it. RAG or retrieval augmented generation connects vector databases to the models. When you ask a question, your app uh searches the vector database for the
[01:01] most relevant chunks of text, then pastes them into the prompt along with your original question. The model then writes its answer using that text, so it can answer questions about a document it was never trained on.