๐ค 56. HF Agents Course ๋ณธํธ 1 - Alfred์ Unit 1 ํต์ฌ ์ง๋๋ก ์ฒซ ์์ด์ ํธ ํ๋ฆ ์ดํดํ๊ธฐ
๋ชฉํ: Hugging Face Agents Course ๋ณธํธ 1์ ํต์ฌ์ ๊ฐ๋ + ์ฌํ ์ค์ต์ผ๋ก ํ ๋ฒ์ ์ดํดํ๋ค. ์ฝ๊ณ ๋๋ด์ง ์๊ณ ,
smolagents๋ก ์์ฃผ ์์ ์์ด์ ํธ๋ฅผ ์ง์ ์คํํด ๋ณด๋ฉฐ ์์ด์ ํธ๊ฐ ์ ํ์ํ์ง, ์ด๋ป๊ฒ ์์ง์ด๋์ง ๊ฐ์ ์ก๋๋ค.
Hugging Face Agents Course ์ ์ฅ์๋ ์ ์ฒด ๊ณผ์ ์ ๊ธฐ์ด โ ํ๋ ์์ํฌ โ ์ ์ค์ผ์ด์ค โ ์ต์ข
ํ๋ก์ ํธ 4๊ฐ ํฐ ๋จ์๋ก ์๊ฐํ๋ค. ๊ทธ์ค Unit 1์ ์ถ๋ฐ์ ์ด๋ค. ๊ณต์ Unit 1 ์๊ฐ๋ ์ฌ๊ธฐ์ ์์ด์ ํธ์ ์ ์, LLM์ ์ญํ , ๋๊ตฌ์ ํ๋, Think โ Act โ Observe ์ํฌํ๋ก์ฐ, ๊ทธ๋ฆฌ๊ณ smolagents๋ก ๋ง๋๋ ์ฒซ ๋ฒ์งธ ์์ด์ ํธ Alfred๋ฅผ ๋ค๋ฃฌ๋ค๊ณ ์ค๋ช
ํ๋ค.
ํต์ฌ์ ๋จ์ํ๋ค. ์์ด์ ํธ๋ ๊ทธ๋ฅ ๋ง์ ์ํ๋ ์ฑ๋ด์ด ์๋๋ผ, ๋ชฉํ๋ฅผ ๋ฐ๊ณ , ๋๊ตฌ๋ฅผ ์ฐ๊ณ , ๊ฒฐ๊ณผ๋ฅผ ๊ด์ฐฐํ๋ฉด์ ๋ค์ ํ๋์ ์ ํ๋ ์์คํ ์ด๋ค.
Unit 1์์ ๋จผ์ ์ก์์ผ ํ ํ ์ค ์์ฝ
- ์์ด์ ํธ = ์ถ๋ก ํ๋ ๋ชจ๋ธ + ํ๋ํ ์ ์๋ ๋๊ตฌ ์ธํธ
- LLM์ ์์ด์ ํธ์ ๋๋๋ค.
- ๋๊ตฌ๋ ์์ด์ ํธ์ ๋ชธ์ด๋ค.
- ์์ด์ ํธ๋ ๋ณดํต ์๊ฐ โ ํ๋ โ ๊ด์ฐฐ ๋ฃจํ๋ฅผ ๋๋ค.
smolagents๋ ์ด ๋ฃจํ๋ฅผ ์ ์ ์ฝ๋๋ก ๋น ๋ฅด๊ฒ ์คํํ๊ฒ ํด์ฃผ๋ ๊ฒฝ๋ ํ๋ ์์ํฌ๋ค.
๊ณต์ ์ฝ์ค์์ ๋งํ๋ Alfred๋ ์ ์ค์ํ๊ฐ
Unit 1์ Alfred ์์๋ โ์ค๋ ๋ด์ ๋ ์จ ์ด๋?โ ๊ฐ์ ์ง๋ฌธ์ ๋ฐ์ ์์ด์ ํธ๊ฐ:
- ํ์ํ ์ ๋ณด๋ฅผ ์๊ฐํ๊ณ ,
- ๋ ์จ ๋๊ตฌ๋ฅผ ํธ์ถํ๊ณ ,
- ๊ฒฐ๊ณผ๋ฅผ ๊ด์ฐฐํ ๋ค,
- ์ต์ข ๋ต๋ณ์ ๋ง๋ ๋ค๋ ํ๋ฆ์ ๋ณด์ฌ์ค๋ค.
์ด ์์๊ฐ ์ค์ํ ์ด์ ๋ ์ด๋ณด์๊ฐ ์์ด์ ํธ๋ฅผ ์ถ์ ๊ฐ๋ ์ด ์๋๋ผ ์๋ํ๋ ๋ฃจํ๋ก ์ดํดํ๊ฒ ํด์ฃผ๊ธฐ ๋๋ฌธ์ด๋ค. ์ฆ, โ๋ชจ๋ธ์ด ๋ต์ ๋ฐ๋ก ์ฐ๋ ๊ฒโ๊ณผ โ๋๊ตฌ๋ฅผ ๊ฑฐ์ณ ๋ ๋์ ๋ต์ผ๋ก ๊ฐ๋ ๊ฒโ์ ์ฐจ์ด๋ฅผ ์ฒ์ ์ฒด๊ฐํ๋ ์ง์ ์ด ๋ฐ๋ก ์ฌ๊ธฐ๋ค.
์ ์ฒด ๊ตฌ์กฐ๋ฅผ ๋จผ์ ๊ทธ๋ฆผ์ผ๋ก ๋ณด๊ธฐ
flowchart LR U[์ฌ์ฉ์ ๋ชฉํ ์ ๋ ฅ] --> T[Thought\n๋ฌด์์ด ํ์ํ์ง ํ๋จ] T --> A[Action\n๋๊ตฌ ํธ์ถ ๋๋ ์ฝ๋ ์คํ] A --> O[Observation\n๋๊ตฌ ๊ฒฐ๊ณผ ํ์ธ] O --> D{๋ชฉํ ๋ฌ์ฑ?} D -- ์๋์ค --> T D -- ์ --> F[Final Answer]
์์ด์ ํธ๋ฅผ ๊ฐ์ฅ ์ฝ๊ฒ ์ดํดํ๋ ๋น์
๊ณต์ Unit 1์ Alfred์๊ฒ โ์ปคํผ ํ ์ ๋ถํํด์โ๋ผ๊ณ ์์ฒญํ๋ ๋น์ ๋ฅผ ์ฌ์ฉํ๋ค. ์ด ๋น์ ๋ฅผ ์ค๋ฌด์์ผ๋ก ๋ฒ์ญํ๋ฉด ์๋์ ๊ฐ๋ค.
- ์ฌ์ฉ์ ๋ชฉํ: ์ปคํผ๋ฅผ ๊ฐ์ ธ์๋ผ
- ์ถ๋ก /๊ณํ: ์ฃผ๋ฐฉ์ผ๋ก ๊ฐ๋ค โ ์ปคํผ๋จธ์ ์ ์ด๋ค โ ์ปคํผ๋ฅผ ๋ง๋ ๋ค โ ๊ฐ์ ธ์จ๋ค
- ๋๊ตฌ/ํ๋: ์ปคํผ๋จธ์ ์ฌ์ฉ, ์ด๋, ์ ๋ฌ
- ๊ด์ฐฐ: ์ปคํผ๊ฐ ์ค๋น๋๋์ง ํ์ธ
- ์ต์ข ์๋ต: ์ปคํผ๋ฅผ ์ ๋ฌ
์ค๋ฌด์์๋ ๊ฐ๋ค. ์๋ฅผ ๋ค์ด โ๊ฒฝ์์ฌ ์์ฝ ๋ณด๊ณ ์ ๋ง๋ค์ด์คโ๋ผ๋ ์์ฒญ์ ๋ฐ์ผ๋ฉด ์์ด์ ํธ๋:
- ๊ฒ์ ๋๊ตฌ๋ก ์๋ฃ๋ฅผ ๋ชจ์ผ๊ณ ,
- ํ์ํ ๋ฐ์ดํฐ๋ง ์ ๋ฆฌํ๊ณ ,
- ๋ถ์กฑํ๋ฉด ๋ค์ ๊ฒ์ํ๊ณ ,
- ๋ง์ง๋ง์ ์์ฝ๋ณธ์ ๋ธ๋ค.
์ฆ ์์ด์ ํธ์ ๊ฐ์น๋ ๋ต๋ณ ์์ฒด๋ณด๋ค ๋ต๋ณ์ ์ด๋ฅด๊ธฐ ์ํ ํ๋ ๊ฐ๋ฅ์ฑ์ ์๋ค.
smolagents๋ ์ฌ๊ธฐ์ ์ด๋ค ์ญํ ์ ํ๋
smolagents ๊ณต์ ๋ฌธ์๋ ์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ์ ์ฝ๋๋ก ๊ฐ๋ ฅํ ์์ด์ ํธ๋ฅผ ์คํํ ์ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ์๊ฐํ๋ค. ํนํ CodeAgent๋ ํ๋์ JSON์ด ์๋๋ผ ํ์ด์ฌ ์ฝ๋ ํํ๋ก ์์ฑํ๊ณ ์คํํ๋ ๋ฐฉ์์ ์ด์ ์ ๋๋ค.
์ ๋ฌธ์ ๊ด์ ์์ ์ด๊ฒ ์ข์ ์ด์ ๋ ๋ ๊ฐ์ง๋ค.
- ๋๊ตฌ ํธ์ถ์ ํจ์ ํธ์ถ์ฒ๋ผ ์๊ฐํ ์ ์์ด์ ์ดํด๊ฐ ์ฝ๋ค.
- ์ฌ๋ฌ ๋จ๊ณ ํ๋์ ์ฝ๋๋ก ๋ฌถ๊ธฐ ์ฌ์์ ์ดํ ํ์ฅ์ด ํธํ๋ค.
๋ค๋ง ๊ณต์ ๋ฌธ์๋ ๋ถ๋ช ํ ๊ฒฝ๊ณ ํ๋ค. ์ฝ๋ ์คํ์ ๋ณด์ ๋ฆฌ์คํฌ๊ฐ ์์ผ๋ฏ๋ก ์๋๋ฐ์ค ์ฌ์ฉ์ ๊ถ์ฅํ๋ค. ํ์ต ๋จ๊ณ์์ ๋ก์ปฌ์์ ์์ ์์ ๋ก ๊ฐ์ ์ก๋, ์ด์ ๋จ๊ณ์์ Docker/E2B ๊ฐ์ ๊ฒฉ๋ฆฌ๋ฅผ ๊ณ ๋ คํด์ผ ํ๋ค.
์ฌ๊ธฐ์ ๋ฐ๋ก ์ฌํํ ์ต์ ์ค์ต
์ด๋ฒ ๊ธ์ ์ค์ต์ Alfred ์ ์ฒด Space๋ฅผ ๋ณต์ ํ๋ ๋์ , ๊ณต์ ๊ฐ๋ ์ ์ดํดํ๊ธฐ ์ํ ์ต์ ๋ฒ์ ์ผ๋ก ์ก๋๋ค. ๋ชฉํ๋ โ์๋ ์๋ฆฌ ํ์ธโ์ด๋ค.
์ฐ๋ฆฌ๊ฐ ๋ง๋ค ๊ฒ์ ์๋ ํ๋ฆ์ด๋ค.
- ์ฌ์ฉ์๊ฐ ์๊ฐ ํ์ธ ์์ฒญ
- ์์ด์ ํธ๊ฐ ์๊ฐ๋ ๋๊ตฌ ์ฌ์ฉ
- ๊ฒฐ๊ณผ ๊ด์ฐฐ
- ์ต์ข ๋ต๋ณ ์์ฑ
๋ ์จ API๊น์ง ๋ถ์ด์ง ์๋ ์ด์ ๋ ์ด๋ณด์๊ฐ ์ฒ์๋ถํฐ ์ธ๋ถ API ์ค์ ๋๋ฌธ์ ๋งํ์ง ์๊ฒ ํ๊ธฐ ์ํด์๋ค.
์ค์ต ๊ฒฐ๊ณผ๋ฌผ
ํ์ผ 1๊ฐ๋ฅผ ๋ง๋ ๋ค.
first_agent_min.py
์ด ์คํฌ๋ฆฝํธ๋ smolagents์ CodeAgent์ ์๊ฐ๋ ์กฐํ ๋๊ตฌ๋ฅผ ์ฐ๊ฒฐํด, ์์ฃผ ์์ Alfred ์คํ์ผ ์์ด์ ํธ๋ฅผ ์คํํ๋ค.
Step 1) ์์ ํด๋ ๋ง๋ค๊ธฐ
๋๊ตฌ
- ํฐ๋ฏธ๋
์ ๋ ฅ
mkdir -p ~/hf-agents-unit1
cd ~/hf-agents-unit1์คํ ๋ช ๋ น
pwd
ls -la์ฑ๊ณต ํ์
- ํ์ฌ ๊ฒฝ๋ก๊ฐ
hf-agents-unit1๋ก ๋๋๋ค. - ๋น ํด๋ ๋๋ ์ ํด๋๊ฐ ๋ณด์ธ๋ค.
Step 2) ๊ฐ์ํ๊ฒฝ๊ณผ ํจํค์ง ์ค์น
๋๊ตฌ
- ํฐ๋ฏธ๋
์ ๋ ฅ
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -U pip
pip install smolagents pytz์คํ ๋ช ๋ น
python -c "import smolagents, pytz; print('install-ok')"์ฑ๊ณต ํ์
install-ok๊ฐ ์ถ๋ ฅ๋๋ฉด ํต๊ณผ.
์ฐธ๊ณ :
smolagents๋ ๋ชจ๋ธ ์ฐ๊ฒฐ ๋ฐฉ์์ ๋ฐ๋ผ ์ถ๊ฐ ์ค์ ์ด ํ์ํ ์ ์๋ค. Hugging Face Inference๋ฅผ ์ธ ๋ ์ธ์ฆ์ด ํ์ํ๋ฉดHF_TOKEN์ ์ค์ ํ๋ค.
Step 3) ์ต์ ์์ด์ ํธ ์ฝ๋ ์์ฑ
ํ์ผ๋ช
: first_agent_min.py
import datetime
import os
import pytz
from smolagents import CodeAgent, InferenceClientModel, tool
@tool
def get_current_time_in_timezone(timezone: str) -> str:
"""Return the current time for a valid IANA timezone string.
Args:
timezone: A valid timezone like 'Asia/Seoul' or 'America/New_York'.
"""
try:
tz = pytz.timezone(timezone)
current = datetime.datetime.now(tz).strftime("%Y-%m-%d %H:%M:%S")
return f"{timezone} ํ์ฌ ์๊ฐ์ {current}์
๋๋ค."
except Exception as e:
return f"์๊ฐ๋ ์กฐํ ์คํจ: {e}"
model = InferenceClientModel(
model_id="Qwen/Qwen2.5-Coder-32B-Instruct"
)
agent = CodeAgent(
tools=[get_current_time_in_timezone],
model=model,
max_steps=4,
)
prompt = "์์ธ๊ณผ ๋ด์์ ํ์ฌ ์๊ฐ์ ๋น๊ตํด์ ํ๊ตญ์ด๋ก ์งง๊ฒ ์ค๋ช
ํด์ค."
result = agent.run(prompt)
print(result)์ ์ด ์ฝ๋๊ฐ Unit 1๊ณผ ๋ง๋ฟ์ ์๋
tool๋ฐ์ฝ๋ ์ดํฐ: ๋๊ตฌ๋ฅผ ์์ด์ ํธ๊ฐ ์ธ ์ ์๊ฒ ๋ฑ๋กCodeAgent: ํ๋์ ์ฝ๋๋ก ์ฐ๋ ์์ด์ ํธagent.run(...): ์ฌ์ฉ์ ๋ชฉํ๋ฅผ ๋ฃ๊ณ ๋ฃจํ ์์- ์๊ฐ๋ ๋๊ตฌ: Alfred์ ๋ ์จ ๋๊ตฌ๋ฅผ ๋ ์ฌ์ด ๋ฒ์ ์ผ๋ก ์นํํ ๊ฒ
Step 4) ์ฒซ ์คํ
๋๊ตฌ
- ํฐ๋ฏธ๋
์คํ ๋ช ๋ น
source .venv/bin/activate
python first_agent_min.py์ฑ๊ณต ํ์
์๋ 4๊ฐ๋ฅผ ๋ง์กฑํ๋ฉด ์ฑ๊ณต์ด๋ค.
- ํ๋ก๊ทธ๋จ์ด ์์ธ ์์ด ๋๋๋ค.
- ์ถ๋ ฅ์
์์ธ๋๋Asia/Seoul์ด ๋ฐ์๋๋ค. - ์ถ๋ ฅ์
๋ด์๋๋America/New_York์ ํด๋นํ๋ ์ค๋ช ์ด ๋ค์ด๊ฐ๋ค. - ๊ฒฐ๊ณผ๊ฐ ํ๊ตญ์ด ๋ฌธ์ฅ์ผ๋ก ์ ๋ฆฌ๋๋ค.
Step 5) ์ธ์ฆ ์ค๋ฅ๊ฐ ๋๋ฉด ํ๊ฒฝ๋ณ์ ์ถ๊ฐ
์ ๋ ฅ
export HF_TOKEN=hf_your_token์ฌ์คํ
python first_agent_min.py์ฑ๊ณต ํ์
- ์ธ์ฆ ์ค๋ฅ ์์ด ์คํ๋๋ฉด ํต๊ณผ.
Step 6) ์์ด์ ํธ ๋ฃจํ๋ฅผ ๋์ผ๋ก ๊ฒ์ฆํ๊ธฐ
์ ๋ฌธ ๋จ๊ณ์์ โ์ ๋ง ๋๊ตฌ๋ฅผ ์ผ๋๊ฐโ๋ฅผ ํ์ธํ๋ ์ต๊ด์ด ์ค์ํ๋ค. ๊ทธ๋์ ํ๋กฌํํธ๋ฅผ ์๋์ฒ๋ผ ๋ฐ๊ฟ๋ณธ๋ค.
์ ๋ ฅ ๋ณ๊ฒฝ
prompt = "๋ฐ๋์ ์๊ฐ๋ ๋๊ตฌ๋ฅผ ์ฌ์ฉํด์ ์์ธ ํ์ฌ ์๊ฐ์ ์๋ ค์ค."์คํ ๋ช ๋ น
python first_agent_min.py์ฑ๊ณต ํ์
- ๋๊ตฌ ๊ฒฐ๊ณผ ๊ธฐ๋ฐ์ ์๊ฐ ์ ๋ณด๊ฐ ์๋ต์ ๋ฐ์๋๋ค.
- ๋จ์ ์์ ๋ต๋ณ์ด ์๋๋ผ ์ค์ ์๊ฐ ๋ฌธ์์ด์ด ํฌํจ๋๋ค.
Step 7) ์ค๋ฌดํ์ผ๋ก ํ ๋จ๊ณ ํ์ฅํ๊ธฐ
๋ค์์ฒ๋ผ ํ๋กฌํํธ๋ฅผ ๋ฐ๊พธ๋ฉด โ๋๊ตฌ ์ฌ์ฉ + ์์ฝโ ํจํด์ ํ์ธํ ์ ์๋ค.
prompt = "์์ธ๊ณผ ๋ด์์ ํ์ฌ ์๊ฐ ์ฐจ์ด๋ฅผ ๋ฐํ์ผ๋ก ์ง๊ธ ๋ฐ๋ก ํ์ ์ก๊ธฐ ์ข์ ์๊ฐ์ ํ๊ตญ์ด๋ก ์ ์ํด์ค."์ฑ๊ณต ํ์
- ๋จ์ ์๊ฐ ๋์ด์ด ์๋๋ผ ์ถ์ฒ ๋ฌธ์ฅ์ด ๋์จ๋ค.
- ๋๊ตฌ์์ ์ป์ ์๊ฐ ์ ๋ณด๊ฐ ํ๋จ ๊ทผ๊ฑฐ๋ก ์ฐ์ธ๋ค.
์ด๊ฒ ์ค๋ฌด ํฌ์ธํธ๋ค. ์์ด์ ํธ๋ ๋๊ตฌ ๊ฒฐ๊ณผ๋ฅผ ๊ทธ๋ฅ ์ ๋ฌํ๋ ๊ฒ๋ณด๋ค, ํ๋จ ๊ฐ๋ฅํ ํํ๋ก ์ฌ๊ตฌ์ฑํ๋ ๊ฒ์์ ๊ฐ์น๊ฐ ์ปค์ง๋ค.
์ด๋ณด์๊ฐ ์ฌ๊ธฐ์ ๊ผญ ์ดํดํด์ผ ํ ๊ฐ๋ 4๊ฐ
1) ์์ด์ ํธ๋ โ๋ต๋ณ ์์ฑ๊ธฐโ๊ฐ ์๋๋ผ โํ๋ ์์คํ โ์ด๋ค
๊ณต์ Unit 1 ์ ์๋๋ก, ์์ด์ ํธ๋ ๋ชฉํ ๋ฌ์ฑ์ ์ํด ํ๊ฒฝ๊ณผ ์ํธ์์ฉํ๋ค. ์ฆ, ์ธ๋ถ ๋๊ตฌ๋ฅผ ์ธ ์ ์์ด์ผ ์ง์ง ์์ด์ ํธ๋ค์ด ํ์ด ์๊ธด๋ค.
2) ๋๊ตฌ๊ฐ ์์ผ๋ฉด ํ๋ ๋ฒ์๊ฐ ์ข๋ค
์์ด์ ํธ์ ์ฑ๋ฅ์ ๋ชจ๋ธ๋ง์ด ์๋๋ผ ์ด๋ค ๋๊ตฌ๋ฅผ ์คฌ๋์ง์ ํฌ๊ฒ ์ข์ฐ๋๋ค. ๊ฒ์ ๋๊ตฌ๊ฐ ์์ผ๋ฉด ์ต์ ์ ๋ณด๋ฅผ ์ฐพ์ ์ ์๊ณ , ์๊ฐ ๋๊ตฌ๊ฐ ์์ผ๋ฉด ์ค์๊ฐ ์๊ฐ์ ๊ณ์ฐํ ์ ์๋ค.
3) Observation์ด ๋น ์ง๋ฉด ์ ๋ขฐ์ฑ์ด ์ฝํด์ง๋ค
์์ด์ ํธ๋ ํ๋ ํ ๊ฒฐ๊ณผ๋ฅผ ํ์ธํด์ผ ๋ค์ ๋จ๊ณ๋ฅผ ์กฐ์ ํ ์ ์๋ค. ์ด ํผ๋๋ฐฑ ๋ฃจํ๊ฐ ์์ผ๋ฉด ๊ทธ๋ฅ ๊ธธ์ด์ง ํ๋กฌํํธ์ ๋น์ทํด์ง๋ค.
4) Unit 1์ ๋ชฉ์ ์ ํ๋ คํ ์ฑ ์ ์์ด ์๋๋ค
ํต์ฌ์ ๋ฃจํ ์ดํด๋ค. ๋จผ์ Thought-Action-Observation์ ์ดํดํ๊ณ , ๊ทธ ๋ค์ Unit 2์์ ํ๋ ์์ํฌ ์ฐจ์ด์ ์ค๊ณ ์ ํ์ผ๋ก ๋์ด๊ฐ๋ ํ๋ฆ์ด ์์ฐ์ค๋ฝ๋ค.
์ค๋ฌด ์ ์ฉ ํฌ์ธํธ
์ด์ ์๋ํ
- ์๊ฐ ํ์ธ, ์ํ ์กฐํ, ํ์ผ ์์ฝ์ฒ๋ผ ์์ ๋๊ตฌํ ์์ ๋ถํฐ ๋ถ์ด๋ฉด ์์ ์ ์ด๋ค.
๋ฆฌ์์น ๋ณด์กฐ
- ์น ๊ฒ์ ๋๊ตฌ + ์ ๋ฆฌ ํ๋กฌํํธ ์กฐํฉ์ผ๋ก ์๋ฃ ์์งํ ์์ด์ ํธ๋ฅผ ๋ง๋ค ์ ์๋ค.
๊ณ ๊ฐ ์๋/๋ด๋ถ ์ ๋ฌด
- FAQ ๋ต๋ณ๋ง ํ๋ ์ฑ๋ด๋ณด๋ค, ์ผ์ ์กฐํยท๋ฌธ์ ๊ฒ์ยทํฐ์ผ ์์ฑ๊น์ง ๋ถ์ธ ์์ด์ ํธ๊ฐ ํจ์ฌ ์ค์ฉ์ ์ด๋ค.
์์ฃผ ๋งํ๋ ์ง์
1) ModuleNotFoundError
source .venv/bin/activate
python -m pip install smolagents pytz๊ฐ์ํ๊ฒฝ์ด ๊บผ์ ธ ์๋ ๊ฒฝ์ฐ๊ฐ ๊ฐ์ฅ ๋ง๋ค.
2) ์ธ์ฆ ๋๋ ๋ชจ๋ธ ํธ์ถ ์ค๋ฅ
export HF_TOKEN=hf_your_tokenInferenceClientModel ํ๊ฒฝ์ ๋ฐ๋ผ ํ ํฐ์ด ํ์ํ ์ ์๋ค.
3) ๋๊ตฌ ์ค๋ช ์ด ๋ถ์คํด์ ์์ด์ ํธ๊ฐ ์ ๋ชป ์ฐ๋ ๊ฒฝ์ฐ
๋๊ตฌ ํจ์์๋ ์๋ 3๊ฐ๊ฐ ์ค์ํ๋ค.
- ํ์ ํํธ
- ๋ช ํํ ํจ์๋ช
- ์ธ์ ์ค๋ช ์ด ๋ค์ด๊ฐ docstring
4) ๋ก์ปฌ ์คํ์ ์ด์ ํ๊ฒฝ์ฒ๋ผ ๋ฏฟ๋ ๊ฒฝ์ฐ
ํ์ต์ฉ ๋ก์ปฌ ์คํ์ ์ถ๋ฐ์ ์ผ ๋ฟ์ด๋ค. CodeAgent๋ ์ฝ๋๋ฅผ ์คํํ๋ฏ๋ก, ์ด์ ๋จ๊ณ์์๋ ์๋๋ฐ์ค ์ ๋ต์ ๋ฐ๋์ ๋ฐ๋ก ์ก์์ผ ํ๋ค.
๋ค์์ ์ด์ด์ ๋ณด๋ฉด ์ข์ ๊ณต์ ํ์ต ์์
- Unit 1์
Thoughts,Actions,Observations์ธ๋ถ ํ์ด์ง - Unit 1 ํํ ๋ฆฌ์ผ์์ Alfred/์ฒซ ์์ด์ ํธ ํ๋ฆ ๋ณต์ต
- Unit 2์์
smolagents,LangGraph,LlamaIndex๋น๊ต
ํ ๋ฒ ๋ ์์ฝ
HF Agents Course ๋ณธํธ 1์์ ๊ฐ์ฅ ๋จผ์ ์ก์์ผ ํ ๊ฒ์ โ์์ด์ ํธ๋ ๋๊ตฌ๋ฅผ ์ธ ์ ์๋ ์ถ๋ก ์์คํ
โ์ด๋ผ๋ ๊ฐ๊ฐ์ด๋ค. Alfred ์์๋ ๊ทธ ๊ฐ๋
์ ๊ฐ์ฅ ์ง๊ด์ ์ผ๋ก ๋ณด์ฌ์ค๋ค. ๊ทธ๋ฆฌ๊ณ smolagents ์ต์ ์์ ๋ฅผ ์ง์ ๋๋ ค๋ณด๋ฉด, Unit 1์ด ์ ์ดํ ๋ชจ๋ ํ๋ ์์ํฌ ํ์ต์ ๋ฐ๋ฅ์ด ๋๋์ง ํจ์ฌ ์ ๋ช
ํ๊ฒ ๋ณด์ธ๋ค.
์์ฑํ AI ํ์ฉ ๊ณ ์ง
์ด ๋ฌธ์๋ ์์ฑํ AI๋ฅผ ํ์ฉํด ์ด์ ๊ตฌ์กฐ์ ์ค๋ช
๋ฌธ์ฅ์ ์ ๋ฆฌํ์ต๋๋ค. ๋ค๋ง ๋ด์ฉ ๊ทผ๊ฑฐ๋ Hugging Face Agents Course ์ ์ฅ์, Unit 1 ์๋ฌธ(introduction, what-are-agents, agent-steps-and-structure, tutorial), smolagents ๊ณต์ ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋์กฐํ๊ณ , ์ค์ต ๋จ๊ณยท์
๋ ฅยท์คํ ๋ช
๋ นยท์ฑ๊ณต ํ์ ์ ์ฌ๋์ด ์ฌํ ๊ฐ๋ฅํ๋๋ก ๋ค์ ๊ตฌ์ฑํ์ต๋๋ค.