Azure OpenAI 모델 작업

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

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

모델 업데이트

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

Screenshot of the deploy model UI of Azure OpenAI Studio.

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

기본값으로 자동 업데이트

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

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

특정 모델 버전

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

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

사용 중지 날짜 보기

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

Screenshot of the deployment UI of Azure OpenAI Studio.

Azure OpenAI Studio에서 지정된 지역의 사용 가능한 모든 모델에 대한 사용 중지 날짜를 보려면 모델>열 옵션을> 선택하여 사용 중단 미세 조정사용 중단 유추를 선택합니다.

Screenshot of the models UI of Azure OpenAI Studio.

모델 배포 업그레이드 구성

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

Screenshot of the deployments pane with a deployment name highlighted.

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

Screenshot of the model deployments property UI.

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

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

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

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

참고 항목

nullAutoUpgradeWhenExpired와 같습니다. 모델의 속성에 모델 업그레이드를 지원하는 버전 업데이트 정책 옵션이 없으면 값이 현재 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\""
}

다음 단계