Hugging Face smolagents로 AI 에이전트 만들기
Adel Nehme
VP of AI Curriculum, DataCamp


RAG = 정보 검색 + 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)
상위 2개 검색 청크(의미 유사):
[1] 연어 손질 기본 (p. 2) 갈변을 위해 연어의 물기를 닦습니다. 소금, 후추, 신선한 딜 또는 파슬리를 넉넉히 뿌립니다. 소금이 배도록 10분 휴지. 균일한 조리를 위해 실온에 둡니다...
[2] 오븐에서 연어 굽기 (p. 5) 오븐을 200°C(392°F)로 예열. 베이킹시트에 종이 포일을 깔고 레몬 슬라이스와 허브 버터(딜/파슬리)를 올립니다. 10–12분간 살짝 불투명해지고 결이 생길 때까지 굽고, 2분 휴지 후 서빙...
영양 요구를 충족하며 한 주 식단을 50달러 이하로 계획하려면?
답은 여러 문서에 흩어져 있음(예산, 영양, 기법, 레시피).

Hugging Face smolagents로 AI 에이전트 만들기