다음을 통해 공유


Azure OpenAI 모델 작업

Azure OpenAI 서비스는 다양한 기능과 가격대를 갖춘 다양한 모델 집합으로 구동됩니다. 모델 가용성은 지역에 따라 다릅니다.

모델 목록 API를 사용하여 Azure OpenAI 리소스에서 유추 및 미세 조정에 사용할 수 있는 모델 목록을 가져올 수 있습니다.

모델 업데이트

이제 Azure OpenAI는 선택 모델 배포에 대한 자동 업데이트를 지원합니다. 자동 업데이트 지원을 사용할 수 있는 모델에서는 배포편집 아래의 Azure AI Foundry 포털에 모델 버전 드롭다운이 표시됩니다.

Azure AI Foundry 포털의 배포 모델 UI 스크린샷

Azure OpenAI 모델 버전 및 작동 방식은 Azure OpenAI 모델 버전 문서에서 자세히 알아볼 수 있습니다.

참고 항목

자동 모델 업데이트는 표준 배포 유형에 대해서만 지원됩니다. 프로비전된 배포 유형에서 모델 업데이트 및 마이그레이션을 관리하는 방법에 대한 자세한 내용은 프로비전된 배포 유형에 대한 모델 관리 섹션을 참조하세요.

기본값으로 자동 업데이트

배포를 기본으로 자동 업데이트로 설정하면 기본 버전이 변경된 후 2주 이내에 모델 배포가 자동으로 업데이트됩니다. 미리 보기 버전의 경우 새 미리 보기 버전이 릴리스된 후 2주 후에 새 미리 보기 버전을 사용할 수 있게 되면 자동으로 업데이트됩니다.

유추 모델에 대한 초기 테스트 단계에 있는 경우 가능할 때마다 기본값으로 자동 업데이트가 설정된 모델을 배포하는 것이 좋습니다.

특정 모델 버전

Azure OpenAI 사용이 진화하고 애플리케이션을 빌드하고 통합하기 시작하면 모델 업데이트를 수동으로 제어할 수 있습니다. 먼저 업그레이드하기 전에 애플리케이션 동작이 사용 사례에 대해 일관된지 테스트하고 유효성을 검사할 수 있습니다.

배포를 위한 특정 모델 버전을 선택하면 수동으로 업데이트하도록 선택하거나 모델의 사용 중지 날짜에 도달할 때까지 이 버전이 선택된 상태로 유지됩니다. 사용 중지 날짜에 도달하면 모델은 사용 중지 시점에 기본 버전으로 자동 업그레이드됩니다.

사용 중지 날짜 보기

현재 배포된 모델의 경우 Azure AI Foundry 포털에서 배포를 선택합니다.

Azure AI Foundry 포털의 배포 UI 스크린샷

모델 배포 업그레이드 구성

Azure AI Foundry 포털에서 이전에 배포된 모델에 대해 설정된 모델 업그레이드 옵션을 확인할 수 있습니다. 배포>를 선택하고 배포 이름 열 아래에서 파란색으로 강조 표시된 배포 이름 중 하나를 선택합니다.

배포 이름을 선택하면 모델 배포에 대한 속성이 열립니다. 버전 업데이트 정책에서 배포에 대해 설정된 업그레이드 옵션을 볼 수 있습니다.

모델 배포 속성 UI의 스크린샷.

해당 속성은 REST, Azure PowerShellAzure CLI를 통해 액세스할 수도 있습니다.

옵션 읽음 엽데이트
REST 예. versionUpgradeOption(이)가 반환되지 않으면 null인 것입니다.
Azure PowerShell 예. VersionUpgradeOption$null인지 확인할 수 있습니다.
Azure CLI 예. versionUpgradeOption이 설정되지 않으면 null이 표시됩니다. 아니요. 현재 버전 업그레이드 옵션을 업데이트할 수 없습니다.

세 가지 고유한 모델 배포 업그레이드 옵션이 있습니다.

이름 설명
OnceNewDefaultVersionAvailable 새 버전이 기본값으로 지정되면 모델 배포는 해당 지정이 변경된 후 2주 이내에 자동으로 기본 버전으로 업그레이드됩니다.
OnceCurrentVersionExpired 사용 중지 날짜에 도달하면 모델 배포가 자동으로 현재 기본 버전으로 업그레이드됩니다.
NoAutoUpgrade 모델 배포는 자동으로 업그레이드되지 않습니다. 사용 중지 날짜에 도달하면 모델 배포가 작동을 중지합니다. 존재하지 않는 모델 배포를 가리키도록 해당 배포를 참조하는 코드를 업데이트해야 합니다.

참고 항목

nullOnceCurrentVersionExpired와 같습니다. 모델의 속성에 모델 업그레이드를 지원하는 버전 업데이트 정책 옵션이 없으면 값이 현재 null인 것입니다. 이 값을 명시적으로 수정하면 REST API뿐만 아니라 스튜디오 속성 페이지에도 속성이 표시됩니다.

예제

Azure PowerShell 시작 가이드를 검토하여 Azure PowerShell을 로컬로 설치하거나 Azure Cloud Shell을 사용할 수 있습니다.

아래 단계에서는 VersionUpgradeOption 옵션 속성을 확인하고 업데이트하는 방법을 보여 줍니다.

// Step 1: Get Deployment
$deployment = Get-AzCognitiveServicesAccountDeployment -ResourceGroupName {ResourceGroupName} -AccountName {AccountName} -Name {DeploymentName}
 
// Step 2: Show Deployment VersionUpgradeOption
$deployment.Properties.VersionUpgradeOption
 
// VersionUpgradeOption can be null - one way to check is
$null -eq $deployment.Properties.VersionUpgradeOption
 
// Step 3: Update Deployment VersionUpgradeOption
$deployment.Properties.VersionUpgradeOption = "NoAutoUpgrade"
New-AzCognitiveServicesAccountDeployment -ResourceGroupName {ResourceGroupName} -AccountName {AccountName} -Name {DeploymentName} -Properties $deployment.Properties -Sku $deployment.Sku
 
// repeat step 1 and 2 to confirm the change.
// If not sure about deployment name, use this command to show all deployments under an account
Get-AzCognitiveServicesAccountDeployment -ResourceGroupName {ResourceGroupName} -AccountName {AccountName}
// To update to a new model version

// Step 1: Get Deployment
$deployment = Get-AzCognitiveServicesAccountDeployment -ResourceGroupName {ResourceGroupName} -AccountName {AccountName} -Name {DeploymentName}

// Step 2: Show Deployment Model properties
$deployment.Properties.Model.Version

// Step 3: Update Deployed Model Version
$deployment.Properties.Model.Version = "0613"
New-AzCognitiveServicesAccountDeployment -ResourceGroupName {ResourceGroupName} -AccountName {AccountName} -Name {DeploymentName} -Properties $deployment.Properties -Sku $deployment.Sku

// repeat step 1 and 2 to confirm the change.

API를 통해 모델 업데이트 및 배포

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CognitiveServices/accounts/{accountName}/deployments/{deploymentName}?api-version=2023-05-01

경로 매개 변수

매개 변수 형식 필수 여부 설명
acountname string Required Azure OpenAI 리소스의 이름입니다.
deploymentName string Required 기존 모델을 배포할 때 선택한 배포 이름 또는 새 모델 배포에 사용하려는 이름입니다.
resourceGroupName string Required 이 모델 배포에 연결된 리소스 그룹의 이름입니다.
subscriptionId string Required 연결된 구독의 구독 ID입니다.
api-version string Required 이 작업에 사용할 API 버전입니다. YYYY-MM-DD 형식을 따릅니다.

지원되는 버전

요청 본문

이는 사용할 수 있는 요청 본문 매개 변수의 하위 집합일 뿐입니다. 매개 변수의 전체 목록을 보려면 REST API 참조 설명서를 참조하세요.

매개 변수 형식 설명
버전업그레이드 옵션 문자열 배포 모델 버전 업그레이드 옵션:
OnceNewDefaultVersionAvailable
OnceCurrentVersionExpired
NoAutoUpgrade
capacity 정수 이는 이 배포에 할당하는 할당량의 양을 나타냅니다. 값 1은 분당 토큰(TPM) 1,000개와 같습니다.

예제 요청

curl -X PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-temp/providers/Microsoft.CognitiveServices/accounts/docs-openai-test-001/deployments/gpt-35-turbo?api-version=2023-05-01 \
  -H "Content-Type: application/json" \
  -H 'Authorization: Bearer YOUR_AUTH_TOKEN' \
  -d '{"sku":{"name":"Standard","capacity":120},"properties": {"model": {"format": "OpenAI","name": "gpt-35-turbo","version": "0613"},"versionUpgradeOption":"OnceCurrentVersionExpired"}}'

참고 항목

권한 부여 토큰을 생성하는 방법에는 여러 가지가 있습니다. 초기 테스트를 위한 가장 쉬운 방법은 Azure Portal에서 Cloud Shell을 시작하는 것입니다. 그런 다음 az account get-access-token를 실행합니다. 이 토큰을 API 테스트를 위한 임시 권한 부여 토큰으로 사용할 수 있습니다.

예제 응답

 {
  "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-temp/providers/Microsoft.CognitiveServices/accounts/docs-openai-test-001/deployments/gpt-35-turbo",
  "type": "Microsoft.CognitiveServices/accounts/deployments",
  "name": "gpt-35-turbo",
  "sku": {
    "name": "Standard",
    "capacity": 120
  },
  "properties": {
    "model": {
      "format": "OpenAI",
      "name": "gpt-35-turbo",
      "version": "0613"
    },
    "versionUpgradeOption": "OnceCurrentVersionExpired",
    "capabilities": {
      "chatCompletion": "true"
    },
    "provisioningState": "Succeeded",
    "rateLimits": [
      {
        "key": "request",
        "renewalPeriod": 10,
        "count": 120
      },
      {
        "key": "token",
        "renewalPeriod": 60,
        "count": 120000
      }
    ]
  },
  "systemData": {
    "createdBy": "docs@contoso.com",
    "createdByType": "User",
    "createdAt": "2023-02-28T02:57:15.8951706Z",
    "lastModifiedBy": "docs@contoso.com",
    "lastModifiedByType": "User",
    "lastModifiedAt": "2023-10-31T15:35:53.082912Z"
  },
  "etag": "\"GUID\""
}

프로비전된 배포 유형에 대한 모델 관리

프로비전된 배포는 고유한 모델 관리 사례를 지원합니다. 프로비전된 배포 모델 관리 방법은 모델 버전과 모델 패밀리 간에 마이그레이션하는 시기와 방법을 가장 명확하게 제어할 수 있도록 하기 위한 것입니다. 현재 프로비전된 배포에서 모델을 관리하는 데 사용할 수 있는 두 가지 방법은 (1) 현재 위치 마이그레이션 및 (2) 다중 배포 마이그레이션입니다.

필수 조건

  • 대상 모델 버전 또는 모델 패밀리가 기존 배포 유형에 대해 지원되고 있는지 확인합니다. 마이그레이션은 동일한 배포 유형의 프로비전된 배포 간에만 발생할 수 있습니다. 배포 유형에 대한 자세한 내용은 배포 유형 설명서를 검토 하세요.
  • 마이그레이션을 시도하기 전에 대상 모델 버전 또는 모델 제품군에 대한 용량 가용성의 유효성을 검사합니다. 용량 가용성 확인에 대한 자세한 내용은 용량 투명성 설명서를 검토 하세요.
  • 다중 배포 마이그레이션의 경우 여러 배포를 동시에 지원하기에 충분한 할당량이 있는지 확인합니다. 프로비전된 각 배포 유형에 대한 할당량의 유효성을 검사하는 방법에 대한 자세한 내용은 프로비전된 할당량 설명서를 검토 하세요.

프로비전된 배포에 대한 현재 위치 마이그레이션

현재 위치 마이그레이션을 사용하면 해당 배포에 할당된 모델 버전 또는 모델 패밀리를 변경하는 동안 동일한 프로비전된 배포 이름과 크기를 유지할 수 있습니다. 현재 위치 마이그레이션을 통해 Azure OpenAI Service는 20~30분 동안 마이그레이션하는 동안 모델 버전 또는 모델 패밀리 간에 기존 트래픽을 마이그레이션합니다. 마이그레이션 기간 내내 프로비전된 배포에 프로비전된 "업데이트" 상태가 표시됩니다. 프로비전된 배포를 정상적으로 계속 사용할 수 있습니다. 현재 위치 마이그레이션이 완료되면 프로비전된 상태가 "성공"으로 업데이트되어 모든 트래픽이 대상 모델 버전 또는 모델 패밀리로 마이그레이션되었음을 나타냅니다.

현재 위치 마이그레이션: 모델 버전 업데이트

기존 프로비전된 배포를 동일한 모델 제품군 내의 새 모델 버전으로 업데이트하는 것을 대상으로 하는 현재 위치 마이그레이션은 Azure AI Foundry, REST API 및 Azure CLI를 통해 지원됩니다. Azure AI Foundry 내에서 모델 버전 업데이트를 대상으로 하는 현재 위치 마이그레이션을 수행하려면 배포 이름 열에서 배포를 선택하여 > 마이그레이션하려는 프로비전된 배포의 배포 이름을 선택합니다.

배포 이름을 선택하면 모델 배포에 대한 속성이 열립니다. 이 보기에서 편집 단추를 선택하면 배포 대화 상자 업데이트가 표시됩니다. 모델 버전 드롭다운을 선택하여 프로비전된 배포에 대한 새 모델 버전을 설정합니다. 설명한 대로 프로비전 상태는 마이그레이션 중에 "업데이트"로 변경되고 마이그레이션이 완료되면 "성공"으로 되돌아갑니다.

선택할 수 있는 모델 버전 옵션을 표시하기 위해 모델 버전 필드 선택기가 열린 업데이트 배포 대화 상자의 스크린샷

현재 위치 마이그레이션: 모델 패밀리 변경

기존 프로비전된 배포를 새 모델 패밀리로 업데이트하는 것을 대상으로 하는 현재 위치 마이그레이션은 REST API 및 Azure CLI를 통해 지원됩니다. 모델 패밀리 변경을 대상으로 하는 현재 위치 마이그레이션을 수행하려면 아래 예제 요청을 가이드로 사용합니다. 요청에서 마이그레이션할 대상 모델의 모델 이름과 모델 버전을 업데이트해야 합니다.

curl -X PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-temp/providers/Microsoft.CognitiveServices/accounts/docs-openai-test-001/deployments/gpt-4o-ptu-deployment?api-version=2024-10-01 \
  -H "Content-Type: application/json" \
  -H 'Authorization: Bearer YOUR_AUTH_TOKEN' \
  -d '{"sku":{"name":"GlobalProvisionedManaged","capacity":100},"properties": {"model": {"format": "OpenAI","name": "gpt-4o-mini","version": "2024-07-18"}}}'

예제 응답

 {
  "id": "/subscriptions/{subscription-id}/resourceGroups/resource-group-temp/providers/Microsoft.CognitiveServices/accounts/docs-openai-test-001/deployments/gpt-4o-ptu-deployment",
  "type": "Microsoft.CognitiveServices/accounts/deployments",
  "name": "gpt-4o-ptu-deployment",
  "sku": {
    "name": "GlobalProvisionedManaged",
    "capacity": 100
  },
  "properties": {
    "model": {
      "format": "OpenAI",
      "name": "gpt-4o-mini",
      "version": "2024-07-18"
    },
    "versionUpgradeOption": "OnceCurrentVersionExpired",
    "currentCapacity": 100
    "capabilities": {
      "area": "EUR",
      "chatCompletion": "true"
      "jsonObjectResponse": "true",
      "maxContextToken": "128000",
      "maxOutputToken": "16834",
      "assistants": "true"
    },
    "provisioningState": "Updating",
    "rateLimits": [
      {
        "key": "request",
        "renewalPeriod": 10,
        "count": 300
      }
    ]
  },
  "systemData": {
    "createdBy": "docs@contoso.com",
    "createdByType": "User",
    "createdAt": "2025-01-28T02:57:15.8951706Z",
    "lastModifiedBy": "docs@contoso.com",
    "lastModifiedByType": "User",
    "lastModifiedAt": "2025-01-29T15:35:53.082912Z"
  },
  "etag": "\"GUID\""
}

참고 항목

권한 부여 토큰을 생성하는 방법에는 여러 가지가 있습니다. 초기 테스트를 위한 가장 쉬운 방법은 Azure Portal에서 Cloud Shell을 시작하는 것입니다. 그런 다음 az account get-access-token를 실행합니다. 이 토큰을 API 테스트를 위한 임시 권한 부여 토큰으로 사용할 수 있습니다.

프로비전된 배포에 대한 다중 배포 마이그레이션

다중 배포 마이그레이션을 사용하면 모델 마이그레이션 프로세스를 보다 세세하게 제어할 수 있습니다. 다중 배포 마이그레이션을 사용하면 프로비전된 새 배포에서 기존 트래픽을 대상 모델 버전 또는 모델 패밀리로 마이그레이션하는 데 얼마나 빨리 마이그레이션할지 결정할 수 있습니다. 다중 배포 마이그레이션 방법을 사용하여 새 모델 버전 또는 모델 패밀리로 마이그레이션하는 프로세스는 다음과 같습니다.

  • 프로비전된 새 배포를 만듭니다. 이 새 배포의 경우 기존 배포와 동일한 프로비전된 배포 유형을 유지 관리하거나 원하는 경우 새 배포 유형을 선택할 수 있습니다.
  • 원래 배포에서 모든 트래픽이 오프로드될 때까지 기존 프로비전된 배포에서 대상 모델 버전 또는 모델 패밀리를 사용하여 새로 만든 프로비전된 배포로 트래픽을 전환합니다.
  • 트래픽이 새 배포로 마이그레이션되면 Azure OpenAI 요청 메트릭에 새 배포로 마이그레이션되는 유추 트래픽의 5-10분 이내에 수행된 API 호출이 표시되지 않도록 하여 이전에 프로비전된 배포에서 처리 중인 유추 요청이 없는지 확인합니다. 이 메트릭 에 대한 자세한 내용은 Azure OpenAI 모니터링 설명서를 참조하세요.
  • 유추 호출이 발생하지 않은 것을 확인하면 프로비전된 원래 배포를 삭제합니다.

다음 단계