Поделиться через


Работа с моделями Azure OpenAI

Служба Azure OpenAI работает на платформе разнообразного набора моделей с разными возможностями и ценовыми категориями. Доступность модели зависит от региона.

Вы можете получить список моделей, доступных как для вывода, так и для тонкой настройки ресурсов Azure OpenAI с помощью API списка моделей.

Обновления модели

Azure OpenAI теперь поддерживает автоматическое обновление для развертываний моделей. В моделях, где доступна поддержка автоматического обновления, раскрывающийся список версий модели отображается на портале Azure AI Foundry в разделе "Развертывания и редактирование".

Снимок экрана: пользовательский интерфейс модели развертывания на портале Azure AI Foundry.

Дополнительные сведения о версиях модели Azure OpenAI и их работе см. в статье о версиях моделей Azure OpenAI.

Примечание.

Автоматическое обновление модели поддерживается только для типов развертывания "Стандартный". Дополнительные сведения об управлении обновлениями моделей и миграцией в подготовленных типах развертывания см. в разделе об управлении моделями в подготовленных типах развертывания.

Автоматическое обновление до значения по умолчанию

При настройке развертывания для автоматического обновления по умолчанию развертывание модели автоматически обновляется в течение двух недель после изменения в версии по умолчанию. Для предварительной версии она обновляется автоматически, когда новая предварительная версия доступна начиная с двух недель после выпуска новой предварительной версии.

Если вы все еще находитесь на ранних этапах тестирования для моделей вывода, рекомендуется развертывать модели с автоматическим обновлением до набора по умолчанию , когда оно доступно.

Определенная версия модели

По мере развития Azure OpenAI вы начинаете создавать и интегрироваться с приложениями, которые могут потребоваться вручную управлять обновлениями моделей. Перед обновлением вы можете сначала протестировать и убедиться, что поведение приложения согласовано с вашим вариантом использования.

При выборе конкретной версии модели для развертывания эта версия остается выбранной до тех пор, пока вы не решите вручную обновить себя или когда вы достигнете даты выхода на пенсию для модели. Когда дата выхода на пенсию достигается, модель автоматически обновляется до версии по умолчанию во время выхода на пенсию.

Просмотр дат выхода на пенсию

Для развернутых в настоящее время моделей на портале Azure AI Foundry выберите "Развертывания":

Снимок экрана: пользовательский интерфейс развертывания портала Azure AI Foundry.

Конфигурация обновления развертывания модели

Вы можете проверить параметры обновления модели для ранее развернутых моделей на портале Azure AI Foundry. Выберите "Развертывания"> в столбце имени развертывания выберите одно из имен развертывания, выделенных синим цветом.

При выборе имени развертывания открывается свойство для развертывания модели. Вы можете просмотреть параметры обновления для развертывания в политике обновления версий:

Снимок экрана: пользовательский интерфейс свойства развертывания модели.

Соответствующее свойство также можно получить через REST, Azure PowerShell и Azure CLI.

Вариант Читать Обновить
REST Да. Если versionUpgradeOption не возвращается, это означает, что это null Да
Azure PowerShell Да. VersionUpgradeOption Можно проверить наличие $null Да
Azure CLI Да. В нем показано null , не versionUpgradeOption задано ли значение. В настоящее время невозможно обновить параметр обновления версии.

Существует три различных варианта обновления модели:

Имя Описание
OnceNewDefaultVersionAvailable После того как новая версия будет назначена по умолчанию, развертывание модели автоматически обновляется до версии по умолчанию в течение двух недель после внесения изменений обозначения.
OnceCurrentVersionExpired После достижения даты выхода на пенсию развертывание модели автоматически обновляется до текущей версии по умолчанию.
NoAutoUpgrade Развертывание модели никогда не обновляется автоматически. После достижения даты выхода на пенсию развертывание модели перестанет работать. Необходимо обновить код, ссылающийся на это развертывание, чтобы указать на развертывание неэкспирированных моделей.

Примечание.

null эквивалентна OnceCurrentVersionExpired. Если параметр политики обновления версий отсутствует в свойствах модели, поддерживающей обновления модели, это означает, что значение в настоящее время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

Параметры пути

Параметр Тип Обязательное? Description
acountname строка Обязательное поле Имя ресурса Azure OpenAI.
deploymentName строка Обязательное поле Имя развертывания, выбранное при развертывании существующей модели или имя, которое будет иметь новое развертывание модели.
resourceGroupName строка Обязательное поле Имя связанной группы ресурсов для развертывания этой модели.
subscriptionId строка Обязательное поле Идентификатор подписки для связанной подписки.
api-version строка Обязательное поле Версия API, используемая для данной операции. Имеет формат ГГГГ-ММ-ДД.

Поддерживаемые версии

Текст запроса

Это только подмножество доступных параметров текста запроса. Полный список параметров см. в справочной документации по REST API.

Параметр Тип Описание
versionUpgradeOption Строка Параметры обновления версии модели развертывания:
OnceNewDefaultVersionAvailable
OnceCurrentVersionExpired
NoAutoUpgrade
Емкость integer Это означает объем квоты, которую вы назначаете этому развертыванию. Значение 1 равно 1000 токенов в минуту (TPM)

Пример запроса

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"}}'

Примечание.

Существует несколько способов создания маркера авторизации. Самый простой способ начального тестирования — запустить Cloud Shell из портал Azure. Затем выполните 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 заботится о переносе существующего трафика между версиями моделей или семействами моделей в течение 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\""
}

Примечание.

Существует несколько способов создания маркера авторизации. Самый простой способ начального тестирования — запустить Cloud Shell из портал Azure. Затем выполните az account get-access-token. Этот маркер можно использовать в качестве временного маркера авторизации для тестирования API.

Миграции с несколькими развертываниями для подготовленных развертываний

Миграции с несколькими развертываниями позволяют более контролировать процесс миграции модели. При миграции с несколькими развертываниями можно определить, насколько быстро вы хотите перенести существующий трафик в целевую версию модели или семейство моделей в новом подготовленном развертывании. Процесс миграции в новую версию модели или семейство моделей с помощью подхода миграции с несколькими развертываниями выглядит следующим образом:

  • Создайте подготовленное развертывание. Для этого нового развертывания можно выбрать тот же подготовленный тип развертывания, что и существующее развертывание, или выбрать новый тип развертывания при необходимости.
  • Переключите трафик из существующего подготовленного развертывания в только что созданное развертывание с целевой версией или семейством моделей до тех пор, пока весь трафик не будет загружен из исходного развертывания.
  • После переноса трафика в новое развертывание убедитесь, что в предыдущем подготовленном развертывании нет запросов вывода, гарантируя, что метрика запросов Azure OpenAI не отображает вызовы API, выполненные в течение 5–10 минут после переноса трафика вывода в новое развертывание. Дополнительные сведения об этой метрии см. в документации по Мониторингу Azure OpenAI.
  • Убедившись, что вызовы вывода не были сделаны, удалите исходное подготовленное развертывание.

Следующие шаги