Ajuste modelos com o Azure AI Foundry
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 refere-se à personalização de um modelo de IA generativa pré-treinado com treinamento adicional em uma tarefa específica ou novo conjunto de dados para melhorar o desempenho, novas habilidades ou precisão aprimorada. O resultado é um novo modelo GenAI personalizado que é otimizado com base nos exemplos fornecidos.
Considere ajustar os modelos GenAI para:
- Dimensionar e adaptar-se às necessidades específicas da empresa
- Reduza os falsos positivos, pois os modelos personalizados têm menos probabilidade de produzir respostas imprecisas ou irrelevantes
- Melhorar a precisão do modelo para tarefas específicas do domínio
- Poupe tempo e recursos com resultados mais rápidos e precisos
- Obtenha resultados mais relevantes e sensíveis ao contexto à medida que os modelos são ajustados para casos de uso específicos
O Azure AI Foundry oferece vários modelos entre fornecedores de modelos, permitindo-lhe ter acesso ao que há de melhor e mais recente no mercado. Você pode descobrir modelos suportados para ajuste fino através do nosso catálogo de modelos usando o filtro Tarefas de ajuste fino e selecionando o cartão modelo para obter informações detalhadas sobre cada modelo. Modelos específicos podem estar sujeitos a restrições regionais, consulte esta lista para obter mais detalhes.
Este artigo irá orientá-lo através de casos de uso para ajuste fino e como isso pode ajudá-lo em sua jornada GenAI.
Introdução ao ajuste fino
Ao iniciar sua jornada de IA generativa, recomendamos que você comece com engenharia imediata e RAG para se familiarizar com modelos básicos e seus recursos.
- A engenharia de prompts é uma técnica que envolve a criação de prompts usando detalhes de tom e estilo, respostas de exemplo e mapeamento de intenção 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.
À medida que você se sente confortável e começa a construir sua solução, é importante entender onde a engenharia rápida fica aquém e isso o ajudará a perceber se você deve tentar o ajuste fino.
- O modelo base está falhando em casos de borda ou exceções?
- O modelo base não fornece consistentemente resultados no formato correto?
- É difícil encaixar exemplos suficientes na janela de contexto para orientar o modelo?
- Existe alta latência?
Exemplos de falha com o modelo base e a engenharia imediata podem ajudá-lo a identificar os dados a serem coletados para ajuste fino e estabelecer uma linha de base de desempenho com a qual você pode avaliar e comparar seu modelo ajustado. 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.
Eis 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.
Casos de utilização
Os modelos base já são pré-treinados em grandes quantidades de dados e, na maioria das vezes, você adicionará instruções e exemplos ao prompt para obter as respostas de qualidade que você está procurando - esse processo é chamado de "aprendizagem de poucos tiros". O ajuste fino permite que você treine um modelo com muitos mais exemplos que você pode adaptar para atender ao seu caso de uso específico, melhorando assim o aprendizado de poucas imagens. Isso pode reduzir o número de tokens no prompt, levando a possíveis economias de custos e solicitações com menor latência.
Transformar a linguagem natural em uma linguagem de consulta é apenas um caso de uso em que você pode mostrar não dizer ao modelo como se comportar. Aqui estão alguns casos de uso adicionais:
- Melhorar o tratamento de dados recuperados pelo modelo
- Orientar o modelo para produzir conteúdo em um estilo, tom ou formato específico
- Melhorar a precisão ao procurar informações
- Reduza o comprimento do seu prompt
- Ensinar novas habilidades (por exemplo, linguagem natural para codificar)
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 pode haver um custo inicial mais alto para o treinamento, e você tem que pagar para hospedar seu próprio modelo personalizado.
Etapas para ajustar um modelo
Aqui estão as etapas gerais para ajustar um modelo:
- Com base no seu caso de uso, escolha um modelo que suporte a sua tarefa
- Preparar e carregar dados de treinamento
- (Opcional) Preparar e carregar dados de validação
- (Opcional) Configurar parâmetros de tarefa
- Treinar o seu modelo.
- Uma vez concluído, revise as métricas e avalie o modelo. Se os resultados não atenderem ao seu benchmark, volte para a etapa 2.
- Utilize o seu modelo ajustado
É importante destacar que o ajuste fino depende muito da qualidade dos dados que você pode fornecer. É uma boa prática fornecer centenas, se não milhares, de exemplos de treinamento para ser bem-sucedido e obter os resultados desejados.
Modelos suportados para ajuste fino
Agora que você sabe quando usar o ajuste fino para seu caso de uso, você pode ir para o Azure AI Foundry para encontrar modelos disponíveis para ajuste. Para alguns modelos no catálogo de modelos, o ajuste fino está disponível usando uma API sem servidor, uma computação gerenciada (visualização) ou ambas.
O ajuste fino está disponível em regiões específicas do Azure para alguns modelos implantados por meio de APIs sem servidor. Para ajustar esses modelos, um usuário deve ter um hub/projeto na região onde o modelo está disponível para ajuste fino. Consulte Disponibilidade de região para modelos em pontos de extremidade de API sem servidor para obter informações detalhadas.
Para obter mais informações sobre ajuste fino usando uma computação gerenciada (visualização), consulte Ajustar modelos usando computação gerenciada (visualização).
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.
Para os modelos do Serviço OpenAI do Azure que você pode ajustar, as regiões com suporte para ajuste fino incluem Centro-Norte dos EUA, Suécia Central e muito mais.
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 Azure AI Foundry 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 (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 (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.
Conteúdos relacionados
- Ajuste modelos usando computação gerenciada (visualização)
- Ajuste um modelo do Azure OpenAI no portal do Azure AI Foundry
- Ajuste um modelo Llama 2 no portal do Azure AI Foundry
- Ajuste um modelo Phi-3 no portal do Azure AI Foundry
- Implante a família Phi-3 de modelos de linguagem pequena com o Azure AI Foundry