Microsoft Agent-Lightning 설정 및 활용 가이드
이 문서는
microsoft/agent-lightning을 사용하여 GIIP 에이전트의 프롬프트를 자동 최적화하는 방법을 설명합니다.
🚀 개요
Agent-Lightning은 강화학습(RL)을 통해 에이전트의 프롬프트를 튜닝하는 프레임워크입니다. 작업 히스토리를 데이터셋으로 활용하여, 에이전트가 더 높은 성능을 낼 수 있는 최적의 지침을 찾아냅니다.
[!IMPORTANT] Windows 사용자 주의:
은 Unix 전용 라이브러리를 사용하므로, 반드시 WSL2 또는 Linux 환경에서 실행해야 합니다.agent-lightning
🛠️ 설치 방법 (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 라이브러리 관련 오류 발생 | 은 Unix 전용 라이브러리에 의존 | 학습(2단계)은 WSL2 또는 Linux에서 실행. 데이터셋 생성(1단계)만 Windows에서 수행 |
| 2단계 학습 실행 시 데이터셋을 찾을 수 없음 | 1단계 를 실행하지 않았거나 경로가 다름 | 먼저 1단계를 실행해 생성 여부 확인 |
| 학습 루프의 LLM 호출에서 인증 오류 발생 | / 환경 변수 미설정 | WSL 세션에서 로 두 환경 변수를 설정한 뒤 다시 실행 |
또는 버전 오류 | Python 3.10 미만이거나 venv 미활성화 | Python 3.10+ 설치 후 로 가상환경을 활성화 |