Trabalhando com modelos do OpenAI do Azure

O Serviço OpenAI do Azure é alimentado por um conjunto diversificado de modelos com diferentes funcionalidades e pontos de preço. A disponibilidade do modelo varia de acordo com a região.

Você pode obter uma lista de modelos disponíveis para inferência e ajuste fino pelo recurso Azure OpenAI usando a API de Lista de Modelos.

Atualizações de modelo

O OpenAI do Azure agora dá suporte a atualizações automáticas para implantações de modelo selecionadas. Nos modelos em que o suporte à atualização automática está disponível, uma lista suspensa de versão do modelo ficará visível no Azure OpenAI Studio em Implantações e Editar:

Captura de tela da interface do usuário implantar modelo da Estúdio OpenAI do Azure.

Você pode saber mais sobre as versões de modelo do Azure OpenAI e como elas funcionam no artigo sobre as versões de modelo do Azure OpenAI.

Atualização automática para padrão

Quando você define sua implantação como Atualização automática para o padrão, a implantação do modelo é atualizada automaticamente dentro de duas semanas após uma alteração na versão padrão. Para uma versão prévia, ela é atualizada automaticamente quando uma nova versão prévia estiver disponível, a partir de duas semanas após o lançamento da nova versão prévia.

Se você ainda estiver nas fases iniciais de teste para modelos de inferência, recomendamos implantar modelos com a atualização automática para o padrão definida sempre que estiver disponível.

Versão específica do modelo

À medida que seu uso do OpenAI do Azure evolui e você começa a criar e integrar aplicativos, talvez você queira controlar manualmente as atualizações do modelo. Você pode primeiro testar e validar se o comportamento do aplicativo é consistente para o seu caso de uso antes de fazer a atualização.

Quando você seleciona uma versão de modelo específica para uma implantação, essa versão permanece selecionada até que você opte por fazer a atualização manualmente ou até que a data de desativação do modelo seja atingida. Quando a data de desativação for atingida, o modelo será atualizado automaticamente para a versão padrão no momento da desativação.

Exibição das datas de desativação

Para modelos implantados no momento, no Estúdio OpenAI do Azure, selecione Implantações:

Captura de tela da interface do usuário de implantação do Estúdio OpenAI do Azure.

Configuração de atualização de implantação de modelo

Você pode verificar quais opções de atualização de modelo estão definidas como modelos implantados anteriormente no Estúdio do OpenAI do Azure. Selecione Implantações> Na coluna nome da implantação, selecione um dos nomes de implantação realçados em azul.

A seleção de um nome de implantação abre as Propriedades da implantação do modelo. Exiba quais opções de atualização estão definidas para sua implantação na Política de atualização de versão:

Captura de tela da interface do usuário da propriedade de implantações de modelo.

A propriedade correspondente também pode ser acessada via REST, Azure PowerShell e CLI do Azure.

Opção Ler Atualizar
REST Sim. Se versionUpgradeOption não for retornado, significa que é null Sim
PowerShell do Azure Sim.VersionUpgradeOption pode ser verificado em relação a $null Sim
CLI do Azure Sim. Ele mostra null se versionUpgradeOption não estiver definido. Não. Atualmente não é possível atualizar a opção de upgrade de versão.

Há três opções distintas de atualização de implantação de modelo:

Nome Descrição
OnceNewDefaultVersionAvailable Quando uma nova versão é designada como padrão, a implantação do modelo é atualizada automaticamente para a versão padrão dentro de duas semanas após a alteração da designação.
OnceCurrentVersionExpired Quando a data de desativação é atingida, a implantação do modelo é atualizada automaticamente para a versão padrão atual.
NoAutoUpgrade A implantação do modelo nunca é atualizada automaticamente. Depois que a data de desativação é atingida, a implantação do modelo para de funcionar. Você precisa atualizar seu código que faz referência a essa implantação para apontar para uma implantação de modelo não expirada.

Observação

null é equivalente a OnceCurrentVersionExpired. Se a opção de Política de atualização de versão não estiver presente nas propriedades de um modelo que dá suporte a atualizações de modelo, isso indicará que o valor está atualmente null. Depois que você modifica explicitamente esse valor, a propriedade fica visível na página de propriedades do estúdio e também por meio da API REST.

Exemplos

Reveja o guia de introdução ao Microsoft Azure PowerShell para instalar o Azure PowerShell localmente ou você pode utilizar o Azure Cloud Shell.

As etapas abaixo demonstram como verificar a propriedade da opção VersionUpgradeOption, bem como atualizá-la:

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

Atualizar e implantar modelos por meio da API

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

Parâmetros de caminho

Parâmetro Type Necessário? Descrição
acountname string Obrigatório O nome do seu recurso OpenAI do Azure.
deploymentName string Obrigatório O nome da implantação que você escolheu quando implantou um modelo existente ou o nome que deseja que uma nova implantação de modelo tenha.
resourceGroupName string Obrigatório O nome do grupo de recursos associado para essa implantação de modelo.
subscriptionId string Obrigatório ID da Assinatura para a assinatura associada.
api-version string Obrigatório A versão da API a ser usada para esta operação. Isso segue o formato AAAA-MM-DD.

Versões com suporte

Corpo da solicitação

Esse é apenas um subconjunto dos parâmetros de corpo da solicitação disponíveis. Para obter a lista completa dos parâmetros, você pode consultar a documentação de referência da API REST.

Parâmetro Tipo Descrição
versionUpgradeOption String Opções de atualização de versão do modelo de implantação:
OnceNewDefaultVersionAvailable
OnceCurrentVersionExpired
NoAutoUpgrade
ALOCADA inteiro Isso representa a quantidade de cota que você está atribuindo a essa implantação. Um valor de 1 é igual a 1.000 tokens por minuto (TPM)

Solicitação de exemplo

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

Observação

Há várias maneiras de gerar um token de autorização. O método mais fácil para teste inicial é iniciar o Cloud Shell do portal do Azure. Em seguida, execute az account get-access-token. Você pode usar esse token como token de autorização temporário para teste de API.

Exemplo de resposta

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

Próximas etapas