View a markdown version of this page

SageMaker 훈련 작업에서 Amazon Nova 사용자 지정 - Amazon Nova

SageMaker 훈련 작업에서 Amazon Nova 사용자 지정

SageMaker 훈련 작업은 기계 학습 모델을 대규모로 훈련할 수 있는 환경입니다. 컴퓨팅 리소스를 자동으로 프로비저닝 및 확장하고, Amazon S3와 같은 소스에서 훈련 데이터를 로드하고, 훈련 코드를 실행하고, 결과 모델 아티팩트를 저장합니다.

훈련의 목적은 독점 데이터를 사용하여 기본 Amazon Nova 모델을 사용자 지정하는 것입니다. 훈련 프로세스에는 일반적으로 데이터를 준비하고, 레시피를 선택하며, YAML 파일에서 구성 파라미터를 수정하고, 훈련 작업을 제출하는 단계가 포함됩니다. 훈련 프로세스는 훈련된 모델 체크포인트를 서비스 관리형 Amazon S3 버킷에 출력합니다. 이 체크포인트 위치를 평가 작업에 사용할 수 있습니다. SageMaker AI 훈련 작업에서 Nova 사용자 지정을 수행하면, 모델 아티팩트가 서비스 관리형 Amazon S3 버킷에 저장됩니다. 서비스 관리형 버킷의 아티팩트는 SageMaker AI 관리형 KMS 키로 암호화됩니다. 현재 서비스 관리형 Amazon S3 버킷은 고객 관리형 KMS 키를 사용한 데이터 암호화를 지원하지 않습니다.

Amazon Nova 사용자 지정 모범 사례

개요

이 섹션에서는 사용자 지정 기법에 대한 개요를 제공하고, 요구 사항과 사용 가능한 데이터에 가장 적합한 접근 방식을 선택하는 데 도움을 줍니다.

LLM 훈련의 두 가지 단계

대규모 언어 모델 훈련은 두 가지 주요 단계(사전 훈련 및 사후 훈련)로 구성됩니다. 사전 훈련 단계에서 모델은 원시 텍스트의 토큰을 처리하고 다음 토큰 예측을 위해 최적화됩니다. 이 프로세스에서는 웹 및 엄선된 텍스트에서 구문, 시맨틱, 사실 및 추론 패턴을 흡수하는 패턴 완성기를 생성합니다. 그러나 사전 훈련된 모델은 지침, 사용자 목표 또는 컨텍스트별 동작을 이해하지 못합니다. 훈련 배포에 맞는 스타일로 텍스트를 계속 처리합니다. 사전 훈련된 모델은 지침을 따르는 대신 자동 완성을 수행하고, 일치하지 않는 형식을 생성하며, 훈련 데이터에서 원치 않는 편향이나 안전하지 않은 콘텐츠를 미러링할 수 있습니다. 사전 훈련에서는 태스크 유용성이 아닌 일반적인 기능을 구축합니다.

사후 훈련에서는 패턴 완성기를 유용한 어시스턴트로 변환합니다. 여러 차례의 감독 미세 조정(SFT)을 실행하여 모델이 지침을 따르고, 스키마 및 정책을 준수하며, 도구를 직접 호출하고, 고품질 데모를 모방하여 신뢰할 수 있는 출력을 생성하도록 가르칩니다. 이 조정을 통해 계속 진행하려면 텍스트가 아닌 태스크로 프롬프트에 응답하도록 모델을 가르칩니다. 그런 다음 강화 미세 조정(RFT)을 적용하여 측정 가능한 피드백(예: 확인자 또는 평가형 LLM), 정확도와 간결성, 안전과 적용 범위 또는 제약 조건 아래에서 여러 단계의 추론과 같은 장단점의 균형을 맞춰 동작을 최적화합니다. 실제로 SFT와 RFT를 주기적으로 교체하여 사전 훈련된 모델을 복잡한 태스크를 일관되게 수행하는 신뢰할 수 있는 정책 조정 시스템으로 구축합니다.

올바른 사용자 지정 접근 방식 선택

이 섹션에서는 사후 훈련 사용자 지정 전략(RFT 및 SFT)을 다룹니다.

강화 미세 조정(RFT)

강화 미세 조정은 정확히 올바른 답변으로 직접 감독하는 대신 응답 품질을 나타내는 피드백 신호(측정 가능한 점수 또는 보상)를 통해 모델 성능을 개선합니다. 입력과 출력 페어로부터 학습하는 기존의 지도 미세 조정과 달리, RFT는 보상 함수를 사용하여 모델 응답을 평가하고 반복적으로 모델을 최적화하여 이러한 보상을 극대화합니다. 이 접근 방식은 정확히 올바른 출력을 정의하기 어려운 태스크에 효과적이지만 신뢰할 수 있는 방식으로 응답 품질을 측정할 수 있습니다. RFT를 사용하면 모델이 시험과 피드백을 통해 복잡한 행동과 선호도를 학습할 수 있으므로, 세심한 의사 결정, 창의적인 문제 해결 또는 프로그래밍 방식으로 평가할 수 있는 특정 품질 기준 준수가 필요한 애플리케이션에 적합합니다. 예를 들어 복잡한 법적 질문에 대한 답변은 RFT의 이상적인 사용 사례입니다. 질문에 더 정확하게 답변하는 방법을 모델에 가르치고 싶기 때문입니다.

작동 방식

강화 미세 조정에서는 지침 조정 기준에서 시작하여 각 프롬프트를 작은 토너먼트와 같이 처리합니다. 주어진 입력에 대해 모델의 몇 가지 후보 답변을 샘플링하고 보상 함수로 각각의 점수를 매긴 후 해당 그룹 내에서 순위를 정합니다. 업데이트 단계에서는 다음에 점수가 내려가지 않고 점수가 더 높아질 수 있도록 모델을 유도하면서, 기준 유지 제약 조건을 통해 동작이 드리프팅되거나 장황해지거나 악용되는 것을 방지합니다. 많은 프롬프트에서 이 루프를 반복하여 하드 케이스를 새로 고치고, 악용이 발견되면 확인자 또는 평가 루브릭을 강화하며, 태스크 지표를 지속적으로 추적합니다.

RFT는 사용하는 경우

RFT를 가장 많이 활용하는 태스크는 몇 가지 특성을 공유합니다. 하나의 올바른 출력을 지정하기 어려운 경우에도 측정 가능한 성공 신호를 제공합니다. 부분 크레딧 또는 등급이 지정된 품질을 인정하므로 프롬프트 내에서 또는 보상 함수를 사용하여 더 좋거나 나쁜 응답의 순위를 정할 수 있습니다. 여기에는 균형을 맞춰야 하는 여러 목표(예: 간결함, 명확함, 안전 또는 비용을 고려한 정확성)가 포함됩니다. 프로그래밍 방식으로 확인할 수 있는 명시적 제약 조건을 준수해야 합니다. 결과를 관찰할 수 있는 도구로 조정되는 설정 또는 환경 기반 설정(성공 또는 실패, 지연 시간, 리소스 사용)에서 작동합니다. 이는 골드 타겟을 수집하는 데 비용이 많이 들지만 자동 피드백이나 루브릭 기반 피드백이 많은 낮은 수준의 레이블 영역에서 나타납니다. RFT는 품질을 신뢰할 수 있는 스칼라 또는 순위로 전환하고 레이블이 지정된 전수 대상 없이도 모델이 더 높은 점수의 동작을 우선적으로 증폭하도록 하는 경우에 가장 효과적입니다.

다음과 같은 경우 다른 방법을 고려합니다.

  • 신뢰할 수 있는 많은 레이블이 지정된 입력과 출력 페어가 있는 경우 - SFT 사용

  • 기본 격차가 지식 또는 전문 용어에서 발생하는 경우 - 검색 증강 생성(RAG) 사용

  • 보상 신호에 노이즈가 있거나 이를 신뢰할 수 없으며 더 나은 루브릭이나 검사기로 수정할 수 없는 경우 - RFT 이전에 먼저 안정화

RFT를 사용하지 말아야 하는 경우

다음과 같은 상황에서는 RFT를 사용하지 않습니다.

  • 신뢰할 수 있는 레이블이 지정된 입력과 출력 페어를 저렴하게 생성할 수 있는 경우(SFT가 더 단순하고 저렴하며 안정적임)

  • 격차는 동작이 아닌 지식 또는 전문 용어에서 발생하는 경우(RAG 사용)

  • 보상 신호에 노이즈가 있거나 희소하거나 쉽게 훈련이 가능하거나 비용이 많이 들거나 컴퓨팅 속도가 느린 경우(먼저 평가자 수정)

  • 기준 성능이 0에 가까운 경우(선호도를 최적화하기 전에 SFT로 부트스트랩)

  • 태스크에 결정적 스키마, 엄격한 형식 또는 단일 정답이 포함된 경우(SFT 또는 규칙 기반 검증이 더 효과적임)

  • 긴 지연 시간 또는 비용 예산잉 RFT에 필요한 추가 샘플링 또는 탐색을 수용할 수 없는 경우

  • 안전 또는 정책 제약 조건이 명확하게 지정되지 않고 보상에서 적용 가능하지 않은 경우

'정답'을 가리킬 수 있는 경우 SFT를 사용합니다. 새로운 지식이 필요한 경우 RAG를 사용합니다. 견고한 기준과 강력하고 빠르며 악용하기 어려운 보상 함수가 있는 경우에만 RFT를 사용합니다.

지도 미세 조정(SFT)

감독 미세 조정은 태스크에 대해 사람이 레이블을 지정하는 입력과 출력 페어의 데이터세트를 기반으로 LLM을 훈련합니다. 올바른 응답이나 원하는 응답과 함께 프롬프트의 예제(질문, 지침 등)를 제공하고 이를 기반으로 모델을 계속 훈련합니다. 모델은 지도 손실(일반적으로 예측과 대상 출력 토큰 사이의 교차 엔트로피)를 최소화하도록 해당 가중치를 조정합니다. 이는 대부분의 지도 기계 학습 태스크에 사용되는 것과 동일한 훈련으로, LLM을 전문화하는 데 적용됩니다.

SFT는 지식이 아닌 동작을 변경합니다. 사전 훈련에서 나타나지 않았던 새로운 사실이나 전문 용어를 모델에 가르치지 않습니다. 모델에 알아야 할 내용이 아닌 어떻게 답변하는지를 가르칩니다. 새로운 도메인 지식(예: 내부 용어)이 필요한 경우 검색 증강 생성(RAG)을 사용하여 추론 시 해당 컨텍스트를 제공합니다. 그런 다음 SFT는 원하는 지침 준수 동작을 맨 위에 추가합니다.

작동 방식

SFT는 응답 토큰의 평균 교차 엔트로피 손실을 최소화하고 프롬프트 토큰을 컨텍스트로 처리하며 손실로부터 해당 정보를 마스킹하여 LLM을 최적화합니다. 모델은 대상 스타일, 구조 및 의사 결정 규칙을 내재화하여 각 프롬프트에 대해 올바른 완성 항목을 생성하는 방법을 학습합니다. 예를 들어 문서를 사용자 지정 카테고리로 분류하려면 프롬프트(문서 텍스트)와 레이블이 지정된 완성 항목(카테고리 레이블)으로 모델을 미세 조정합니다. 모델이 높은 확률로 각 프롬프트에 올바른 레이블을 출력할 때까지 해당 페어에서 훈련합니다.

몇백 개의 소수 예제만으로 SFT를 수행하다가 수십만 개로 스케일 업할 수 있습니다. SFT 샘플은 고품질이어야 하며 원하는 모델 동작에 맞게 직접 조정되어야 합니다.

SFT는 사용하는 경우

원하는 출력이 명확한 잘 정의된 태스크가 있는 경우 SFT를 사용합니다. 'X 입력 제공, 올바른 출력은 Y'라고 명시적으로 말할 수 있고 이러한 매핑의 예제를 수집할 수 있는 경우 지도 미세 조정이 적합합니다. SFT는 다음 시나리오에서 뛰어납니다.

  • 구조화되거나 복잡한 분류 태스크 - 내부 문서 또는 계약을 여러 사용자 지정 카테고리로 분류합니다. SFT를 사용하면 모델은 프롬프트만 사용할 때보다 이러한 특정 카테고리를 훨씬 더 잘 학습할 수 있습니다.

  • 알려진 답변이 있는 질문 답변 또는 변환 태스크 - 회사의 지식 베이스를 통해 질문에 답변하거나 각 입력에 올바른 응답이 있는 경우 여러 형식 사이에서 데이터를 변환하도록 모델을 미세 조정합니다.

  • 형식 지정 및 스타일 일관성 - 올바른 형식이나 어조의 예제를 미세 조정하여 모델이 항상 특정 형식 또는 어조로 응답하도록 훈련합니다. 예를 들어 특정 브랜드 음성을 보여주는 프롬프트와 응답 페어에서 훈련하는 경우 해당 스타일로 출력을 생성하도록 모델을 가르칩니다. 지침 준수 동작은 종종 처음에 SFT를 통해 선별된 올바른 어시스턴트 동작 예제를 사용하여 학습됩니다.

SFT는 올바른 동작을 지정할 수 있는 경우 LLM에 새로운 기술이나 동작을 가르치는 가장 직접적인 방법입니다. 그리고 모델의 기존 언어 이해를 사용하고 태스크에 집중합니다. 모델이 특정 작업을 수행하도록 하고 예제 데이터세트를 생성하거나 생성할 수 있는 경우 SFT를 사용합니다.

원하는 동작을 밀접하게 미러링하는 고품질 프롬프트 및 응답 페어를 조합할 수 있는 경우 SFT를 사용합니다. 스키마, 함수 또는 도구 직접 호출, 모방이 적절한 훈련 신호인 구조화된 답변과 같은 명확한 대상이나 결정적 형식이 있는 태스크에 적합합니다. 목표는 동작을 구성하는 것입니다. 즉, 프롬프트를 태스크로 처리하고, 지침을 따르며, 어조 및 거부 정책을 채택하고, 일관된 형식을 생성하도록 모델을 가리칩니다. 원시 볼륨보다 데이터 품질, 일관성 및 중복 제거가 더 중요한 수백 개 이상의 데모를 계획합니다. 직관적이고 비용 효율적인 업데이트를 위해 저순위 적응과 같은 파라미터 효율적 메서드를 사용하여 대부분의 백본을 그대로 유지하면서 소형 어댑터를 훈련합니다.

SFT를 사용하지 말아야 하는 경우

격차가 동작이 아닌 지식인 경우 SFT를 사용하지 마세요. 모델에 새로운 사실, 전문 용어 또는 최근 이벤트를 가르치지 않습니다. 이러한 경우 검색 증강 생성을 사용하여 추론 시 외부 지식을 가져옵니다. 품질을 측정할 수 있지만 하나의 올바른 답변에 레이블을 지정할 수 없는 경우 SFT를 사용하지 마세요. 확인 가능한 보상 또는 평가형 LLM로 강화 미세 조정을 사용하여 이러한 보상을 직접 최적화합니다. 요구 사항이나 콘텐츠가 자주 변경되는 경우 모델을 재훈련하는 대신 검색 및 도구 사용에 의존하세요.