다음을 통해 공유


파운데이션 모델 미세 조정

Important

이 기능은 , centralus, eastus, eastus2, northcentralus 지역에서 westus로 제공됩니다.

현재 Mosaic AI 모델 학습의 일부인 파운데이션 모델 미세 조정을 사용하면 사용자 고유의 데이터를 사용하여 기본 모델을 사용자 지정하여 특정 애플리케이션의 성능을 optimize 수 있습니다. 기본 모델의 전체 매개 변수 미세 조정 또는 지속적인 학습을 수행하면 모델을 처음부터 학습하는 것보다 훨씬 적은 데이터, 시간 및 컴퓨팅 리소스를 사용하여 고유한 모델을 학습할 수 있습니다.

Databricks를 사용하면 학습에 사용할 사용자 고유의 데이터, 학습할 기본 모델, MLflow에 저장된 검사점 및 Unity Catalog 등록되고 배포할 준비가 된 모델 등 모든 것이 단일 플랫폼에 있습니다.

자습서 : Foundation Model 미세 조정 실행을 만들고 배포하여 파운데이션 모델 미세 조정 API를 사용하여 실행을 만든 다음, 결과를 검토하고 Databricks UI 및 Mosaic AI Model Serving를 사용하여 모델을 배포합니다.

파운데이션 모델 미세 조정이란?

파운데이션 모델 미세 조정을 사용하면 Databricks API 또는 UI를 사용하여 기초 모델을 튜닝하거나 추가로 학습할 수 있습니다.

파운데이션 모델 미세 조정을 사용하여 다음을 수행할 수 있습니다.

  • MLflow에 저장된 검사점을 통해 사용자 지정 데이터를 사용하여 모델을 학습합니다. 학습된 모델을 완벽하게 제어합니다.
  • Unity Catalog에 모델을 자동으로 등록하여 모델 서비스를 통해 쉽게 배포할 수 있습니다.
  • 이전에 학습된 모델의 가중치를 로드하여 완성된 독점 모델을 추가로 학습합니다.

Databricks는 다음과 같은 경우 파운데이션 모델 미세 조정을 사용하는 것이 좋습니다.

  • 퓨샷(few-shot) 학습을 시도하고 더 나은 결과를 원합니다.
  • 기존 모델에서 프롬프트 엔지니어링을 시도했으며 더 나은 결과를 원합니다.
  • 데이터 개인 정보 보호를 위해 사용자 지정 모델에 대한 전체 소유권을 원합니다.
  • 대기 시간 또는 비용에 민감하며 작업별 데이터를 사용해 더 작고 저렴한 모델을 사용하려고 합니다.

지원되는 작업

파운데이션 모델 미세 조정은 다음과 같은 사용 사례를 지원합니다.

  • 채팅 완성: 권장 작업. 사용자와 AI 도우미 간의 채팅 로그에서 모델을 학습합니다. 이 형식은 실제 채팅 로그와 질문 답변 및 대화형 텍스트의 표준 형식으로 모두 사용할 수 있습니다. 텍스트는 특정 모델에 적합한 형식으로 서식이 자동 지정됩니다. 템플릿에 대한 자세한 내용은 HuggingFace 설명서의 example chat templates를 참조하세요.
  • 감독된 미세 조정: 프롬프트 응답의 정형 데이터에서 모델을 학습합니다. 이 기능을 사용하여 모델을 새 작업에 맞게 조정하거나, 응답 스타일을 변경하거나, 지침 준수 기능을 추가합니다. 이 작업은 데이터에 서식을 자동으로 적용하지 않으며 사용자 지정 데이터 서식이 필요한 경우에만 권장됩니다.
  • 지속적 사전 학습: 추가 텍스트 데이터를 사용하여 모델을 학습합니다. 이 기능을 사용하여 모델에 새 지식을 추가하거나 특정 분야의 모델에 집중합니다.

요구 사항

  • centralus, eastus, eastus2, northcentralus 또는 westus와 같은 Azure 지역 중 한 곳의 Databricks 작업 영역.
  • 를 사용하여 pip install databricks_genai설치된 파운데이션 모델 미세 조정 API
  • 데이터가 Delta table에 있다면 Databricks Runtime 12.2 LTS ML 이상을 사용하십시오.

필요한 입력 데이터 형식에 대한 자세한 내용은 Foundation Model 미세 조정을 위한 데이터 준비를 참조하세요.

모델 학습에 권장되는 데이터 크기

Databricks는 처음에 1~4개의 Epoch를 사용하여 학습하도록 권장합니다. 미세 조정된 모델을 평가한 후 모델 출력이 학습 데이터와 더 유사하게 하려면 1~2개의 Epoch를 더 사용하여 학습을 지속할 수 있습니다.

미세 조정 데이터에 표시되지 않는 작업에서 모델 성능이 크게 저하되거나 모델이 미세 조정 데이터의 정확한 사본을 출력하는 것처럼 보이는 경우 Databricks는 학습 Epoch 수를 줄이도록 권장합니다.

감독된 미세 조정 및 채팅 완성 기능의 경우 모델에 대한 하나 이상의 전체 컨텍스트 길이에 충분한 토큰을 제공해야 합니다. 예를 들어 meta-llama/Llama-2-7b-chat-hf에 대해 4,096개의 토큰 또는 mistralai/Mistral-7B-v0.1에 대해 32,768개의 토큰을 제공합니다.

지속적인 사전 학습의 경우 Databricks는 사용자 지정 데이터를 학습하는 고품질 모델을 get 위해 최소 150만 개의 토큰을 권장합니다.

지원되는 모델

다음 table는 지원되는 모델을 나열합니다. 해당 모델 라이선스 및 허용 가능한 사용 정책 정보는 모델 라이선스 참조하세요.

가장 최신 모델을 계속 지원하기 위해 Databricks는 지원되는 모델을 update 이전 모델을 사용 중지할 수 있습니다. 모델 와 사용 중지될 모델을 참조하세요.

모델 최대 컨텍스트 길이 주의
databricks/dbrx-base 32768
databricks/dbrx-instruct 32768
meta-llama/Llama-3.2-1B 131072
meta-llama/Llama-3.2-1B-Instruct 131072
meta-llama/Llama-3.2-3B 131072
meta-llama/Llama-3.2-3B-Instruct 131072
meta-llama/Meta-Llama-3.1-405B 131072
meta-llama/Meta-Llama-3.1-405B-Instruct 131072
meta-llama/Meta-Llama-3.1-70B 131072
meta-llama/Meta-Llama-3.1-70B-Instruct 131072
meta-llama/Meta-Llama-3.1-8B 131072
meta-llama/Meta-Llama-3.1-8B-Instruct 131072
mistralai/Mistral-7B-v0.1 32768
mistralai/Mistral-7B-Instruct-v0.2 32768
mistralai/Mixtral-8x7B-v0.1 32768

사용 중지되는 모델

다음 table는 사용 중지 예정인 지원 모델을 나열합니다. 계획된 사용 중지 날짜 및 권장 모델 교체는 사용 중지된 모델 참조하세요.

모델 최대 컨텍스트 길이 주의
meta-llama/Meta-Llama-3-70B 8192 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
meta-llama/Meta-Llama-3-70B-Instruct 8192 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
meta-llama/Meta-Llama-3-8B 8192 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
meta-llama/Meta-Llama-3-8B-Instruct 8192 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
meta-llama/Llama-2-7b-hf 4096 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
meta-llama/Llama-2-13b-hf 4096 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
meta-llama/Llama-2-70b-hf 4096 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
meta-llama/Llama-2-7b-chat-hf 4096 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
meta-llama/Llama-2-13b-chat-hf 4096 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
meta-llama/Llama-2-70b-chat-hf 4096 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
codellama/CodeLlama-7b-hf 16384 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
codellama/CodeLlama-13b-hf 16384 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
codellama/CodeLlama-34b-hf 16384 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
codellama/CodeLlama-7b-Instruct-hf 16384 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
codellama/CodeLlama-13b-Instruct-hf 16384 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
codellama/CodeLlama-34b-Instruct-hf 16384 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
codellama/CodeLlama-7b-Python-hf 16384 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
codellama/CodeLlama-13b-Python-hf 16384 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.
codellama/CodeLlama-34b-Python-hf 16384 이 모델은 2025년 1월 7일 이후에 더 이상 지원되지 않습니다.

모델 라이선스

다음 table 지원되는 모델 패밀리에 적용 가능한 모델 라이선스 및 허용 가능한 사용 정책 정보를 제공합니다.

모델 패밀리 라이선스 및 허용 가능한 사용 정책
메타 라마 3.2 Meta Llama 3.2는 LLAMA 3.2 Community License(Copyright © Meta Platforms, Inc. All Rights Reserved)에 따라 라이선스가 부여됩니다.

고객은 본 라이선스 조건과 Llama 3.2 사용 제한 정책을 준수할 책임이 있습니다.
메타 라마 3.1 Meta Llama 3.1은 LLAMA 3.1 Community License(Copyright © Meta Platforms, Inc. All Rights Reserved)에 따라 라이선스가 부여됩니다.

고객은 해당 모델 라이선스를 준수할 책임이 있습니다.
라마 3 Llama 3은 LLAMA 3 Community License(Copyright © Meta Platforms, Inc. All Rights Reserved)에 따라 라이선스가 부여됩니다.

고객은 해당 모델 라이선스를 준수할 책임이 있습니다.
라마 2 라마 2는 LLAMA 2 커뮤니티 라이선스, Copyright © Meta Platforms, Inc.에 따라 라이선스가 부여됩니다. 모든 권리 보유.

고객은 해당 모델 라이선스를 준수할 책임이 있습니다.
CodeLlama CodeLlama 모델은 LLAMA 2 커뮤니티 라이선스, Copyright © Meta Platforms, Inc.에 따라 라이선스가 부여됩니다. All Rights Reserved.

고객은 해당 모델 라이선스를 준수할 책임이 있습니다.
DBRX DBRX는 Databricks Open Model License(Copyright © Databricks, Inc. All rights reserved)에 따라 제공되며 이를 준수합니다.

고객은 Databricks 사용 제한 정책을 포함하여 해당 모델 라이선스를 준수할 책임이 있습니다.

파운데이션 모델 미세 조정 사용

기본 모델 미세 조정은 SDK를 databricks_genai 사용하여 액세스할 수 있습니다. 다음 예제에서는 Unity CatalogVolumes데이터를 사용하는 학습 실행을 만들고 이를 시작합니다. 구성 세부 정보는 Foundation Model 미세 조정 API를 사용하여 학습 실행 만들기를 참조하세요.

from databricks.model_training import foundation_model as fm

model = 'meta-llama/Meta-Llama-3.1-8B-Instruct'
# UC Volume with JSONL formatted data
train_data_path = 'dbfs:/Volumes/main/mydirectory/ift/train.jsonl'
register_to = 'main.mydirectory'
run = fm.create(
  model=model,
  train_data_path=train_data_path,
  register_to=register_to,
)

데이터 준비, 학습 실행 구성 및 배포를 미세 조정하는 지침 미세 조정 예제는 지침 미세 조정: 명명된 엔터티 인식 데모 Notebook을 참조하세요.

제한 사항

  • 컴퓨팅 가용성으로 인해 큰 데이터 세트(100억 개 이상의 토큰)는 지원되지 않습니다.

  • 지속적 사전 학습의 경우 워크로드는 60~256MB 파일로 제한됩니다. 파일이 1GB보다 크면 처리 시간이 길어질 수 있습니다.

  • Databricks는 파운데이션 모델 미세 조정을 사용하여 사용자 지정에 사용할 수 있는 최신 최신 모델을 만들기 위해 노력하고 있습니다. 새 모델을 사용할 수 있게 되면 API 또는 UI에서 이전 모델에 대한 액세스가 제거되거나 이전 모델이 더 이상 사용되지 않거나 지원되는 모델이 업데이트될 수 있습니다. 생성형 AI 모델 유지 관리 정책을 참조하세요.

  • 파운데이션 모델 미세 조정은 Private Link 뒤에 있는 스토리지를 사용하는 Azure 작업 영역에 대한 모델 학습만 지원합니다.

    • 현재 eastus2에서 프라이빗 링크 뒤에 존재하는 스토리지의 데이터를 읽는 작업만 지원됩니다.
  • Unity Catalog데이터를 저장하는 Azure Data Lake Storage 계정에서 방화벽이 설정된 경우, Foundation Model 미세 조정을 사용하려면 Databricks 서버리스 데이터 평면 클러스터의 트래픽을 허용해야 합니다. 자세한 내용과 가능한 사용자 지정 솔루션은 Databricks 계정 팀에 문의하세요.