← 목록으로
LLM중요도 높음 8.0

SFT와 DPO를 활용해 에이전트의 도구 호출 정확도 향상하기

Improve your agent’s tool-calling accuracy with SFT and DPO on Amazon SageMaker AI

AWS Machine Learning Blog··4분 읽기·1회 조회

핵심 요약

  • SFT와 DPO를 함께 사용해 소형 언어 모델의 도구 호출 정확도를 개선하는 방법을 배웁니다.
  • Amazon SageMaker AI를 사용하여 훈련 코드에 집중할 수 있으며, 자체 훈련 인프라 관리를 줄입니다.
  • 도구 호출 정확도를 평가하고 기반 모델과 여러 훈련된 모델 간의 성능을 비교하여 데이터 기반의 결정을 내릴 수 있습니다.
  • 개발자들은 모델 품질을 데이터 기반으로 평가하고 개선할 수 있는 방법을 배울 수 있습니다.

심층 분석

SFT(Supervised Fine-Tuning)와 DPO(Direct Preference Optimization)는 소형 언어 모델(SLM)의 도구 호출 정확도를 끌어올리기 위한 2단계 후처리 학습 전략이다. SFT는 "사용자 요청 → 올바른 도구 호출(함수명·인자 JSON)" 형태의 정답 데이터로 모델을 지도학습시켜, 모델이 어떤 상황에서 어떤 도구를 어떤 파라미터로 호출해야 하는지 기본기를 학습하게 한다. 다만 SFT만으로는 "정답에 가깝지만 미묘하게 틀린" 호출(잘못된 인자 타입, 불필요한 도구 호출, 누락된 필드 등)을 구분하지 못하는 한계가 있다. DPO는 이 지점을 보완하는데, 같은 프롬프트에 대해 "선호되는 응답(chosen)"과 "비선호 응답(rejected)" 쌍을 주고 모델이 선호 응답 쪽으로 확률 분포를 기울이도록 학습시킨다. 별도의 보상 모델을 학습할 필요 없이 선호 쌍만으로 직접 최적화하므로 RLHF보다 구현이 단순하다는 점이 핵심이다. Amazon SageMaker AI training jobs를 활용하면 GPU 클러스터 프로비저닝이나 분산 학습 인프라를 직접 관리하지 않고 학습 코드 자체에 집중할 수 있다.

실무 관점에서 이 접근의 의미는 "작은 모델로도 충분한 에이전트를 만들 수 있다"는 점이다. GPT-4급 대형 모델을 매 도구 호출마다 호출하면 비용과 지연이 누적되는데, 도구 호출이라는 좁고 정형화된 태스크에서는 SLM을 파인튜닝해 대형 모델에 근접하거나 능가하는 정확도를 확보할 수 있다. 결과적으로 추론 비용 절감, 응답 속도 개선, 온프레미스/엣지 배포 가능성 확대라는 실질적 이득으로 이어진다. 특히 사내 API나 도메인 특화 함수를 다루는 에이전트라면 범용 대형 모델이 학습한 적 없는 우리 회사만의 도구 스키마를 SFT/DPO로 명시적으로 주입할 수 있어, 환각성 도구 호출이나 인자 오류를 구조적으로 줄일 수 있다. 글에서 강조하는 또 다른 포인트는 베이스 모델과 여러 파인튜닝 변형을 도구 호출 정확도 지표로 정량 비교하는 평가 파이프라인으로, "감"이 아닌 데이터 기반으로 모델 채택을 결정할 수 있게 해준다.

엔지니어가 실제로 취해야 할 행동은 크게 세 가지다. 첫째, 데이터 품질에 투자해야 한다. SFT용 정답 데이터와 DPO용 선호 쌍의 품질이 최종 성능을 좌우하므로, 실제 운영에서 수집한 도구 호출 로그(성공/실패 케이스)를 chosen/rejected 쌍으로 가공하는 파이프라인을 갖추는 것이 핵심이다. 둘째, 평가 지표를 먼저 정의해야 한다. 함수명 정확도, 인자 정확도, 불필요 호출 비율 등 도구 호출에 특화된 메트릭을 세분화해 측정해야 SFT만으로 충분한지, DPO까지 필요한지 판단할 수 있다. 셋째, SFT → DPO 순서를 지키고 단계별 효과를 검증해야 한다. DPO는 이미 어느 정도 정답을 생성하는 SFT 모델 위에서 미세 조정할 때 가장 효과적이며, 무작정 적용하면 오히려 출력 분포가 망가질 수 있다.

마지막으로 비용·운영 측면을 고려하면, SageMaker training jobs는 사용한 만큼만 과금되는 단발성 학습에 적합하지만 반복적인 실험·재학습 주기를 돌릴 경우 인스턴스 타입과 학습 시간에 따라 비용이 누적되므로 스팟 인스턴스 활용과 체크포인트 전략을 함께 설계하는 것이 좋다. 또한 파인튜닝된 SLM은 배포 후에도 도구 스키마가 바뀌면 성능이 저하될 수 있으므로, 도구 API 변경을 추적하고 주기적으로 재학습하는 MLOps 루프를 갖추는 것이 장기적으로 중요하다. 결론적으로 이 사례는 "대형 모델에 모든 것을 맡기는" 방식에서 "태스크에 맞게 작은 모델을 정밀하게 튜닝하는" 방식으로 에이전트 개발 패러다임이 이동하고 있음을 보여주며, 한국의 엔지니어들도 자사 도구 생태계에 맞춘 SLM 파인튜닝을 현실적인 선택지로 검토할 시점이다.

#SFT#DPO#Amazon SageMaker#도구 호출#모델 훈련
원문 보기 →

관련 기사