다음을 통해 공유


Azure AI 스튜디오에서 Meta Llama 모델 미세 조정

Important

이 문서에 표시된 항목(미리 보기)은 현재 퍼블릭 미리 보기에서 확인할 수 있습니다. 이 미리 보기는 서비스 수준 계약 없이 제공되며, 프로덕션 워크로드에는 권장되지 않습니다. 특정 기능이 지원되지 않거나 기능이 제한될 수 있습니다. 자세한 내용은 Microsoft Azure Preview에 대한 추가 사용 약관을 참조하세요.

Azure AI 스튜디오를 통해 ‘미세 조정’이라는 프로세스를 사용하여 개인 데이터 세트에 맞게 대규모 언어 모델을 조정할 수 있습니다.

미세 조정은 특정 작업과 애플리케이션의 사용자 지정 및 최적화가 가능하므로 상당한 가치를 제공합니다. 미세 조정은 성능 향상, 비용 효율성, 대기 시간 감소, 맞춤형 출력으로 이어집니다.

이 문서에서는 Azure AI Studio에서 Meta Llama 모델을 미세 조정하는 방법을 알아봅니다.

LLM(대규모 언어 모델)은 메타 라마 제품군은 70억에서 700억 개의 매개 변수에 이르는 대규모로 미리 학습되고 미세 조정된 생성 텍스트 모델의 컬렉션입니다. 모델 패밀리에는 RLHF(인간 피드백 기반 강화 학습)를 사용하여 대화 사용 사례에 최적화된 Llama-Instruct라는 미세 조정된 버전도 포함되어 있습니다.

Important

미리 보기에 있는 모델은 모델 카탈로그의 모델 카드에서 미리 보기표시됩니다.

모델

다음 모델은 종량제 청구를 사용하여 서비스로 미세 조정하는 경우 Azure Marketplace for Llama 3.1에서 사용할 수 있습니다.

  • Meta-Llama-3.1-70B-Instruct(미리 보기)
  • Meta-LLama-3.1-8b-Instruct(미리 보기)

Llama 3.1 모델의 미세 조정은 현재 미국 서부 3에 있는 프로젝트에서 지원됩니다.

Important

현재는 시퀀스 길이가 128K인 Llama 3.1에 대해 미세 조정을 수행할 수 없습니다.

필수 조건

유효한 결제 방법을 사용하는 Azure 구독입니다. 무료 또는 평가판 Azure 구독은 작동하지 않습니다. Azure 구독이 없으면 유료 Azure 계정을 만들어 시작합니다.

  • Azure AI 스튜디오 허브.

    Important

    Meta Llama 3.1 모델의 경우 종량제 모델 미세 조정 제품은 미국 서부 3 지역에서 만든 허브에서만 사용할 수 있습니다.

  • Azure AI 스튜디오에서 Azure AI 스튜디오 프로젝트 만들기

  • Azure RBAC(Azure 역할 기반 액세스 제어)는 Azure AI Studio의 작업에 대한 액세스 권한을 부여하는 데 사용됩니다. 이 문서의 단계를 수행하려면 사용자 계정에 Azure 구독에 대한 소유자 또는 기여자 역할이 할당되어야 합니다. 또는 계정에 다음 권한이 있는 사용자 지정 역할을 할당할 수 있습니다.

    • Azure 구독에서 AI 스튜디오 프로젝트를 Azure Marketplace 제품에 구독하려면(각 Azure AI 프로젝트에 대해 제품별로 한 번씩) 다음을 수행합니다.

      • Microsoft.MarketplaceOrdering/agreements/offers/plans/read
      • Microsoft.MarketplaceOrdering/agreements/offers/plans/sign/action
      • Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements/read
      • Microsoft.Marketplace/offerTypes/publishers/offers/plans/agreements/read
      • Microsoft.SaaS/register/action
    • 리소스 그룹에서 SaaS 리소스를 만들고 사용하려면 다음을 수행합니다.

      • Microsoft.SaaS/resources/read
      • Microsoft.SaaS/resources/write
    • AI 스튜디오 프로젝트에서 엔드포인트를 배포하려면 다음을 수행합니다(Azure AI 개발자 역할에는 이미 이러한 권한이 포함되어 있음).

      • Microsoft.MachineLearningServices/workspaces/marketplaceModelSubscriptions/*
      • Microsoft.MachineLearningServices/workspaces/serverlessEndpoints/*

    권한에 대한 자세한 내용은 Azure AI Studio의 역할 기반 액세스 제어를 참조하세요.

구독 공급자 등록

구독이 Microsoft.Network 리소스 공급자에 등록되어 있는지 확인합니다.

  1. Azure Portal에 로그인합니다.

  2. 왼쪽 메뉴에서 구독을 선택합니다.

  3. 사용할 구독을 선택합니다.

  4. 왼쪽 메뉴에서 설정>리소스 공급자를 선택합니다.

  5. Microsoft.Network가 리스트 공급자 목록에 있는지 확인합니다. 없다면 추가합니다.

    Azure Portal의 구독 리소스 공급자 스크린샷.

데이터 준비

모델 미세 조정을 위해 학습 및 유효성 검사 데이터를 준비합니다. 학습 데이터 및 유효성 검사 데이터 세트는 원하는 모델 성능에 대한 입력 및 출력 예제로 구성됩니다.

모든 학습 예제가 예상 유추 형식을 따르는지 확인합니다. 모델을 효과적으로 미세 조정하려면 데이터 세트가 균형 잡히고 다양해야 합니다.

여기에는 다양한 시나리오를 포함한 데이터 균형을 유지하고, 실제 기대에 맞게 학습 데이터를 주기적으로 구체화하고, 궁극적으로 보다 정확하고 균형 잡힌 모델 응답을 이끌어내는 작업이 포함됩니다.

모델 유형에 따라 학습 데이터의 형식이 다릅니다.

사용하는 학습 및 유효성 검사 데이터는 반드시 JSONL(JSON Lines) 문서로 서식을 지정해야 합니다. Meta-Llama-3.1-70B-Instruct의 경우 세부 조정 데이터 세트는 채팅 완료 API에서 사용되는 대화형 형식으로 서식을 지정해야 합니다.

예제 파일 형식

    {"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "Is Xbox better than PlayStation?"}, {"role": "assistant", "content": "I apologize, but I cannot provide personal opinions. My primary job is to assist you with any issues related to your Xbox device. Do you have any Xbox-related issues that need addressing?"}]}
    {"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "Can I play PC games on my Xbox?"}, {"role": "assistant", "content": "While Xbox consoles don't natively support PC games, they can play an array of Xbox games, many of which are also available on PC. Can I assist you with finding games compatible with your Xbox device?"}]}
    {"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "I'm having trouble connecting my Xbox to the Wi-Fi."}, {"role": "assistant", "content": "No worries, let's go through the network settings on your Xbox. Can you please tell me what happens when you try to connect it to the Wi-Fi?"}]}

지원되는 파일 형식은 JSON 줄입니다. 파일은 기본 데이터 저장소에 업로드되며, 프로젝트에서 사용할 수 있습니다.

메타 라마 모델 미세 조정

LLama 3.1 모델을 미세 조정하려면:

  1. Azure AI 스튜디오에 로그인합니다.

  2. Azure AI Studio 모델 카탈로그에서 미세 조정하려는 모델을 선택합니다.

  3. 모델의 세부 정보 페이지에서 미세 조정하기를 선택합니다.

  4. 모델을 미세 조정할 프로젝트를 선택합니다. 종량제 모델 미세 조정 제품을 사용하려면 작업 영역이 미국 서부 3 지역에 속해야 합니다.

  5. 미세 조정 마법사에서 Azure Marketplace 사용 약관 링크를 선택하여 사용 약관에 대해 자세히 알아봅니다. Marketplace 제품 세부 정보 탭을 선택하여 선택한 모델의 가격 책정에 대해 알아볼 수도 있습니다.

  6. 프로젝트에서 모델을 처음으로 미세 조정하는 경우 Azure Marketplace에서 특정 제품(예: Meta-Llama-3.1-70B-Instruct)에 대한 프로젝트를 구독해야 합니다. 이 단계를 수행하려면 계정에 필수 구성 요소에 나열된 Azure 구독 권한 및 리소스 그룹 권한이 있어야 합니다. 각 프로젝트에는 지출을 제어하고 모니터링할 수 있는 특정 Azure Marketplace 제공 사항에 대한 자체 구독이 있습니다. 구독과 미세 조정을 선택 합니다.

    참고 항목

    특정 Azure Marketplace 제품(이 경우 Meta-Llama-3.1-70B-Instruct)에 프로젝트를 등록하려면 프로젝트를 만든 구독 수준에서 계정에 기여자 또는 소유자 액세스 권한이 있어야 합니다. 또는 사용자 계정에 필수 조건에 나열된 Azure 구독 권한 및 리소스 그룹 권한이 있는 사용자 지정 역할을 할당할 수 있습니다.

  7. 특정 Azure Marketplace 제품에 프로젝트를 등록한 후에는 동일한 프로젝트에서 동일한 제품을 미세 조정하는 경우 다시 구독할 필요가 없습니다. 따라서 후속 미세 조정 작업에 대한 구독 수준 권한이 필요하지 않습니다. 이 시나리오가 적용되는 경우 미세 조정하려면 계속을 선택합니다.

  8. 미세 조정된 모델의 이름과 선택적 태그 및 설명을 입력합니다.

  9. 학습 데이터를 선택하여 모델을 미세 조정합니다. 자세한 내용은 데이터 준비를 참조하세요.

    참고 항목

    자격 증명이 없는 데이터 저장소에 학습/유효성 검사 파일이 있는 경우 자격 증명이 없는 스토리지에서 MaaS 미세 조정을 진행하려면 데이터 저장소에 대한 작업 영역 관리 ID 액세스를 허용해야 합니다. "데이터 저장소" 페이지에서 "인증 업데이트" >을 클릭한 후 다음 옵션을 선택합니다.

    Azure Machine Learning 스튜디오에서 데이터 미리 보기 및 프로파일링에 작업 영역 관리 ID를 사용합니다.

    모든 학습 예제가 예상 유추 형식을 따르는지 확인합니다. 모델을 효과적으로 미세 조정하려면 데이터 세트가 균형 잡히고 다양해야 합니다. 여기에는 다양한 시나리오를 포함한 데이터 균형을 유지하고, 실제 기대에 맞게 학습 데이터를 주기적으로 구체화하고, 궁극적으로 보다 정확하고 균형 잡힌 모델 응답을 이끌어내는 작업이 포함됩니다.

    • 학습에 사용할 일괄 처리 크기입니다. -1로 설정하면 batch_size가 학습 집합에서 예제의 0.2%로 계산되고 최대값은 256입니다.
    • 미세 조정 학습 속도는 사전 학습에 사용된 원래 학습 속도에 이 승수를 곱한 값입니다. 0.5에서 2 사이의 값으로 실험하는 것이 좋습니다. 경험적으로 우리는 학습 속도가 클수록 일괄 처리 크기가 클수록 더 나은 성능을 보이는 경우가 많다는 것을 발견했습니다. 0.0에서 5.0 사이여야 합니다.
    • 학습 Epoch의 수입니다. epoch는 데이터 세트의 완전한 1회 순환을 말합니다.
  10. 작업 매개 변수는 선택적 단계이며 고급 옵션입니다. 하이퍼 매개 변수 튜닝은 실제 애플리케이션에서 LLM(대규모 언어 모델)을 최적화하는 데 필수적입니다. 이를 통해 성능 향상과 효율적 리소스 사용이 가능합니다. 기본 설정을 사용할 수도 있고, 고급 사용자는 epoch 또는 학습 속도 같은 매개 변수를 사용자 지정할 수도 있습니다.

  11. 선택 항목을 검토하고 모델 학습을 계속 진행합니다.

모델이 미세 조정되면 모델을 배포하고 자체 애플리케이션, 플레이그라운드 또는 프롬프트 흐름에서 사용할 수 있습니다. 자세한 내용은 Azure AI Studio를사용하여 대규모 언어 모델의 Llama 3.1 제품군을 배포하는 방법을 참조하세요.

미세 조정된 모델 정리

Azure AI 스튜디오의 미세 조정 모델 목록 또는 모델 세부 정보 페이지에서 미세 조정된 모델을 삭제할 수 있습니다. 미세 조정 페이지에서 삭제할 미세 조정된 모델을 선택한 다음 삭제 단추를 선택하여 미세 조정된 모델을 삭제합니다.

참고 항목

기존 배포가 있는 사용자 지정 모델은 삭제할 수 없습니다. 사용자 지정 모델을 삭제하려면 모델 배포부터 삭제해야 합니다.

비용 및 할당량

서비스로 미세 조정된 Meta Llama 모델의 비용 및 할당량 고려 사항

서비스로 미세 조정된 Meta Llama 모델은 Meta가 Azure Marketplace를 통해 제공하고 사용할 수 있는 Azure AI Studio와 통합됩니다. 모델을 배포하거나 미세 조정하는 경우 Azure Marketplace 가격 책정을 찾을 수 있습니다.

프로젝트가 Azure Marketplace에서 지정된 제품을 구독할 때마다 사용에 연결된 비용을 추적하기 위해 새 리소스가 만들어집니다. 유추 및 미세 조정과 관련된 비용을 추적하는 데는 동일한 리소스가 사용되지만 여러 미터를 사용하여 각 시나리오를 독립적으로 추적할 수 있습니다.

비용을 추적하는 방법에 대한 자세한 내용은 Azure Marketplace를 통해 제공되는 모델에 대한 비용 모니터링을 참조하세요.

샘플 Notebook

샘플 Notebook 을 사용하여 독립 실행형 미세 조정 작업을 만들어 Samsum 데이터 세트를 사용하여 두 사람 간의 대화를 요약하는 모델의 기능을 향상시킬 수 있습니다. 활용되는 학습 데이터는 ultrachat_200k 데이터 세트로, 감독된 미세 조정(sft) 및 세대 순위(gen)에 적합한 네 개의 분할로 나뉩니다. Notebook은 채팅 완료 작업에 사용 가능한 Azure AI 모델을 사용합니다(Notebook에 사용된 모델과 다른 모델을 사용하려는 경우 모델 이름을 바꿀 수 있음). Notebook에는 필수 구성 요소 설정, 미세 조정할 모델 선택, 학습 및 유효성 검사 데이터 세트 만들기, 미세 조정 작업 구성 및 제출, 마지막으로 샘플 유추를 위해 미세 조정된 모델을 사용하여 서버리스 배포 만들기가 포함됩니다.

콘텐츠 필터링

종량제 청구를 통해 서비스로 배포되는 모델은 Azure AI 콘텐츠 보안으로 보호됩니다. 실시간 엔드포인트에 배포되는 경우 이 기능을 옵트아웃할 수 있습니다. Azure AI 콘텐츠 보안을 사용하도록 설정한 경우 유해한 콘텐츠의 출력을 탐지하고 방지하기 위한 분류 모델의 앙상블을 통해 프롬프트와 완료가 모두 실행됩니다. 콘텐츠 필터링(미리 보기) 시스템은 입력 프롬프트와 출력 완성 모두에서 잠재적으로 유해한 콘텐츠의 특정 범주를 검색하고 조치를 취합니다. Azure AI 콘텐츠 보안에 대해 자세히 알아보기.

다음 단계