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 Estúdio de IA do Azure em Implantações e Editar:
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 de IA do Azure, selecione Implantações:
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 de IA 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:
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
2023-05-01
Especificações do Swagger
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\""
}