ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 오픈AI, API에서의 모델 증류 소개
    인공지능 2024. 10. 2. 14:23

    API에서의 모델 증류

    대형 모델의 출력을 사용하여 비용 효율적인 모델을 파인 튜닝 – OpenAI 플랫폼에서 모두 가능

    Model Distillation
    Model Distillation

    오늘 우리는 모델 증류(Model Distillation) 기능을 새롭게 제공하여, 개발자가 OpenAI 플랫폼 내에서 직접 증류 파이프라인을 관리할 수 있는 통합 워크플로우를 도입합니다. 이를 통해 개발자는 o1-preview나 GPT-4o 같은 대형 모델의 출력을 사용하여 GPT-4o mini와 같은 비용 효율적인 모델의 성능을 쉽게 개선할 수 있습니다.

    모델 증류는 더 작은, 비용 효율적인 모델을 더 강력한 모델의 출력으로 파인 튜닝하여 특정 작업에서 고급 모델과 유사한 성능을 훨씬 낮은 비용으로 달성할 수 있게 합니다. 지금까지 증류는 여러 단계에 걸쳐 오류가 발생하기 쉬운 과정으로, 개발자가 데이터셋 생성, 모델 파인 튜닝, 성능 개선 측정 등 여러 분리된 도구에서 수동으로 작업을 조율해야 했습니다. 증류는 본질적으로 반복적인 작업이기 때문에, 각 단계를 반복적으로 수행해야 했으며, 이는 상당한 노력과 복잡성을 초래했습니다.

    새로운 모델 증류 도구 세트에는 다음이 포함됩니다:

    • 저장된 완료(Stored Completions): 이제 개발자는 GPT-4o나 o1-preview와 같은 모델이 생성한 입력-출력 쌍을 자동으로 캡처하고 저장하여 증류를 위한 데이터셋을 쉽게 생성할 수 있습니다. 이를 통해 실생산 데이터를 사용하여 모델을 평가하고 파인 튜닝할 수 있습니다. 저장된 완료를 통해 데이터셋을 쉽게 만들고 관리할 수 있습니다.
    • Evals(베타): 개발자는 이제 특정 작업에서 모델 성능을 측정하기 위해 사용자 정의 평가를 플랫폼 내에서 만들고 실행할 수 있습니다. 수동으로 평가 스크립트를 만들거나 서로 다른 로깅 도구를 통합하는 대신, Evals는 통합된 방식으로 모델 성능을 측정할 수 있습니다. 저장된 완료 데이터를 사용하거나 기존 데이터셋을 업로드하여 평가를 설정할 수 있습니다. Evals는 파인 튜닝 없이도 모델 성능을 정량적으로 평가하는 데 사용할 수 있습니다.
    • 파인 튜닝(Fine-tuning): 저장된 완료와 Evals는 기존의 파인 튜닝 기능과 완전히 통합되어 있습니다. 즉, 개발자는 저장된 완료로 생성된 데이터셋을 파인 튜닝 작업에서 사용할 수 있으며, Evals를 통해 파인 튜닝된 모델의 성능을 평가할 수 있습니다.

    모델 증류 사용 방법

    먼저, GPT-4o mini와 같은 모델의 성능을 측정할 평가를 만듭니다. 이 평가는 증류된 모델의 성능을 지속적으로 테스트하여 배포할지를 결정하는 데 도움이 됩니다.

    다음으로, GPT-4o의 출력을 사용하여 GPT-4o mini를 파인 튜닝할 작업에 대한 실사용 예시로 증류 데이터셋을 만듭니다. 이를 위해 Chat Completions API에서 store:true 플래그를 설정하여 지연 시간에 영향을 주지 않고 이러한 입력-출력 쌍을 자동으로 저장할 수 있습니다. 이렇게 저장된 완료는 검토, 필터링, 태그 지정하여 고품질 데이터셋을 만들 수 있습니다.

    response = client.chat.completions.create(
      model="gpt-4o",
      messages=[
        {
          "role": "user",
          "content": [
            {
              "type": "text",
              "text": "what's the capital of the USA?"
            }
          ]
        }
      ],
      store=True,
      metadata={"username": "user123", "user_id": "123", "session_id": "123"}

    마지막으로, 이 데이터셋을 사용하여 GPT-4o mini를 파인 튜닝합니다. 저장된 완료는 파인 튜닝 모델을 만들 때 학습 파일로 사용할 수 있습니다. 모델이 파인 튜닝된 후, Evals로 돌아가 GPT-4o mini 모델이 GPT-4o와 비교하여 성능 기준을 충족하는지 테스트할 수 있습니다.

    파인 튜닝은 반복적인 과정입니다. 초기 결과가 만족스럽지 않으면 데이터셋을 개선하거나 학습 매개변수를 조정하거나 모델이 성능이 떨어지는 특정 예시를 추가로 캡처해야 할 수 있습니다. 목표는 증류된 모델을 점진적으로 개선하여 프로덕션에 사용할 수 있을 만큼 성능을 높이는 것입니다.

    이용 가능성 및 가격

    모델 증류는 오늘부터 모든 개발자에게 제공되며, GPT-4o 및 o1-preview를 포함한 모든 모델을 증류하는 데 사용할 수 있습니다. 또한, GPT-4o mini에서 하루에 200만 개의 무료 학습 토큰, GPT-4o에서 하루에 100만 개의 무료 학습 토큰을 2024년 10월 31일까지 제공하여 증류 작업을 시작할 수 있도록 지원합니다. 그 한도를 초과하면, 증류된 모델의 학습 및 실행 비용은 표준 파인 튜닝 가격과 동일하며, 해당 가격은 API 가격 페이지에서 확인할 수 있습니다.

    저장된 완료는 무료로 제공됩니다. Evals는 베타 버전으로 제공되며, 사용된 토큰에 따라 표준 모델 가격이 적용됩니다. 연말까지, Evals를 OpenAI와 공유하는 경우 주당 최대 7회까지 무료로 평가를 실행할 수 있습니다. 공유된 Evals는 향후 모델 개선 및 평가에 사용됩니다.

    더 많은 정보는 모델 증류 문서에서 확인할 수 있습니다.


    https://openai.com/index/api-model-distillation/

Designed by Tistory.