Compartilhar via


Como usar foundation models de código aberto coletados pelo Azure Machine Learning

Neste artigo, você aprenderá a ajustar, avaliar e implantar modelos de base no Catálogo de Modelos.

Você pode testar rapidamente qualquer modelo pré-treinado usando o formulário de Inferência de Amostra no cartão do modelo, fornecendo sua própria entrada de amostra para testar o resultado. Além disso, o cartão de modelo para cada modelo inclui uma breve descrição do modelo e links para exemplos de inferência baseada em código, ajuste fino e avaliação do modelo.

Como avaliar foundation models usando seus próprios dados de teste

Você pode avaliar um modelo de base em relação ao seu conjunto de dados de teste, usando o formulário da interface de avaliação ou os exemplos baseados em código, vinculados no cartão do modelo.

Avaliando o uso do estúdio

Você pode invocar o formulário Avaliar modelo selecionando o botão Avaliar no cartão de modelo para qualquer modelo de base.

Captura de tela mostrando o formulário de configurações de avaliação depois que o usuário seleciona o botão de avaliação em um cartão de modelo para um modelo de base.

Você pode avaliar cada modelo para a tarefa de inferência específica para a qual você usa o modelo.

Dados de teste:

  1. Passe os dados de teste que você gostaria de usar para avaliar seu modelo. Você pode optar por carregar um arquivo local (no formato JSONL) ou selecionar um conjunto de dados registrado existente no seu espaço de trabalho.
  2. Uma vez selecionado o conjunto de dados, é necessário mapear as colunas dos dados de entrada, com base no esquema necessário para a tarefa. Por exemplo, mapeie os nomes de coluna que correspondem às chaves 'sentence' e 'label' para a Classificação de Texto

Captura de tela mostrando o mapa de avaliação no formulário de avaliação dos modelos de base.

Computação:

  1. Forneça o cluster de Computação do Azure Machine Learning que você gostaria de usar para fazer o ajuste fino do modelo. A avaliação precisa ser executada na computação de GPU. Verifique se você tem cota de computação suficiente para os SKUs de computação que deseja usar.

  2. Selecione Concluir no formulário Avaliar para enviar seu trabalho de avaliação. Depois que o trabalho for concluído, você poderá exibir as métricas de avaliação do modelo. Com base nas métricas de avaliação, você pode decidir se deseja ajustar o modelo usando seus próprios dados de treinamento. Além disso, você pode decidir se deseja registrar o modelo e implantá-lo em um ponto de extremidade.

Avaliação usando exemplos baseados em código

Para permitir que você comece a avaliar o modelo, fornecemos exemplos (notebooks Python e exemplos da CLI) nos exemplos de Avaliação no repositório git azureml-examples. Cada cartão de modelo apresenta links para exemplos de avaliação para tarefas correspondentes

Como ajustar os modelos de base usando seus próprios dados de treinamento

Para melhorar o desempenho do modelo na sua carga de trabalho, convém refinar um foundation model usando seus próprios dados de treinamento. Você pode ajustar facilmente esses modelos de base usando as configurações de ajuste fino no estúdio ou usando os exemplos baseados em código vinculados ao cartão do modelo.

Ajuste fino usando o estúdio

Você pode invocar o formulário de ajustes finos selecionando o botão Ajustes fino no cartão do modelo para qualquer modelo de base.

Configurações de Ajuste fino:

Captura de tela mostrando as opções de configurações de ajuste fino no formulário de configurações de ajuste fino de modelos base.

Tipo de tarefa de ajuste fino

  • Cada modelo pré-treinado do catálogo de modelos pode ser ajustado para um conjunto específico de tarefas (por exemplo: Classificação de texto, Classificação de tokens, Resposta às perguntas). Selecione a tarefa que você deseja usar na lista suspensa.

Dados de treinamento

  1. Passe os dados de treinamento que você gostaria de usar para ajustar seu modelo. Você pode optar por carregar um arquivo local (no formato JSONL, CSV ou TSV) ou selecionar um conjunto de dados registrado existente no seu espaço de trabalho.

  2. Depois de selecionar o conjunto de dados, você precisará mapear as colunas de seus dados de entrada, com base no esquema necessário para a tarefa. Por exemplo: mapear os nomes de coluna que correspondem às chaves 'sentence' e 'label' para a Classificação de Texto

Captura de tela mostrando o mapa de ajuste fino no assistente de avaliação de modelos de base.

  • Dados de validação: passe os dados que você gostaria de usar para validar seu modelo. Selecionar Divisão automática reserva uma divisão automática dos dados de treinamento para validação. Como alternativa, você pode fornecer um conjunto de dados de validação diferente.
  • Dados de teste: passe os dados de teste que você gostaria de usar para avaliar seu modelo ajustado. Selecionar Divisão automática reserva uma divisão automática dos dados de treinamento para teste.
  • Computação: forneça o cluster de Computação do Azure Machine Learning que você gostaria de usar para fazer o ajuste fino do modelo. O ajuste fino precisa ser executado na computação da GPU. Recomendamos usar SKUs de computação com GPUs A100/V100 ao fazer o ajuste fino. Verifique se você tem cota de computação suficiente para os SKUs de computação que deseja usar.
  1. Selecione Concluir no formulário de ajuste fino para enviar seu trabalho de ajuste fino. Uma vez concluído o trabalho, você poderá exibir as métricas de avaliação do modelo ajustado. Em seguida, é possível registrar a saída do modelo ajustado pelo trabalho de ajuste fino e implantar esse modelo em um ponto de extremidade para inferência.

Ajuste fino utilizando exemplos baseados em código

Atualmente, o Azure Machine Learning dá suporte a modelos de ajuste fino para as seguintes tarefas de idioma:

  • Classificação de texto
  • Classificação de token
  • Respostas às perguntas
  • Sumarização
  • Tradução

Para permitir que os usuários iniciem rapidamente o ajuste fino, publicamos exemplos (notebooks Python e exemplos da CLI) para cada tarefa na seção de amostras de ajuste fino do repositório git azureml-examples. Cada cartão de modelo também é vinculado a amostras de ajuste fino para tarefas de ajuste fino com suporte.

Implantando foundation models em pontos de extremidade para inferência

É possível implantar modelos de base (modelos pré-treinados do catálogo de modelos e modelos ajustados, uma vez registrados no seu espaço de trabalho) em um ponto de extremidade que poderá ser usado para inferência. Há suporte para implantações padrão e computação gerenciada. Você pode implantar esses modelos usando o assistente de interface do usuário Implantar ou usando os exemplos baseados em código vinculados do cartão de modelo.

Implantar usando o estúdio

Você pode implantar um modelo selecionando o botão Usar este modelo no cartão de modelo para qualquer modelo de base e selecionando a API sem servidor ou a Computação Gerenciada. Nem todos os modelos dão suporte à implantação de API sem servidor. Se o modelo não der suporte à API sem servidor, você verá apenas a opção Computação Gerenciada .

Captura de tela mostrando o botão de implantação no cartão do modelo de base.

Configurações de implantação

Ao selecionar a API sem servidor, você será levado para o formulário de implantação. O formulário de implantação permite que você especifique o nome da implantação e se deseja habilitar a filtragem de conteúdo e a versão do modelo a ser usada para a implantação. Você também pode fornecer dados de entrada de exemplo para testar o modelo.

Ao selecionar Computação Gerenciada, você será levado para o formulário de configurações de implantação. O formulário de configurações de implantação permite que você especifique o SKU da máquina virtual a ser usado, o número de instâncias e o nome do ponto de extremidade a ser usado para a implantação.

Captura de tela mostrando as opções de implantação no cartão do modelo de base depois que o usuário seleciona o botão de implantação.

Cota compartilhada

Se você estiver implantando um modelo do catálogo de modelos, mas não tiver cota suficiente disponível para a implantação, o Azure Machine Learning permitirá que você use a cota de um pool de cotas compartilhado por um tempo limitado. Para obter mais informações sobre a cota compartilhada, confira Cota compartilhada do Azure Machine Learning.

Captura de tela mostrando a opção de implantar um modelo Llama temporariamente usando a cota compartilhada.

Implantação usando exemplos baseados em código

Para permitir que você comece rapidamente com a implantação e a inferência, fornecemos exemplos nos exemplos de Inferência no repositório git azureml-examples. Os exemplos publicados incluem notebooks Python e exemplos da CLI. Cada cartão de modelo também apresenta links para exemplos de inferência para Inferência em tempo real e inferência do Lote.

Importar modelos base

Se você pesquisar o catálogo de modelos e não encontrar o modelo de software livre necessário, poderá importá-lo do Hugging Face para seu workspace do Azure Machine Learning. O botão Importar aparece no catálogo de modelos somente quando sua pesquisa não retorna resultados.

A Hugging Face é uma biblioteca de software livre para NLP (processamento de linguagem natural) que fornece modelos pré-treinados para tarefas populares de NLP. Atualmente, a importação de modelo dá suporte à importação de modelos para as seguintes tarefas, desde que o modelo atenda aos requisitos listados no Notebook de Importação de Modelo:

  • máscara de preenchimento
  • classificação de token
  • resposta a perguntas
  • resumo
  • geração de texto
  • classificação de texto
  • tradução
  • classificação de imagem
  • texto para imagem

Observação

Os modelos da Hugging Face estão sujeitos aos termos de licença de terceiros disponíveis na página de detalhes do modelo dessa empresa. É sua responsabilidade cumprir os termos de licença do modelo.

Quando sua pesquisa não retornar resultados, selecione Importar notebook do modelo para usar o Notebook de Importação de Modelo.

Captura de tela mostrando o botão de importação do modelo como ele é exibido quando a pesquisa não retorna resultados no catálogo de modelos de base.

O notebook de importação de modelo também está incluído no repositório git azureml-examples aqui.

Para importar o modelo, você precisa passar o MODEL_ID do modelo que deseja importar da Hugging Face. Procure modelos no Hub da Hugging Face e identifique o modelo a ser importado. Verifique se o tipo de tarefa do modelo está entre os tipos de tarefa com suporte. Copie a ID do modelo, que está disponível no URI da página ou pode ser copiada usando o ícone de cópia ao lado do nome do modelo. Atribua-o à variável 'MODEL_ID' no notebook de importação de modelo. Por exemplo:

Captura de tela mostrando um exemplo de ID de modelo Hugging Face ('bert-base-uncased') conforme exibido na página de documentação do modelo Hugging Face.

Você precisa fornecer computação para que a importação de modelo seja executada. A execução da Importação de Modelo resulta na importação do modelo especificado da Hugging Face e registrado no workspace do Azure Machine Learning. Em seguida, é possível fazer o ajuste fino desse modelo ou implantá-lo em um ponto de extremidade para inferência.

Saiba mais