分享方式:


使用 Azure OpenAI 模型

Azure OpenAI 服務是由一組具有不同功能和價格點的各種模型提供。 模型可用性會依區域而有所不同

您可以使用模型清單 API,取得 Azure OpenAI 資源可用於推斷和微調的模型清單。

模型更新

Azure OpenAI 現在支援選定模型部署的自動更新。 在提供自動更新支援的模型中,Azure OpenAI Studio 的 [部署] 和 [編輯] 底下會顯示模型版本下拉式清單:

此螢幕擷取畫面顯示 Azure OpenAI 工作室的部署模型 UI。

您可以參閱 Azure OpenAI 模型版本一文,以深入了解 Azure OpenAI 模型版本及其運作方式。

自動更新為預設值

當您將部署設定為 [自動更新為預設值] 時,您的模型部署會在預設版本變更的兩週內自動更新。 對於預覽版本,它會在發行新預覽版本兩週後開始自動更新 (如果有新的預覽版本可用時)。

如果您仍在推斷模型的早期測試階段,建議使用 [自動更新為預設值] 設定 (如果適用) 來部署模型。

特定模型版本

隨著您的 Azure OpenAI 使用方式不斷演變,您開始建置並整合可能想要手動控制模型更新的應用程式。 在升級之前,您可以先測試並驗證您的應用程式行為是否符合您的使用案例。

當您針對部署選取特定模型版本時,此版本會保持已選取狀態,直到您選擇自行手動更新,或達到模型的淘汰日期為止。 達到淘汰日期時,模型會在淘汰時自動升級至預設版本。

檢視淘汰日期

針對目前部署的模型,從 Azure OpenAI Studio 選取 [部署]

此螢幕擷取畫面顯示 Azure OpenAI 工作室的部署 UI。

模型部署升級設定

您可以檢查在 Azure OpenAI 工作室中針對先前部署的模型所設定的模型升級選項。 選取 [部署]> 在部署名稱資料行下方,選取一個以藍色醒目提示的部署名稱。

選取部署名稱會開啟模型部署的屬性。 您可以在 [版本更新原則] 底下檢視部署所設定的升級選項:

此螢幕擷取畫面顯示模型部署屬性 UI。

您也可以透過 RESTAzure PowerShellAzure CLI 存取對應的屬性。

選項 參閱 更新
REST 是。 如果未傳回 versionUpgradeOption,則表示它是 null Yes
Azure PowerShell 是。可以檢查 VersionUpgradeOption 是否為 $null Yes
Azure CLI 是。 如果未設定 versionUpgradeOption,則顯示 null 否。 目前無法更新版本升級選項。

有三個不同的模型部署升級選項:

名稱 描述
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

路徑參數

參數 類型 是必要的嗎? 描述
acountname string 必要 Azure OpenAI 資源的名稱。
deploymentName string 必要 部署現有模型時所選擇的部署名稱,或您為新模型部署使用的名稱。
resourceGroupName string 必要 此模型部署的相關資源群組名稱。
subscriptionId string 必要 相關聯的訂用帳戶的訂用帳戶識別碼。
api-version string 必要 用於此作業的 API 版本。 這會遵循 YYYY-MM-DD 格式。

支援的版本

要求本文

這只是可用要求主體參數的子集。 如需參數的完整清單,您可以參考 REST API 參考文件

參數 類型 描述
versionUpgradeOption String 部署模型版本升級選項:
OnceNewDefaultVersionAvailable
OnceCurrentVersionExpired
NoAutoUpgrade
處理能力 整數 這代表您要指派給此部署的 配額 數量。 值為 1 等於每分鐘 1,000 個權杖 (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"}}'

注意

有多種方式可以產生授權權杖。 初始測試最簡單的方法是從 Azure 入口網站啟動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\""
}

下一步