Partilhar via


Ajuste modelos no Azure AI Studio

Importante

Os itens marcados (visualização) neste artigo estão atualmente em visualização pública. Essa visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.

O ajuste fino retreina um modelo de linguagem grande (LLM) existente usando dados de exemplo. O resultado é um LLM novo e personalizado otimizado para os exemplos fornecidos.

Este artigo pode ajudá-lo a decidir se o ajuste fino é ou não a solução certa para o seu caso de uso. Este artigo também descreve como o Azure AI Studio pode dar suporte às suas necessidades de ajuste fino.

Neste artigo, o ajuste fino refere-se ao ajuste fino supervisionado, não à pré-formação contínua ou à aprendizagem por reforço através do feedback humano (RLHF). O ajuste fino supervisionado é o processo de retreinamento de modelos pré-treinados em conjuntos de dados específicos. Normalmente, o objetivo é melhorar o desempenho do modelo em tarefas específicas ou introduzir informações que não estavam bem representadas quando você treinou originalmente o modelo base.

Introdução ao ajuste fino

Ao decidir se o ajuste fino é ou não a solução certa para seu caso de uso, é útil estar familiarizado com estes termos-chave:

  • A engenharia de prompt é uma técnica que envolve a criação de prompts para modelos de processamento de linguagem natural. Este processo melhora a precisão e relevância nas respostas, para otimizar o desempenho do modelo.
  • A geração aumentada de recuperação (RAG) melhora o desempenho do LLM 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.

O ajuste fino é uma ótima maneira de obter resultados de maior qualidade e, ao mesmo tempo, reduzir a latência. As perguntas a seguir podem ajudá-lo a entender melhor por que ajustar e avaliar se você está pronto para ajustar o processo. Você pode usar essas perguntas para orientar suas próximas etapas.

Por que você quer ajustar um modelo?

Antes de começar a ajustar um modelo, considere se você identificou deficiências ao usar um modelo básico. Essas deficiências podem incluir: um desempenho inconsistente em casos de borda, incapacidade de ajustar prompts suficientes na janela de contexto para orientar o modelo ou alta latência.

Os modelos base já são pré-treinados em grandes quantidades de dados, mas na maioria das vezes você adicionará instruções e exemplos ao prompt para obter as respostas de qualidade que você está procurando. Este processo de "aprendizagem de poucos tiros" pode ser melhorado com ajustes finos.

O ajuste fino permite treinar um modelo com muitos mais exemplos. Você pode adaptar seus exemplos para atender ao seu caso de uso específico. Isso pode ajudá-lo a reduzir o número de tokens no prompt, levando a possíveis economias de custos e solicitações com menor latência.

Os casos de uso para ajustar um modelo podem ser:

  • Direcionando o modelo para produzir conteúdo em um estilo, tom ou formato específico e personalizado.

Se você identificar o custo como seu principal motivador, prossiga com cautela. O ajuste fino pode reduzir os custos de determinados casos de uso, encurtando prompts ou permitindo que você use um modelo menor. Mas normalmente há um custo inicial mais alto para o treinamento, e você tem que pagar para hospedar seu próprio modelo personalizado.

O que não é trabalhar com abordagens alternativas?

Entender onde a engenharia rápida fica aquém deve fornecer orientação sobre como abordar seu ajuste fino. O modelo base está falhando em casos de borda ou exceções? O modelo base não está consistentemente fornecendo saída no formato certo e você não consegue ajustar exemplos suficientes na janela de contexto para corrigi-lo?

Exemplos de falha com o modelo base e engenharia imediata podem ajudá-lo a identificar os dados que eles precisam coletar para ajuste fino e como você deve avaliar seu modelo ajustado.

Aqui está um exemplo: um cliente deseja usar o GPT-3.5 Turbo para transformar perguntas de linguagem natural em consultas em uma linguagem de consulta específica e não padrão. O cliente fornece orientação no prompt ("Sempre retornar GQL") e usa o RAG para recuperar o esquema do banco de dados. No entanto, a sintaxe nem sempre está correta e muitas vezes falha para casos de borda. O cliente coleta milhares de exemplos de perguntas em linguagem natural e consultas equivalentes para o banco de dados, incluindo casos em que o modelo falhou antes. Em seguida, o cliente usa esses dados para ajustar o modelo. A combinação do modelo recém-ajustado com o prompt e a recuperação projetados eleva a precisão das saídas do modelo a padrões aceitáveis para uso.

O que você tentou até agora?

O ajuste fino é um recurso avançado, não o ponto de partida para sua jornada de IA generativa. Você já deve estar familiarizado com os conceitos básicos do uso de LLMs. Você deve começar avaliando o desempenho de um modelo básico com engenharia imediata e/ou RAG para obter uma linha de base para o desempenho.

Ter uma linha de base para o desempenho sem ajustes finos é essencial para saber se o ajuste fino melhora ou não o desempenho do modelo. O ajuste fino com dados incorretos piora o modelo base, mas sem uma linha de base, é difícil detetar regressões.

Antes de começar a ajustar um modelo, você precisa garantir:

  • Você pode demonstrar evidências e conhecimento do uso de engenharia imediata e abordagens baseadas em RAG em seu LLM.
  • Você pode compartilhar experiências e desafios específicos com técnicas diferentes do ajuste fino que você tentou para seu caso de uso.
  • Você tem avaliações quantitativas do desempenho da linha de base, sempre que possível.
  • Você tem um conjunto de dados rotulado que corresponde ao caso de uso específico que você deseja treinar seu LLM.

Que dados vai utilizar para ajustamentos?

Mesmo com um ótimo caso de uso, o ajuste fino é tão bom quanto a qualidade dos dados que você pode fornecer. Você precisa estar disposto a investir tempo e esforço para fazer o ajuste fino funcionar. Modelos diferentes exigem volumes de dados diferentes, mas muitas vezes você precisa ser capaz de fornecer quantidades bastante grandes de dados com curadoria de alta qualidade. No ajuste fino supervisionado, um moddel genérico é treinado em um conjunto de dados rotulado específico do tópico. O modelo com ajustar seus parâmetros para os novos dados e aplicar o conhecimento pré-existente ao emitir novos conteúdos.

Outro ponto importante é que, mesmo com dados de alta qualidade, se seus dados não estiverem no formato necessário para ajuste fino, você precisa comprometer recursos de engenharia para a formatação.

Você pode estar pronto para ajustes finos se:

  • Você identificou um conjunto de dados para ajuste fino.
  • Seu conjunto de dados está no formato apropriado para treinamento em seu modelo existente.
  • Você empregou algum nível de curadoria para garantir a qualidade do conjunto de dados.

Como irá medir a qualidade do seu modelo ajustado?

Não há uma única resposta certa para essa pergunta, mas você deve ter metas claramente definidas para como é o sucesso com ajustes finos. O ideal é que esse esforço não seja apenas qualitativo. Ele deve incluir medidas quantitativas de sucesso, como o uso de um conjunto de dados para validação, além de testes de aceitação do usuário ou testes A/B do modelo ajustado em relação a um modelo base.

Modelos suportados para ajuste fino no Azure AI Studio

Agora que você sabe quando usar o ajuste fino para seu caso de uso, você pode ir para o Azure AI Studio para encontrar modelos disponíveis para ajuste. A tabela a seguir descreve os modelos que você pode ajustar no Azure AI Studio, juntamente com as regiões onde você pode ajustá-los.

Família de modelos Model ID Regiões de ajuste fino
Modelos do Azure OpenAI Os modelos do Serviço OpenAI do Azure que você pode ajustar incluem, entre outros gpt-4 , e gpt-4o-mini.

Para obter detalhes sobre os modelos do Azure OpenAI que estão disponíveis para ajuste fino, consulte a documentação de modelos do Serviço OpenAI do Azure ou a tabela de modelos do Azure OpenAI mais adiante neste guia.
Os modelos do Serviço OpenAI do Azure que você pode ajustar incluem, entre outros, o Centro-Norte dos EUA e o Centro da Suécia.

As regiões suportadas podem variar se você usar modelos do Azure OpenAI em um projeto do AI Studio versus fora de um projeto.

Para obter detalhes sobre o ajuste fino de regiões, consulte a documentação de modelos do Serviço OpenAI do Azure.
Modelos da família Phi-3 Phi-3-mini-4k-instruct
Phi-3-mini-128k-instruct
Phi-3-medium-4k-instruct
Phi-3-medium-128k-instruct
E.U.A. Leste 2
Modelos da família Meta Llama 2 Meta-Llama-2-70b
Meta-Llama-2-7b
Meta-Llama-2-13b
Llama-2-7B-chat
Llama-2-70B-chat
Oeste US3
Modelos da família Meta Llama 3.1 Meta-Llama-3.1-70b-Instruct
Meta-Llama-3.1-8b-Instruct
Oeste US3

Esta tabela fornece mais detalhes sobre os modelos do Serviço OpenAI do Azure que dão suporte ao ajuste fino e as regiões onde o ajuste fino está disponível.

Ajustando modelos do Azure OpenAI

Nota

gpt-35-turbo - O ajuste fino deste 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á disponível.

As regiões com suporte para ajuste fino podem variar se você usar modelos do Azure OpenAI em um projeto do AI Studio versus fora de um projeto.

Model ID Regiões de ajuste fino Solicitação máxima (tokens) Dados de formação (até)
babbage-002 Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
16,384 Setembro 2021
davinci-002 Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
16,384 Setembro 2021
gpt-35-turbo (0613) Leste US2
Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
4,096 Setembro 2021
gpt-35-turbo (1106) Leste US2
Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
Entrada: 16.385
Saída: 4.096
Setembro 2021
gpt-35-turbo (0125) Leste US2
Centro-Norte dos EUA
Suécia Central
Oeste da Suíça
16,385 Setembro 2021
gpt-4 (0613) 1 Centro-Norte dos EUA
Suécia Central
8192 Setembro 2021
gpt-4o-mini 1 (2024-07-18) Centro-Norte dos EUA
Suécia Central
Entrada: 128.000
Potência: 16.384
Duração do contexto do exemplo de treinamento: 64.536
Outubro de 2023
gpt-4o 1 (2024-08-06) Leste US2
Centro-Norte dos EUA
Suécia Central
Entrada: 128.000
Potência: 16.384
Duração do contexto do exemplo de treinamento: 64.536
Outubro de 2023

1 GPT-4 está atualmente em pré-visualização pública.