๐ค 08. HF Agents Course ๋ณธํธ 6 - smolagents๋ก ๋๊ตฌ ๋ผ์ฐํ ๊ณผ ์ฌ์๋ ์ค๊ณํ๊ธฐ
์ด๋ฒ ํธ ๋ชฉํ๋ ๊ฐ๋จํฉ๋๋ค. ์ง๋ฌธ ์ ํ์ ๋ฐ๋ผ ๋๊ตฌ๋ฅผ ๋๋ ์ฐ๊ณ , ์คํจํ๋ฉด ์์ ํ๊ฒ 1ํ ์ฌ์๋ํ๋ ์์ด์ ํธ๋ฅผ ๋ง๋ญ๋๋ค.
flowchart TD A[์ฌ์ฉ์ ์ง๋ฌธ] --> B{์ง๋ฌธ ๋ถ๋ฅ} B -->|์ต์ ์ ๋ณด| C[Web Search Tool] B -->|๊ณ์ฐ/๋ณํ| D[Python Tool] C --> E{๊ฒ์ฆ ํต๊ณผ?} D --> E E -->|Yes| F[์ต์ข ๋ต๋ณ] E -->|No| G[์์ธ ๊ธฐ๋ก ํ 1ํ ์ฌ์๋] G --> H{์ฌ์๋ ์ฑ๊ณต?} H -->|Yes| F H -->|No| I[์คํจ ์ฌ์ + ๋ค์ ์ก์ ]
์ค์ต ์ค๋น
1) ๋๊ตฌ ์ค์น
python -m venv .venv
source .venv/bin/activate
pip install -U smolagents duckduckgo-search2) ์ ๋ ฅ ํ์ผ
task.txt
2026๋
๊ธฐ์ค Hugging Face Agents Course ํ์ต์๊ฐ ์ค๋ฌด ์ ์ฉ ์ ์ ํ์ธํด์ผ ํ ์ฒดํฌ๋ฆฌ์คํธ 5๊ฐ๋ฅผ ์ ๋ฆฌํด์ค.
๊ฐ ํญ๋ชฉ๋ง๋ค ๊ทผ๊ฑฐ ๋งํฌ๋ฅผ ๋ถ์ฌ์ค.3) ์คํ ์ฝ๋
router_retry_agent.py
from pathlib import Path
from smolagents import CodeAgent, DuckDuckGoSearchTool, PythonInterpreterTool, InferenceClientModel
model = InferenceClientModel(model_id="Qwen/Qwen2.5-Coder-32B-Instruct")
agent = CodeAgent(
tools=[DuckDuckGoSearchTool(), PythonInterpreterTool()],
model=model,
max_steps=6,
)
goal = Path("task.txt").read_text(encoding="utf-8").strip()
prompt = f"""
๊ท์น:
1) ๋จผ์ ์ง๋ฌธ์ '๊ฒ์ํ' ๋๋ '๊ณ์ฐํ'์ผ๋ก ๋ถ๋ฅํด ๋๊ตฌ๋ฅผ ์ ํํ ๊ฒ.
2) ๊ฒฐ๊ณผ์๋ ์ฒดํฌ๋ฆฌ์คํธ 5๊ฐ + ๊ทผ๊ฑฐ URL 3๊ฐ ์ด์ ํฌํจ.
3) URL์ด 3๊ฐ ๋ฏธ๋ง์ด๋ฉด ์คํจ๋ก ํ๋จํ๊ณ ์์ธ 1์ค ์์ฑ ํ 1ํ ์ฌ์๋.
4) ์ต์ข
์ถ๋ ฅ์ ํ๊ตญ์ด ๋งํฌ๋ค์ด.
์์ฒญ: {goal}
""".strip()
result = agent.run(prompt)
Path("result.md").write_text(str(result), encoding="utf-8")
print("DONE: result.md")4) ์คํ
python router_retry_agent.py5) ์ฑ๊ณต ํ์
result.md์์ฑ- ์ฒดํฌ๋ฆฌ์คํธ 5๊ฐ ์กด์ฌ
- ๊ทผ๊ฑฐ URL 3๊ฐ ์ด์
- ์ฌ์๋ ๋ฐ์ ์ ์คํจ ์์ธ 1์ค ๊ธฐ๋ก
์ด๋ณด์์ฉ ํต์ฌ ์ค๋ช
- ๋ผ์ฐํ : โ๋ฌด์จ ๋๊ตฌ๋ฅผ ์ธ์งโ๋ฅผ ๋จผ์ ์ ํ๋ฉด ํ์ง์ด ํ๋ค๋ฆฌ์ง ์์ต๋๋ค.
- ์ฌ์๋ ์ ํ: ๋ฌดํ ์ฌ์๋๋ฅผ ๋ง๊ธฐ ์ํด 1ํ๋ก ๊ณ ์ ํฉ๋๋ค.
- ์ฑ๊ณต ๊ธฐ์ค ๋ช ์: URL ๊ฐ์์ฒ๋ผ ๊ธฐ๊ณ์ ์ผ๋ก ๊ฒ์ฆ ๊ฐ๋ฅํ ์กฐ๊ฑด์ ๋ฃ์ด์ผ ์๋ํ์ ์์ ํฉ๋๋ค.
์ค๋ฌด ์ ์ฉ ํฌ์ธํธ
- ๋ฐฐ์น ์์
์์๋
result.md๋์ JSON ์คํค๋ง๋ก ์ ์ฅํ์ธ์. - ์คํจ ์ผ์ด์ค๋ ๋ณ๋ ํ์ผ(
failed/)์ ์์ ์ฌ์ฒ๋ฆฌํ๋ฉด ์ด์ ํจ์จ์ด ์ฌ๋ผ๊ฐ๋๋ค. - ํ ์ด์ ์ โ์ฌ์๋ ํ์, ํ์์์, ์ต์ ๊ทผ๊ฑฐ ์โ๋ฅผ ๊ณตํต ์ ์ฑ ์ผ๋ก ๊ณ ์ ํ์ธ์.
์์ฑํ AI ํ์ฉ ๊ณ ์ง
์ด ๋ฌธ์๋ ์์ฑํ AI๋ฅผ ํ์ฉํด ์ด์์ ์์ฑํ๊ณ , ์ฌ๋์ด ์ฌํ ์ ์ฐจยท๊ตฌ์กฐยท์ ํ์ฑ์ ๊ฒํ ํด ๋ณด์ํ์ต๋๋ค.