Revisão RAG

Agentes de IA com Hugging Face smolagents

Adel Nehme

VP of AI Curriculum, DataCamp

Exemplo: Assistente de Cozinha Inteligente

  • Precisa de acesso a conhecimento culinário
  • Info espalhada por receitas, guias e recursos de planejamento
  • Deve buscar e extrair apenas os detalhes mais relevantes
Agentes de IA com Hugging Face smolagents

O que é Geração Aumentada por Recuperação (RAG)?

RAG = Combina recuperação de informação com geração por LLM

Agentes de IA com Hugging Face smolagents

O Fluxo de Trabalho RAG

Agentes de IA com Hugging Face smolagents

Carregando e Dividindo Documentos

from langchain_community.document_loaders import PyPDFDirectoryLoader
from langchain_text_splitters import RecursiveCharacterTextSplitter

# Carregar documentação do diretório
loader = PyPDFDirectoryLoader("cooking_docs", mode="single")
documents = loader.load()

# Dividir em partes
splitter = RecursiveCharacterTextSplitter(
    chunk_size=1000,
    chunk_overlap=200
)
chunks = splitter.split_documents(documents)
Agentes de IA com Hugging Face smolagents

Criando uma Loja de Vetores

from langchain_huggingface import HuggingFaceEndpointEmbeddings
from langchain_community.vectorstores import FAISS

# Criar embeddings e loja de vetores
embedder = HuggingFaceEndpointEmbeddings(
    model="BAAI/bge-base-en-v1.5",
    task="feature-extraction",
)
vector_store = FAISS.from_documents(chunks, embedder)
Agentes de IA com Hugging Face smolagents

Consultando a Loja de Vetores

query = "Como cozinhar salmão com ervas?"

# Busca por similaridade
relevant_docs = vector_store.similarity_search(query, k=3)

# Criar uma string de contexto
context = "\n\n".join(doc.page_content for doc in relevant_docs)
Agentes de IA com Hugging Face smolagents

Consulta: Como cozinhar salmão com ervas?

2 principais trechos recuperados (correspondências semânticas):

[1] Noções básicas de preparo de salmão (p. 2) Seque o salmão para garantir o dourado. Tempere com sal, pimenta e dill ou salsa fresca. Deixe descansar 10 minutos para o sal penetrar. Para cozinhar uniformemente, traga à temperatura ambiente...

[2] Assando salmão no forno (p. 5) Pré-aqueça o forno a 200°C. Coloque os filés em uma bandeja forrada com papel manteiga, cubra com fatias de limão e manteiga de ervas (dill/salsa). Asse por 10 a 12 minutos até ficar opaco e macio; descanse 2 minutos antes de servir...

Agentes de IA com Hugging Face smolagents

Limitações do Pipeline RAG Tradicional

Como planejar uma semana de refeições por menos de $50 atendendo a todos os requisitos nutricionais?

A resposta está espalhada por documentos (orçamento, nutrição, técnicas, receitas).

Agentes de IA com Hugging Face smolagents

Vamos praticar!

Agentes de IA com Hugging Face smolagents

Preparing Video For Download...