Compartilhar via


Ajuste fino de modelos com o Azure AI Foundry

Importante

Os itens marcados (versão prévia) neste artigo estão atualmente em versão prévia pública. Essa versão prévia é fornecida sem um contrato de nível de serviço e não recomendamos isso para cargas de trabalho de produção. Alguns recursos podem não ter suporte ou podem ter restrição de recursos. Para obter mais informações, consulte Termos de Uso Complementares de Versões Prévias do Microsoft Azure.

O ajuste fino refere-se à personalização de um modelo de IA generativa pré-treinado, realizando mais treinamentos em uma tarefa específica ou em um novo conjunto de dados. Isso melhora o desempenho, adiciona novas habilidades ou aumenta a exatidão. O resultado é um novo modelo GenAI personalizado, otimizado com base nos exemplos fornecidos.

Considere ajustar modelos GenAI para:

  • Escalar e se adaptar às necessidades específicas da sua empresa
  • Reduzir falsos positivos, já que modelos personalizados têm menor probabilidade de gerar respostas incorretas ou irrelevantes
  • Melhorar a exatidão de um modelo em tarefas específicas de um domínio
  • Poupar tempo e recursos com resultados mais rápidos e precisos
  • Obter respostas mais relevantes e contextuais à medida que os modelos são ajustados para casos de uso específicos

O Azure AI Foundry oferece vários modelos de diferentes provedores, permitindo que você tenha acesso às tecnologias mais avançadas e atualizadas do mercado. Você pode descobrir modelos com suporte para ajuste fino através do nosso catálogo de modelos usando o filtro Tarefas de ajuste fino e selecionar o cartão do modelo para saber mais detalhes sobre cada modelo. Alguns modelos podem estar sujeitos a restrições regionais. Confira esta lista para mais detalhes.

Captura de tela do catálogo de modelos do Azure AI Foundry, filtrando por Tarefas de ajuste fino.

Este artigo abordará casos de uso para ajuste fino e como isso pode ajudar em sua jornada com a GenAI.

Primeiros passos com o ajuste fino

Ao iniciar sua jornada com IA generativa, recomendamos começar com engenharia de prompts e RAG (geração aumentada de recuperação) para se familiarizar com os modelos base e suas capacidades.

  • Engenharia de prompts é uma técnica que envolve a criação de prompts usando detalhes de tom e estilo, exemplos de respostas e mapeamento de intenção para modelos de processamento de linguagem natural. Esse processo aprimora a precisão e a relevância em respostas, para otimizar o desempenho do modelo.
  • RAG (Geração Aumentada por Recuperação) aprimora o desempenho do LLM (Modelo de Linguagem Grande) recuperando dados de fontes externas e incorporando-os em um prompt. A RAG pode ajudar as empresas a obter soluções personalizadas, mantendo a relevância dos dados e otimizando os custos.

À medida que você se sente confortável e começa a desenvolver sua solução, é importante entender onde a engenharia de prompts apresenta limitações. Isso ajudará você a perceber se o ajuste fino é necessário.

  • O modelo base está falhando em casos de borda ou exceções?
  • O modelo base não está fornecendo resultados consistentes no formato correto?
  • É difícil incluir exemplos suficientes na janela de contexto para orientar o modelo?
  • A latência está muito alta?

Exemplos de falhas do modelo base e da engenharia de prompts podem ajudar a identificar os dados necessários para o ajuste fino e a estabelecer uma linha de base de desempenho que você pode avaliar e comparar com seu modelo ajustado. Ter uma linha de base para desempenho sem ajuste fino é essencial para saber se o ajuste fino aprimora ou não o desempenho do modelo.

Veja um exemplo:

Um cliente quer usar o GPT-3.5-Turbo para transformar perguntas em linguagem natural em consultas em uma linguagem de consulta específica e não padronizada. Esse cliente fornece as diretrizes no prompt ("Sempre retornar GQL") e usa a RAG para recuperar o esquema do banco de dados. No entanto, a sintaxe nem sempre está correta e frequentemente falha em casos de borda. O cliente coleta milhares de exemplos de perguntas de linguagem natural e as consultas equivalentes para o banco de dados, incluindo casos prévios em que o modelo falhou. Em seguida, o cliente usa esses dados para ajustar o modelo. A combinação de seu novo modelo ajustado com o prompt e a recuperação projetados faz com que a precisão das saídas do modelo atinja padrões aceitáveis para uso.

Casos de uso

Os modelos base já são pré-treinados com grandes quantidades de dados e, na maioria das vezes, você adicionará instruções e exemplos ao prompt para obter as respostas de qualidade. Esse processo é chamado de "few-shot learning" (aprendizado em poucas tentativas). Com o ajuste fino, é possível treinar o modelo com muito mais exemplos, adaptando-o para atender a casos de uso específicos e melhorando o aprendizado few-shot. Isso pode reduzir o número de tokens no prompt, levando a possíveis reduções de custos e solicitações com menor latência.

Transformar linguagem natural em uma linguagem de consulta é apenas um exemplo de como você pode mostrar e não apenas dizer ao modelo como se comportar. Outros casos de uso incluem:

  • Melhorar o tratamento de dados recuperados
  • Direcionar o modelo para o conteúdo de saída em um estilo, tom ou formato específico
  • Aumentar a exatidão na busca por informações
  • Reduzir o tamanho do prompt
  • Ensinar novas habilidades (por exemplo, converter linguagem natural em código)

Se você identificar o custo como seu principal motivador, prossiga com cuidado. O ajuste fino pode reduzir os custos para determinados casos de uso, reduzindo prompts ou permitindo que você use um modelo menor. Mas pode haver custo inicial mais alto para o treinamento, e você precisará pagar pela hospedagem do seu modelo personalizado.

Etapas para ajustar um modelo

Estas são as etapas gerais para ajustar um modelo:

  1. Escolha um modelo compatível com sua tarefa, com base no caso de uso
  2. Preparar e carregar dados de treinamento
  3. (Opcional) Prepare e carregue dados de validação
  4. (Opcional) Configure os parâmetros da tarefa
  5. Treine o modelo.
  6. Quando concluído, revise as métricas e avalie o modelo. Se os resultados não atenderem aos seus parâmetro de comparação, volte para a etapa 2.
  7. Use o modelo ajustado

É importante destacar que o ajuste fino depende fortemente da qualidade dos dados que você pode fornecer. A melhor prática é fornecer centenas, se não milhares, de exemplos de treinamento para ter sucesso e alcançar os resultados desejados.

Modelos compatíveis com ajuste fino

Agora que você sabe quando usar o ajuste fino para seu caso de uso, vá para o Azure AI Foundry para encontrar modelos disponíveis para ajuste fino. Para alguns modelos no catálogo de modelos, o ajuste fino está disponível usando uma API sem servidor, ou um computador gerenciado (versão prévia), ou ambos.

O ajuste fino está disponível em regiões específicas do Azure para alguns modelos implantados via APIs sem servidor. Para ajustar esses modelos, é necessário que o usuário tenha um hub/projeto na região onde o modelo está disponível para ajuste fino. Confira Disponibilidade de regiões para modelos em pontos de extremidade de API sem servidor para obter informações detalhadas.

Para mais informações sobre ajuste fino usando um computador gerenciado (versão prévia), confira Ajustar modelos usando um computador gerenciado (versão prévia).

Para obter detalhes sobre os modelos do OpenAI do Azure disponíveis para ajuste, consulte a Documentação de modelos do Serviço OpenAI do Azure ou a tabela de modelos do OpenAI do Azure mais adiante neste guia.

Para os modelos do Serviço OpenAI do Azure que você pode ajustar, as regiões compatíveis com ajuste fino incluem Centro-Norte dos EUA, Suécia Central e mais.

Modelos OpenAI do Azure de ajuste fino

Observação

gpt-35-turbo: o ajuste fino desse modelo é limitado a um subconjunto de regiões e não está disponível em todas as regiões em que o modelo base está.

As regiões com suporte para ajuste fino podem variar se você usar modelos do Azure OpenAI em um projeto do IA do Azure Foundry em comparação com fora de um projeto.

ID do Modelo Regiões com ajuste fino Máx. de solicitações (tokens) Dados de treinamento (até)
babbage-002 Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
16.384 Setembro de 2021
davinci-002 Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
16.384 Setembro de 2021
gpt-35-turbo (0613) Leste dos EUA 2
Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
4\.096 Setembro de 2021
gpt-35-turbo (1106) Leste dos EUA 2
Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
Input: 16,385
Output: 4,096
Setembro de 2021
gpt-35-turbo (0125) Leste dos EUA 2
Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
16.385 Setembro de 2021
gpt-4 (0613) 1 Centro-Norte dos EUA
Suécia Central
8192 Setembro de 2021
gpt-4o-mini (18/07/2024) Centro-Norte dos EUA
Suécia Central
Input: 128,000
Saída: 16.384
Comprimento do contexto do exemplo de treinamento: 64.536
Outubro de 2023
gpt-4o (2024-08-06) Leste dos EUA 2
Centro-Norte dos EUA
Suécia Central
Input: 128,000
Saída: 16.384
Comprimento do contexto do exemplo de treinamento: 64.536
Outubro de 2023

No momento, 1 GPT-4 está em visualização pública.