Microsoft Agent-Lightning ์ค์ ๋ฐ ํ์ฉ ๊ฐ์ด๋
์ด ๋ฌธ์๋ microsoft/agent-lightning์ ์ฌ์ฉํ์ฌ GIIP ์์ด์ ํธ์ ํ๋กฌํํธ๋ฅผ ์๋ ์ต์ ํํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช
ํฉ๋๋ค.
๐ ๊ฐ์
Agent-Lightning์ ๊ฐํํ์ต(RL)์ ํตํด ์์ด์ ํธ์ ํ๋กฌํํธ๋ฅผ ํ๋ํ๋ ํ๋ ์์ํฌ์
๋๋ค. ์์
ํ์คํ ๋ฆฌ๋ฅผ ๋ฐ์ดํฐ์
์ผ๋ก ํ์ฉํ์ฌ, ์์ด์ ํธ๊ฐ ๋ ๋์ ์ฑ๋ฅ์ ๋ผ ์ ์๋ ์ต์ ์ ์ง์นจ์ ์ฐพ์๋
๋๋ค.
[!IMPORTANT] Windows ์ฌ์ฉ์ ์ฃผ์:
agent-lightning์ Unix ์ ์ฉ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฏ๋ก, ๋ฐ๋์ WSL2 ๋๋ Linux ํ๊ฒฝ์์ ์คํํด์ผ ํฉ๋๋ค.
๐ ๏ธ ์ค์น ๋ฐฉ๋ฒ (WSL2 / Linux ๊ธฐ์ค)
-
Python ํ๊ฒฝ ์ค๋น:
# Python 3.10+ ๊ถ์ฅ python3 -m venv venv source venv/bin/activate -
๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น:
pip install agentlightning -
API ํค ์ค์ : ํ์ต ๋ฃจํ๊ฐ LLM์ ํธ์ถํ ์ ์๋๋ก ํ๊ฒฝ ๋ณ์๋ฅผ ์ค์ ํฉ๋๋ค.
export AZURE_OPENAI_API_KEY="your-key" export AZURE_OPENAI_ENDPOINT="your-endpoint"
๐ ํ์ฉ ์ํฌํ๋ก์ฐ
1๋จ๊ณ: ํ์ต ๋ฐ์ดํฐ ์์ฑ
Windows ํ๊ฒฝ์ ํฐ๋ฏธ๋์์ ๋ค์ ๋ช ๋ น์ ์คํํ์ฌ ํ๋ก์ ํธ ๋ด ์์ ๊ธฐ๋ก์ ๋ฐ์ดํฐ์ ์ผ๋ก ๋ณํํฉ๋๋ค.
python giipdb/scripts/prompt_optimization/generate_dataset.py
์ฑ๊ณตํ๋ฉด giipdb/scripts/prompt_optimization/giip_training_data.jsonl ํ์ผ์ด ์์ฑ๋ฉ๋๋ค.
2๋จ๊ณ: ๊ฐํํ์ต ์์ (WSL2)
์์ฑ๋ ๋ฐ์ดํฐ์ ์ ์ฌ์ฉํ์ฌ ์์ด์ ํธ ์ง์นจ์ ํ๋ํฉ๋๋ค.
# WSL ํฐ๋ฏธ๋์์ ์คํ
python giipdb/scripts/prompt_optimization/train_giip_role.py
3๋จ๊ณ: ์ต์ ํ ๊ฒฐ๊ณผ ๋ฐ์
ํ์ต์ด ์๋ฃ๋๋ฉด ๋์ถ๋ Optimal Prompt๋ฅผ .agent/roles/ ํด๋ ๋ด ํด๋น ๋งํฌ๋ค์ด ํ์ผ์ ์
๋ฐ์ดํธํฉ๋๋ค.
๐ ๊ธฐ๋ ํจ๊ณผ
- ์ฑ๊ณต๋ฅ ํฅ์: ๊ณผ๊ฑฐ์ ์คํจ ์ฌ๋ก๋ฅผ ํ์ตํ์ฌ ์ ์ฌํ ์ค๋ฅ ๋ฐฉ์ง.
- ์๋ ํ๋กฌํํธ ์์ง๋์ด๋ง: ์์์ ํ๋ ๋์ ๋ฐ์ดํฐ ๊ธฐ๋ฐ์ ๊ฐ๊ด์ ์ฑ๋ฅ ์ต์ ํ.
- ์์จ ๊ฐ์ ์์คํ : ์ ์ฒด ํ๋ก์ ํธ ์ด์ ๊ณผ์ ์์ ์์ด์ ํธ ์ง๋ฅ์ ์ํฅ ํ์คํ.
๐ฉบ ๋ฌธ์ ํด๊ฒฐ
| ์ฆ์ | ์์ธ | ํด๊ฒฐ |
|---|---|---|
| Windows์์ ์ค์นยทํ์ต ์คํ ์ Unix ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ด๋ จ ์ค๋ฅ ๋ฐ์ | agent-lightning์ Unix ์ ์ฉ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์์กด | ํ์ต(2๋จ๊ณ)์ WSL2 ๋๋ Linux์์ ์คํ. ๋ฐ์ดํฐ์ ์์ฑ(1๋จ๊ณ)๋ง Windows์์ ์ํ |
| 2๋จ๊ณ ํ์ต ์คํ ์ ๋ฐ์ดํฐ์ ์ ์ฐพ์ ์ ์์ | 1๋จ๊ณ generate_dataset.py๋ฅผ ์คํํ์ง ์์๊ฑฐ๋ ๊ฒฝ๋ก๊ฐ ๋ค๋ฆ | ๋จผ์ 1๋จ๊ณ๋ฅผ ์คํํด giipdb/scripts/prompt_optimization/giip_training_data.jsonl ์์ฑ ์ฌ๋ถ ํ์ธ |
| ํ์ต ๋ฃจํ์ LLM ํธ์ถ์์ ์ธ์ฆ ์ค๋ฅ ๋ฐ์ | AZURE_OPENAI_API_KEY / AZURE_OPENAI_ENDPOINT ํ๊ฒฝ ๋ณ์ ๋ฏธ์ค์ | WSL ์ธ์
์์ export๋ก ๋ ํ๊ฒฝ ๋ณ์๋ฅผ ์ค์ ํ ๋ค ๋ค์ ์คํ |
python: command not found ๋๋ ๋ฒ์ ์ค๋ฅ | Python 3.10 ๋ฏธ๋ง์ด๊ฑฐ๋ venv ๋ฏธํ์ฑํ | Python 3.10+ ์ค์น ํ source venv/bin/activate๋ก ๊ฐ์ํ๊ฒฝ์ ํ์ฑํ |