AI Agents with Hugging Face smolagents
Adel Nehme
VP of AI Curriculum, DataCamp


RAG = kombinace vyhledávání informací s generováním pomocí LLM

from langchain_community.document_loaders import PyPDFDirectoryLoader
from langchain_text_splitters import RecursiveCharacterTextSplitter
# Load documentation from directory
loader = PyPDFDirectoryLoader("cooking_docs", mode="single")
documents = loader.load()
# Split into chunks
splitter = RecursiveCharacterTextSplitter(
chunk_size=1000,
chunk_overlap=200
)
chunks = splitter.split_documents(documents)
from langchain_huggingface import HuggingFaceEndpointEmbeddings
from langchain_community.vectorstores import FAISS
# Create embeddings and vector store
embedder = HuggingFaceEndpointEmbeddings(
model="BAAI/bge-base-en-v1.5",
task="feature-extraction",
)
vector_store = FAISS.from_documents(chunks, embedder)
query = "How do I cook salmon with herbs?"
# Similarity search
relevant_docs = vector_store.similarity_search(query, k=3)
# Create a context string
context = "\n\n".join(doc.page_content for doc in relevant_docs)
Nejrelevantnější 2 úryvky (sémantická shoda):
[1] Základy přípravy lososa (s. 2) Lososa osušte pro lepší zhnědnutí. Dostatečně ochuťte solí, pepřem a čerstvým koprem nebo petrželkou. Nechte filety 10 minut odležet, aby sůl prostoupila maso. Pro rovnoměrné propečení přiveďte na pokojovou teplotu...
[2] Pečení lososa v troubě (s. 5) Troubu předehřejte na 200 °C. Filety položte na plech vyložený pečicím papírem, přidejte plátky citronu a bylinkové máslo (kopr/petrželka). Pečte 10–12 minut, dokud není maso neprůhledné a snadno se loupe; před podáváním nechte 2 minuty odpočinout...
Jak naplánovat týdenní jídelníček do 50 $ při splnění všech nutričních požadavků?
Odpověď je rozložena napříč dokumenty (rozpočet, výživa, techniky, recepty).

AI Agents with Hugging Face smolagents