도메인 조정을 사용하여 대규모 언어 모델(LLM) 미세 조정
도메인 적응 미세 조정을 통해 사전 훈련된 파운데이션 모델을 활용하고 제한된 도메인별 데이터를 사용하여 특정 작업에 적응할 수 있습니다. 프롬프트 엔지니어링 노력으로도 충분한 사용자 지정이 이루어지지 않는 경우, 도메인 적응 미세 조정을 사용하여 산업 용어, 기술 용어 또는 기타 특수 데이터와 같은 도메인별 언어를 사용하여 모델을 작동시킬 수 있습니다. 이 미세 조정 프로세스는 모델의 가중치를 수정합니다.
도메인별 데이터세트에서 모델을 미세 조정하려면
-
학습 데이터를 준비합니다. 지침은 도메인 조정 미세 조정을 위한 훈련 데이터 준비 및 업로드 섹션을 참조하세요.
-
미세 조정 훈련 작업을 생성합니다. 지침은 지침 기반 미세 조정을 위한 훈련 작업 생성 섹션을 참조하세요.
에서 엔드 투 엔드 예제를 찾을 수 있습니다예제 노트북.
도메인 적응 미세 조정은 다음 파운데이션 모델에서 사용할 수 있습니다.
참고
Llama 2 7B와 같은 일부 JumpStart 파운데이션 모델은 미세 조정 및 추론 수행 전에 최종 사용자 라이선스 계약을 수락해야 합니다. 자세한 내용은 최종 사용자 라이선스 계약 섹션을 참조하세요.
-
Bloom 3B
-
Bloom 7B1
-
BloomZ 3B FP16
-
BloomZ 7B1 FP16
-
GPT-2 XL
-
GOT-J 6B
-
GPT-Neo 1.3B
-
GPT-Neo 125M
-
GPT-NEO 2.7B
-
Llama 2 13B
-
Llama 2 13B Chat
-
Llama 2 13B Neuron
-
Llama 2 70B
-
Llama 2 70B Chat
-
Llama 2 7B
-
Llama 2 7B Chat
-
Llama 2 7B Neuron
도메인 조정 미세 조정을 위한 훈련 데이터 준비 및 업로드
도메인 조정 미세 조정을 위한 훈련 데이터는 CSV, JSON 또는 TXT 파일 형식으로 제공할 수 있습니다. 모든 훈련 데이터는 단일 폴더 내의 단일 파일에 있어야 합니다.
훈련 데이터는 CSV 또는 JSON 훈련 데이터 파일의 텍스트 열에서 가져옵니다. 텍스트 레이블이 지정된 열이 없는 경우 훈련 데이터는 CSV 또는 JSON 훈련 데이터 파일의 첫 번째 열에서 가져옵니다.
다음은 미세 조정에 사용할 TXT 파일의 예제 본문입니다.
This report includes estimates, projections, statements relating to our business plans, objectives, and expected operating results that are “forward- looking statements” within the meaning of the Private Securities Litigation Reform Act of 1995, Section 27A of the Securities Act of 1933, and Section 21E of ....
훈련 및 테스트를 위한 데이터 분할
필요에 따라 검증 데이터가 포함된 다른 폴더를 제공할 수 있습니다. 이 폴더에는 CSV, JSON 또는 TXT 파일 하나도 포함되어야 합니다. 검증 데이터세트가 제공되지 않은 경우 검증 목적으로 설정된 양의 훈련 데이터가 따로 설정됩니다. 모델을 미세 조정할 하이퍼파라미터를 선택할 때 검증에 사용되는 훈련 데이터의 비율을 조정할 수 있습니다.
Amazon S3에 미세 조정 데이터 업로드
준비된 데이터를 Amazon Simple Storage Service(Amazon S3)에 업로드하여 JumpStart 파운데이션 모델을 미세 조정할 때 사용합니다. 다음 명령을 사용하여 데이터를 업로드할 수 있습니다.
from sagemaker.s3 import S3Uploader import sagemaker import random output_bucket = sagemaker.Session().default_bucket() local_data_file =
"train.txt"
train_data_location = f"s3://{output_bucket}/training_folder"
S3Uploader.upload(local_data_file, train_data_location) S3Uploader.upload("template.json", train_data_location) print(f"Training data: {train_data_location}")
지침 기반 미세 조정을 위한 훈련 작업 생성
데이터가 Amazon S3에 업로드된 후 JumpStart 파운데이션 모델을 미세 조정하고 배포할 수 있습니다. Studio에서 모델을 미세 조정하려면 Studio에서 모델 미세 조정 섹션을 참조하세요. SageMaker Python SDK를 사용하여 모델을 미세 조정하려면 JumpStartEstimator 클래스를 사용하여 공개적으로 사용 가능한 파운데이션 모델을 미세 조정합니다. 섹션을 참조하세요.
예제 노트북
도메인 조정 미세 조정에 대한 자세한 내용은 다음 예제 노트북을 참조하세요.