Uso dei modelli di OpenAI di Azure

Il servizio Azure OpenAI è basato su un set di modelli diversificato con funzionalità e punti di prezzo diversi. La disponibilità dei modelli varia in base all'area.

È possibile ottenere un elenco di modelli disponibili per l'inferenza e l'ottimizzazione tramite la risorsa OpenAI di Azure usando l'API Elenco modelli.

Aggiornamenti del modello

OpenAI di Azure supporta ora gli aggiornamenti automatici per le distribuzioni di modelli selezionati. Nei modelli in cui è disponibile il supporto per gli aggiornamenti automatici, viene visualizzato un elenco a discesa della versione del modello in Azure OpenAI Studio in Distribuzioni e Modifica:

Screenshot dell'interfaccia utente di distribuzione del modello di Azure OpenAI Studio.

Altre informazioni sulle versioni dei modelli di OpenAI di Azure e sul relativo funzionamento sono disponibili nell'articolo Versioni dei modelli di OpenAI di Azure.

Aggiornamento automatico per impostazione predefinita

Quando si imposta la distribuzione su Aggiornamento automatico per impostazione predefinita, la distribuzione del modello viene aggiornata automaticamente entro due settimane da una modifica nella versione predefinita. Per una versione di anteprima, viene eseguito automaticamente l'aggiornamento quando una nuova versione di anteprima è disponibile a partire da due settimane dopo il rilascio della nuova versione di anteprima.

Se si sono ancora nelle fasi di test iniziali per i modelli di inferenza, è consigliabile distribuire modelli con l'opzione Aggiornamento automatico per impostazione predefinita selezionata ogni volta che è disponibile.

Versione specifica del modello

Con l'evoluzione dell'uso di OpenAI di Azure e l'inizio della creazione e dell'integrazione con applicazioni, è consigliabile controllare manualmente gli aggiornamenti dei modelli. È possibile testare e verificare innanzitutto che il comportamento dell'applicazione sia coerente per il caso d'uso prima dell'aggiornamento.

Quando si seleziona una versione specifica del modello per una distribuzione, questa versione rimane selezionata fino a quando non si sceglie di eseguire manualmente l'aggiornamento o dopo aver raggiunto la data di ritiro per il modello. Quando viene raggiunta la data di ritiro, il modello verrà aggiornato automaticamente alla versione predefinita al momento del ritiro.

Visualizzazione delle date di ritiro

Per i modelli attualmente distribuiti, da Azure OpenAI Studio selezionare Distribuzioni:

Screenshot dell'interfaccia utente di distribuzione di Azure OpenAI Studio.

Configurazione dell'aggiornamento della distribuzione dei modelli

È possibile controllare le opzioni di aggiornamento dei modelli impostate per i modelli distribuiti in precedenza in Azure OpenAI Studio. Selezionare Distribuzioni> Nella colonna Nome distribuzione selezionare uno dei nomi di distribuzione evidenziati in blu.

Se si seleziona un nome di distribuzione, verranno visualizzate le Proprietà per la distribuzione del modello. È possibile visualizzare le opzioni di aggiornamento impostate per la distribuzione in Criteri di aggiornamento della versione:

Screenshot dell'interfaccia utente della proprietà delle distribuzioni dei modelli.

È anche possibile accedere alla proprietà corrispondente tramite REST, Azure PowerShelle interfaccia della riga di comando di Azure.

Opzione Lettura Aggiornamento
REST Sì. Se versionUpgradeOption non viene restituito, significa che è null
Azure PowerShell Sì.È possibile controllare VersionUpgradeOption per $null
Interfaccia della riga di comando di Azure Sì. Viene visualizzato null se versionUpgradeOption non è impostato. No. Non è attualmente possibile aggiornare l'opzione di aggiornamento della versione.

Esistono tre opzioni distinte di aggiornamento della distribuzione dei modelli:

Nome Descrizione
OnceNewDefaultVersionAvailable Quando una nuova versione viene designata come predefinita, la distribuzione dei modelli viene aggiornata automaticamente alla versione predefinita entro due settimane dalla modifica della designazione.
OnceCurrentVersionExpired Quando viene raggiunta la data di ritiro, la distribuzione dei modelli viene aggiornata automaticamente alla versione predefinita corrente.
NoAutoUpgrade La distribuzione dei modelli non viene mai aggiornata automaticamente. Quando viene raggiunta la data di ritiro, la distribuzione dei modelli smette di funzionare. È necessario aggiornare il codice che fa riferimento a tale distribuzione in modo che punti a una distribuzione dei modelli non scaduta.

Nota

null è pari a OnceCurrentVersionExpired. Se l'opzione Criteri di aggiornamento della versione non è presente nelle proprietà di un modello che supporta gli aggiornamenti dei modelli, significa che il valore è attualmente null. Dopo aver modificato in modo esplicito questo valore, la proprietà è visibile nella pagina delle proprietà di Studio e tramite l'API REST.

Esempi

Esaminare la guida introduttiva di Azure PowerShell per installare Azure PowerShell in locale oppure usare Azure Cloud Shell.

I passaggi seguenti illustrano come controllare la proprietà dell'opzione VersionUpgradeOption e aggiornarla:

// 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.

Aggiornare e distribuire i modelli tramite l'API

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

Parametri del percorso

Parametro Type Obbligatorio? Descrizione
acountname stringa Richiesto Nome della risorsa OpenAI di Azure.
deploymentName string Richiesto Nome della distribuzione scelto quando è stato distribuito un modello esistente o il nome desiderato per una nuova distribuzione del modello.
resourceGroupName string Richiesto Nome del gruppo di risorse associato per la distribuzione del modello.
subscriptionId string Richiesto ID sottoscrizione per la sottoscrizione associata.
api-version string Richiesto Versione dell'API da usare per questa operazione. Segue il formato AAAA-MM-GG.

Versioni supportate

Testo della richiesta

Si tratta solo di un subset dei parametri del corpo della richiesta disponibili. Per l'elenco completo dei parametri, è possibile fare riferimento alla documentazione di riferimento dell'API REST.

Parametro Tipo Descrizione
versionUpgradeOption String Opzioni di aggiornamento della versione del modello di distribuzione:
OnceNewDefaultVersionAvailable
OnceCurrentVersionExpired
NoAutoUpgrade
capacità integer Rappresenta la quantità di quota assegnata a questa distribuzione. Il valore 1 è uguale a 1.000 token al minuto (TPM)

Richiesta di esempi

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

Nota

Esistono diversi modi per generare un token di autorizzazione. Il metodo più semplice per i test iniziali consiste nell'avviare Cloud Shell dal portale di Azure. Quindi eseguire az account get-access-token. È possibile usare questo token come token di autorizzazione temporaneo per il test dell'API.

Esempio di risposta

 {
  "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\""
}

Passaggi successivi