Partilhar via


Azure OpenAI stored completions & distillation (visualização)

As finalizações armazenadas permitem capturar o histórico de conversas de sessões de conclusão de bate-papo para usar como conjuntos de dados para avaliações e ajustes.

Suporte a finalizações armazenadas

Suporte de API

Suporte adicionado pela primeira vez em 2024-10-01-preview

Modelo e disponibilidade da região

Região o1-pré-visualização, 2024-09-12 O1-Mini, 2024-09-12 GPT-4O, 2024-08-06 GPT-4O, 2024-05-13 GPT-4O-Mini, 2024-07-18
Suécia Central
E.U.A. Centro-Norte - - - -
E.U.A. Leste 2 - - - -

Configurar finalizações armazenadas

Para habilitar as conclusões armazenadas para sua implantação do Azure OpenAI, defina o store parâmetro como True. Use o parâmetro para enriquecer o metadata conjunto de dados de conclusão armazenado com informações adicionais.

import os
from openai import AzureOpenAI
from azure.identity import DefaultAzureCredential, get_bearer_token_provider

token_provider = get_bearer_token_provider(
    DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default"
)

client = AzureOpenAI(
  azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT"), 
  azure_ad_token_provider=token_provider,
  api_version="2024-10-01-preview"
)

completion = client.chat.completions.create(
    
    model="gpt-4o", # replace with model deployment name
    store= True,
    metadata =  {
    "user": "admin",
    "category": "docs-test",
  },
    messages=[
    {"role": "system", "content": "Provide a clear and concise summary of the technical content, highlighting key concepts and their relationships. Focus on the main ideas and practical implications."},
    {"role": "user", "content": "Ensemble methods combine multiple machine learning models to create a more robust and accurate predictor. Common techniques include bagging (training models on random subsets of data), boosting (sequentially training models to correct previous errors), and stacking (using a meta-model to combine base model predictions). Random Forests, a popular bagging method, create multiple decision trees using random feature subsets. Gradient Boosting builds trees sequentially, with each tree focusing on correcting the errors of previous trees. These methods often achieve better performance than single models by reducing overfitting and variance while capturing different aspects of the data."}
    ]   
)

print(completion.choices[0].message)


Depois que as finalizações armazenadas forem habilitadas para uma implantação do Azure OpenAI, elas começarão a aparecer no portal do Azure AI Foundry no painel Conclusões Armazenadas.

Captura de ecrã das conclusões armazenadas Experiência do Utilizador.

Destilação

A destilação permite que você transforme suas finalizações armazenadas em um conjunto de dados de ajuste fino. Um caso de uso comum é usar as finalizações armazenadas com um modelo maior e mais poderoso para uma tarefa específica e, em seguida, usar as finalizações armazenadas para treinar um modelo menor em exemplos de alta qualidade de interações de modelo.

A destilação requer um mínimo de 10 finalizações armazenadas, embora seja recomendado fornecer centenas a milhares de finalizações armazenadas para obter os melhores resultados.

  1. No painel Conclusões Armazenadas no portal do Azure AI Foundry, use as opções de Filtro para selecionar as conclusões com as quais você deseja treinar seu modelo.

  2. Para iniciar a destilação, selecione Destilar

    Captura de ecrã das conclusões armazenadas Experiência do Utilizador com destilação realçada.

  3. Escolha qual modelo você gostaria de ajustar com seu conjunto de dados de conclusão armazenado.

    Captura de tela da seleção do modelo de destilação de conclusão armazenada.

  4. Confirme qual versão do modelo você deseja ajustar:

    Captura de tela da versão de destilação de conclusão armazenada.

  5. Um .jsonl arquivo com um nome gerado aleatoriamente será criado como um conjunto de dados de treinamento a partir de suas finalizações armazenadas. Selecione o arquivo >Next.

    Nota

    Os arquivos de treinamento de destilação de conclusão armazenados não podem ser acessados diretamente e não podem ser exportados externamente/baixados.

    Captura de tela do arquivo jsonl do conjunto de dados de treinamento de conclusão armazenado.

O restante das etapas corresponde às etapas típicas de ajuste fino do Azure OpenAI. Para saber mais, consulte nosso guia de introdução ao ajuste fino.

Avaliação

A avaliação de grandes modelos linguísticos é um passo crítico para medir o seu desempenho em várias tarefas e dimensões. Isto é especialmente importante para modelos ajustados, onde a avaliação dos ganhos (ou perdas) de desempenho da formação é crucial. Avaliações completas podem ajudar a entender como diferentes versões do modelo podem afetar seu aplicativo ou cenário.

As finalizações armazenadas podem ser usadas como um conjunto de dados para executar avaliações.

  1. No painel Conclusões Armazenadas no portal do Azure AI Foundry, use as opções de Filtro para selecionar as conclusões que você deseja que façam parte do seu conjunto de dados de avaliação.

  2. Para configurar a avaliação, selecione Avaliar

    Captura de ecrã do painel de conclusão armazenado com a opção de avaliação selecionada.

  3. Isso inicia o painel Avaliações com um arquivo pré-preenchido .jsonl com um nome gerado aleatoriamente que é criado como um conjunto de dados de avaliação a partir de suas conclusões armazenadas.

    Nota

    Os arquivos de dados de avaliação de conclusão armazenados não podem ser acessados diretamente e não podem ser exportados externamente/baixados.

    Captura de ecrã do painel de avaliações.

Para saber mais sobre avaliação, consulte, Introdução às avaliações

Resolução de Problemas

Preciso de permissões especiais para usar as finalizações armazenadas?

O acesso às finalizações armazenadas é controlado por meio de duas DataActions:

  • Microsoft.CognitiveServices/accounts/OpenAI/stored-completions/read
  • Microsoft.CognitiveServices/accounts/OpenAI/stored-completions/action

Por padrão Cognitive Services OpenAI Contributor , tem acesso a ambas as permissões:

Captura de tela das permissões de conclusão armazenadas.

Como faço para excluir dados armazenados?

Os dados podem ser excluídos excluindo o recurso associado do Azure OpenAI. Se você deseja excluir apenas os dados de conclusão armazenados, você deve abrir um caso com o suporte ao cliente.

Quantos dados de conclusão armazenados posso armazenar?

Você pode armazenar um máximo de 10 GB de dados.

Posso impedir que as finalizações armazenadas sejam ativadas em uma assinatura?

Você precisará abrir um caso com o suporte ao cliente para desativar as finalizações armazenadas no nível da assinatura.

TypeError: Completions.create() tem um argumento inesperado 'store'

Este erro ocorre quando você está executando uma versão mais antiga da biblioteca de cliente OpenAI que antecede o recurso de conclusão armazenado que está sendo lançado. Execute o pip install openai --upgrade.