모델 최적화

모델 최적화 (Model optimization)

LLM 출력은 비결정적이고, 모델 스냅샷과 계열이 바뀌면 모델 동작도 달라져요. 그래서 개발자는 LLM 애플리케이션의 성능을 계속 측정하고 조정해서 최상의 결과를 얻어야 해요. 이 가이드에서는 모델에서 고품질 출력을 보장하는 데 쓸 수 있는 기법과 OpenAI 플랫폼 도구를 살펴볼게요.

출처: 문서

본문

참고로 이 가이드가 다루는 evals와 fine-tuning 워크플로는 레거시 문서로 이동 중이에요. 영향을 받는 플랫폼 표면의 현재 일정은 폐지 페이지를 확인하세요.

모델 최적화 워크플로

모델 출력을 최적화하려면 evals, 프롬프트 엔지니어링, fine-tuning을 조합해야 해요. 더 나은 프롬프트와 더 나은 학습 데이터로 이어지는 피드백 플라이휠을 만드는 거죠. 최적화 과정은 대략 이렇게 진행돼요.

  1. 모델 출력을 측정하는 evals를 작성해 성능과 정확성의 기준선(baseline)을 마련해요.
  2. 관련 컨텍스트 데이터와 지시를 제공하며 모델에 프롬프트를 보내요.
  3. 일부 사용 사례에서는 특정 작업을 위해 fine-tuning을 하는 게 좋을 수 있어요.
  4. 실제 입력을 대표하는 테스트 데이터로 evals를 실행해요. 프롬프트와 fine-tuned 모델의 성능을 측정해요.
  5. eval 피드백을 바탕으로 프롬프트나 fine-tuning 데이터셋을 조정해요.
  6. 모델 결과를 개선하기 위해 이 루프를 지속적으로 반복해요.

주요 단계의 개요와 OpenAI 플랫폼에서의 수행 방법은 아래를 참고하세요.

Evals 만들기

OpenAI 플랫폼에서 evals를 만들고 실행할 수 있어요. API를 통하거나 대시보드에서요. 행동 주도 개발(BDD)과 비슷한 접근으로, 프롬프트를 쓰기 전에 evals를 먼저 작성하는 걸 고려해 볼 수도 있어요.

프로덕션에서 볼 것으로 예상되는 테스트 입력에 대해 evals를 실행하세요. 사용 가능한 여러 grader 중 하나를 사용해 프롬프트의 결과를 테스트 데이터셋에 대해 측정해요.

Evals에 대해 더 알아보기: 모델 출력 테스트를 실행해 올바른 결과를 얻는지 확인하세요.

효과적인 프롬프트 작성하기

evals가 준비되면 프롬프트를 효과적으로 반복할 수 있어요. 사용 사례에서 좋은 결과를 얻는 데 프롬프트 엔지니어링 과정만으로 충분할 수도 있어요. 모델마다 다른 프롬프트 기법이 필요할 수 있지만, 전반적으로 더 나은 결과를 얻기 위한 몇 가지 모범 사례가 있어요.

  • 관련 컨텍스트 포함 — 지시에 모델이 학습 데이터 밖에서 응답을 생성할 때 필요한 텍스트나 이미지 콘텐츠를 포함하세요. 프라이빗 데이터베이스의 데이터나 최신 정보가 될 수 있어요.
  • 명확한 지시 제공 — 원하는 출력 종류에 대한 명확한 목표를 프롬프트에 담으세요. 새 작업은 gpt-6-astra로 시작하고, reasoning 모델 가이드를 사용해 결과 수준 지시, reasoning effort, 장황함(verbosity)을 조정하세요.
  • 예시 출력 제공 — 주어진 프롬프트에 대한 올바른 출력 예시를 몇 개 주세요 (few-shot learning). 모델은 이 예시에서 다른 프롬프트에 어떻게 응답해야 할지 추론할 수 있어요.

프롬프트 엔지니어링에 대해 더 알아보기: 모델에 좋은 프롬프트를 쓰는 기초를 배워보세요.

모델 Fine-tuning하기

OpenAI는 fine-tuning 플랫폼을 단계적으로 종료하고 있어요. 플랫폼은 더 이상 새 사용자에게 제공되지 않지만, 기존 fine-tuning 플랫폼 사용자는 앞으로 몇 달간 학습 작업을 만들 수 있어요.

모든 fine-tuned 모델은 기본 모델이 폐지될 때까지 인퍼런스에 계속 사용할 수 있어요. 전체 일정은 여기에 있어요.

OpenAI 모델은 이미 광범위한 주제와 작업에 걸쳐 사전 학습되어 있어요. Fine-tuning을 사용하면 OpenAI 기본 모델을 가져와 애플리케이션에서 기대하는 종류의 입력과 출력을 제공하고, 사용할 작업에서 뛰어난 모델을 얻을 수 있어요.

Fine-tuning은 시간이 걸리는 과정일 수 있지만, 모델이 특정 방식으로 일관되게 응답을 형식화하거나 새로운 입력을 처리하게 만들 수도 있어요. Fine-tuning을 프롬프트 엔지니어링과 함께 사용하면 프롬프트만 쓸 때보다 몇 가지 이점을 더 얻을 수 있어요.

  • 단일 요청의 컨텍스트 창에 들어갈 수 있는 것보다 더 많은 예시 입력·출력을 제공해서 모델이 더 다양한 프롬프트를 처리하게 할 수 있어요.
  • 예시와 컨텍스트 데이터가 적은 더 짧은 프롬프트를 사용해서 규모에서 토큰 비용을 절약하고 지연 시간을 줄일 수 있어요.
  • 매 요청에 예시로 포함하지 않고도 독점·민감 데이터로 학습할 수 있어요.
  • 더 작고 저렴하며 빠른 모델이 큰 모델이 비용 효율적이지 않은 특정 작업에서 뛰어나게 만들 수 있어요.

Fine-tuned 모델의 학습과 사용이 어떻게 청구되는지 알아보려면 가격 페이지를 방문하세요.

Fine-tuning 방법

아래는 현재 OpenAI 플랫폼에서 지원하는 fine-tuning 방법이에요.

방법 작동 방식 가장 적합한 용도 함께 사용
지도 미세 조정 (SFT) 프롬프트에 대한 올바른 응답 예시를 제공해 모델 동작을 안내해요. 종종 사람이 만든 "ground truth" 응답으로 모델이 어떻게 응답해야 하는지 보여줘요. - 분류
- 미묘한 번역
- 특정 형식 콘텐츠 생성
- 지시 따르기 실패 수정
gpt-4.1-2025-04-14
gpt-4.1-mini-2025-04-14
gpt-4.1-nano-2025-04-14
비전 미세 조정 지도 미세 조정에 이미지 입력을 제공해 모델의 이미지 입력 이해를 개선해요. - 이미지 분류
- 복잡한 프롬프트의 지시 따르기 실패 수정
gpt-4o-2024-08-06
직접 선호 최적화 (DPO) 프롬프트에 대한 올바른 예시와 잘못된 예시를 모두 제공해요. 올바른 응답을 표시해 모델이 더 잘 수행하도록 도와요. - 텍스트 요약, 올바른 것에 집중
- 올바른 톤과 스타일로 채팅 메시지 생성
gpt-4.1-2025-04-14 gpt-4.1-mini-2025-04-14 gpt-4.1-nano-2025-04-14
강화 미세 조정 (RFT) 프롬프트에 대한 응답을 생성하고 결과에 전문가 등급을 제공하며, 점수가 높은 응답에 대해 모델의 chain-of-thought를 강화해요. 전문가 grader가 모델의 이상적 출력에 동의해야 해요. reasoning 모델 전용. - 고급 추론이 필요한 복잡한 도메인 특화 작업
- 병력과 진단 지침에 기반한 의료 진단
- 법적 판례에서 관련 구절 판별
o4-mini-2025-04-16

Fine-tuning 작동 방식

OpenAI 플랫폼에서 대시보드나 API로 fine-tuned 모델을 만들 수 있어요. fine-tuning 과정의 일반적인 형태는 이렇습니다.

  1. 학습 데이터로 쓸 예시 데이터셋을 수집해요.
  2. 그 데이터셋을 JSONL 형식으로 OpenAI에 업로드해요.
  3. 목표에 따라 위 방법 중 하나로 fine-tuning 작업을 만들어요 — 여기서 fine-tuning 학습 과정이 시작돼요.
  4. RFT의 경우 모델 동작을 채점할 grader도 정의해요.
  5. 결과를 평가해요.

지도 미세 조정, 비전 미세 조정, 직접 선호 최적화, 강화 미세 조정으로 시작해 보세요.

전문가에게 배우기

모델 최적화는 복잡한 주제이고 때로는 과학보다 예술에 가까워요. OpenAI 팀 멤버의 모델 최적화 기법 동영상을 아래에서 확인해 보세요.

더 알아보기 (Learn more)

관련 문서: Evals, 모델 선택, 지도 미세 조정, 직접 선호 최적화, 강화 미세 조정 가이드를 함께 보면 좋아요.