Partilhar via


Ajuste os modelos Meta Llama 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 Azure AI Studio permite-lhe adaptar modelos de linguagem grandes aos seus conjuntos de dados pessoais utilizando um processo conhecido como ajuste fino.

A otimização oferece um valor significativo, pois permite a personalização e o ajuste de tarefas e aplicações específicas. Isso leva a um melhor desempenho, eficiência de custos, latência reduzida e saídas personalizadas.

Neste artigo, você aprenderá a ajustar modelos Meta Llama no Azure AI Studio.

A família Meta Llama de grandes modelos de linguagem (LLMs) é uma coleção de modelos de texto generativos pré-treinados e ajustados que variam em escala de 7 bilhões a 70 bilhões de parâmetros. A família de modelos também inclui versões ajustadas otimizadas para casos de uso de diálogo com o Reinforcement Learning from Human Feedback (RLHF), chamado Llama-Instruct.

Importante

Os modelos que estão em pré-visualização são marcados como pré-visualização nos respetivos cartões de modelo no catálogo de modelos.

Modelos

Os seguintes modelos estão disponíveis no Azure Marketplace para Llama 3.1 ao ajustar como um serviço com cobrança pré-paga:

  • Meta-Llama-3.1-70B-Instruct (pré-visualização)
  • Meta-LLama-3.1-8b-Instruct (pré-visualização)

O ajuste fino dos modelos Llama 3.1 é atualmente suportado em projetos localizados no oeste dos EUA 3.

Importante

Neste momento, não somos capazes de fazer ajustes finos para Llama 3.1 com comprimento de sequência de 128K.

Pré-requisitos

Uma subscrição do Azure com um método de pagamento válido. As subscrições gratuitas ou de avaliação do Azure não funcionarão. Se você não tiver uma assinatura do Azure, crie uma conta paga do Azure para começar.

  • Um hub do Azure AI Studio.

    Importante

    Para os modelos Meta Llama 3.1, a oferta de ajuste fino do modelo pré-pago só está disponível com hubs criados em regiões do oeste dos EUA 3 .

  • Um projeto do Azure AI Studio no Azure AI Studio.

  • Os controles de acesso baseados em função do Azure (Azure RBAC) são usados para conceder acesso a operações no Azure AI Studio. Para executar os passos neste artigo, sua conta de utilizador deve ter atribuída a função de proprietário ou contribuinte para a subscrição do Azure. Em alternativa, pode ser atribuída à sua conta uma função personalizada com as seguintes permissões:

    • Na subscrição do Azure — para subscrever o projeto AI Studio na oferta do Azure Marketplace, uma vez para cada projeto, por oferta:

      • Microsoft.MarketplaceOrdering/agreements/offers/plans/read
      • Microsoft.MarketplaceOrdering/agreements/offers/plans/sign/action
      • Microsoft.MarketplaceOrdering/offerTypes/publishers/offers/plans/agreements/read
      • Microsoft.Marketplace/offerTypes/publishers/offers/plans/agreements/read
      • Microsoft.SaaS/register/action
    • No grupo de recursos — para criar e utilizar o recurso SaaS:

      • Microsoft.SaaS/resources/read
      • Microsoft.SaaS/resources/write
    • No projeto AI Studio — para implantar pontos de extremidade (a função Desenvolvedor de IA do Azure já contém essas permissões):

      • Microsoft.MachineLearningServices/workspaces/marketplaceModelSubscriptions/*
      • Microsoft.MachineLearningServices/workspaces/serverlessEndpoints/*

    Para obter mais informações sobre permissões, consulte Controle de acesso baseado em função no Azure AI Studio.

Registo do fornecedor de subscrição

Verifique se a assinatura está registrada no provedor de Microsoft.Network recursos.

  1. Inicie sessão no portal do Azure.

  2. Selecione Assinaturas no menu à esquerda.

  3. selecione a subscrição que quer utilizar.

  4. Selecione Configurações>Provedores de recursos no menu à esquerda.

  5. Confirme se Microsoft.Network está na lista de provedores de recursos. Caso contrário, adicione-o.

    Captura de ecrã dos fornecedores de recursos de subscrição no portal do Azure.

Preparação de dados

Prepare os dados de preparação e de validação para otimizar o seu modelo. Os dados de preparação e os conjuntos de dados de validação consistem em exemplos de entrada e saída de como pretende que o modelo seja executado.

Certifique-se de que todos os seus exemplos de treinamento sigam o formato esperado para inferência. Para ajustar modelos de forma eficaz, garanta um conjunto de dados equilibrado e diversificado.

Isso envolve manter o equilíbrio de dados, incluindo vários cenários, e refinar periodicamente os dados de treinamento para alinhá-los com as expectativas do mundo real, levando a respostas de modelo mais precisas e equilibradas.

Diferentes tipos de modelo exigem um formato diferente de dados de treinamento.

Os dados de treinamento e validação usados devem ser formatados como um documento JSONL (JSON Lines). Para Meta-Llama-3.1-70B-Instruct o ajuste fino, o conjunto de dados deve ser formatado no formato de conversação usado pela API de conclusão de bate-papo.

Exemplo de formato de ficheiro

    {"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "Is Xbox better than PlayStation?"}, {"role": "assistant", "content": "I apologize, but I cannot provide personal opinions. My primary job is to assist you with any issues related to your Xbox device. Do you have any Xbox-related issues that need addressing?"}]}
    {"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "Can I play PC games on my Xbox?"}, {"role": "assistant", "content": "While Xbox consoles don't natively support PC games, they can play an array of Xbox games, many of which are also available on PC. Can I assist you with finding games compatible with your Xbox device?"}]}
    {"messages": [{"role": "system", "content": "You are an Xbox customer support agent whose primary goal is to help users with issues they are experiencing with their Xbox devices. You are friendly and concise. You only provide factual answers to queries, and do not provide answers that are not related to Xbox."}, {"role": "user", "content": "I'm having trouble connecting my Xbox to the Wi-Fi."}, {"role": "assistant", "content": "No worries, let's go through the network settings on your Xbox. Can you please tell me what happens when you try to connect it to the Wi-Fi?"}]}

O tipo de ficheiro suportado é JSON Lines. Os ficheiros são carregados para o arquivo de dados predefinido e disponibilizados em seu projeto.

Ajuste um modelo Meta Llama

Para ajustar um modelo LLama 3.1:

  1. Entre no Azure AI Studio.

  2. Escolha o modelo que deseja ajustar no catálogo de modelos do Azure AI Studio.

  3. Na página Detalhes do modelo, selecione Ajustar.

  4. Selecione o projeto no qual você deseja ajustar seus modelos. Para usar a oferta de ajuste fino do modelo de pagamento conforme o uso, seu espaço de trabalho deve pertencer à região Oeste dos EUA 3 .

  5. No assistente de ajuste fino, selecione o link para os Termos do Azure Marketplace para saber mais sobre os termos de uso. Você também pode selecionar a guia Detalhes da oferta do Marketplace para saber mais sobre os preços do modelo selecionado.

  6. Se esta for a primeira vez que ajusta o modelo no projeto, tem de subscrever o seu projeto para a oferta específica (por exemplo, Meta-Llama-3.1-70B-Instruct) do Azure Marketplace. Esta etapa requer que sua conta tenha as permissões de assinatura do Azure e as permissões de grupo de recursos listadas nos pré-requisitos. Cada projeto tem a sua própria subscrição para a oferta específica do Azure Marketplace, que lhe permite controlar e monitorizar os gastos. Selecione Subscrever e ajustar.

    Nota

    Inscrever um projeto em uma oferta específica do Azure Marketplace (neste caso, Meta-Llama-3.1-70B-Instruct) requer que sua conta tenha acesso de Colaborador ou Proprietário no nível de assinatura em que o projeto é criado. Como alternativa, sua conta de usuário pode receber uma função personalizada que tenha as permissões de assinatura do Azure e as permissões de grupo de recursos listadas nos pré-requisitos.

  7. Depois de inscrever o projeto para a oferta específica do Azure Marketplace, o ajuste fino subsequente da mesma oferta no mesmo projeto não requer a assinatura novamente. Portanto, você não precisa ter as permissões de nível de assinatura para trabalhos de ajuste fino subsequentes. Se esse cenário se aplicar a você, selecione Continuar para ajustar.

  8. Introduza um nome para o seu modelo ajustado e as etiquetas e descrição opcionais.

  9. Selecione os dados de treinamento para ajustar seu modelo. Consulte a preparação de dados para obter mais informações.

    Nota

    Se você tiver seus arquivos de treinamento/validação em um armazenamento de dados sem credenciais, precisará permitir o acesso de identidade gerenciada pelo espaço de trabalho ao armazenamento de dados para prosseguir com o ajuste fino do MaaS com menos armazenamento de credenciais. Na página "Datastore", depois de clicar em "Atualizar autenticação", > selecione a seguinte opção:

    Use a identidade gerenciada do espaço de trabalho para visualização de dados e criação de perfil no Estúdio de Aprendizado de Máquina do Azure.

    Certifique-se de que todos os seus exemplos de treinamento sigam o formato esperado para inferência. Para ajustar modelos de forma eficaz, garanta um conjunto de dados equilibrado e diversificado. Isso envolve manter o equilíbrio de dados, incluindo vários cenários, e refinar periodicamente os dados de treinamento para alinhá-los com as expectativas do mundo real, levando a respostas de modelo mais precisas e equilibradas.

    • O tamanho do lote a ser usado para treinamento. Quando definido como -1, batch_size é calculado como 0,2% dos exemplos no conjunto de treinamento e o máximo é 256.
    • A taxa de aprendizagem de ajuste fino é a taxa de aprendizagem original utilizada para a pré-formação multiplicada por este multiplicador. Recomendamos experimentar valores entre 0,5 e 2. Empiricamente, descobrimos que taxas de aprendizagem maiores geralmente têm melhor desempenho com lotes maiores. Deve estar entre 0,0 e 5,0.
    • Número de épocas de formação. Uma época refere-se a um ciclo completo através do conjunto de dados.
  10. Os parâmetros da tarefa são uma etapa opcional e uma opção avançada - O ajuste do hiperparâmetro é essencial para otimizar grandes modelos de linguagem (LLMs) em aplicações do mundo real. Permite um melhor desempenho e uma utilização eficiente dos recursos. As configurações padrão podem ser usadas ou usuários avançados podem personalizar parâmetros como épocas ou taxa de aprendizagem.

  11. Reveja as suas seleções e prossiga para treinar o seu modelo.

Depois que o modelo estiver ajustado, você poderá implantá-lo e usá-lo em seu próprio aplicativo, no playground ou no fluxo de prompt. Para obter mais informações, consulte Como implantar a família Llama 3.1 de modelos de linguagem grandes com o Azure AI Studio.

Limpeza dos seus modelos ajustados

Você pode excluir um modelo ajustado da lista de modelos de ajuste fino no Azure AI Studio ou da página de detalhes do modelo. Selecione o modelo ajustado a ser excluído da página Ajuste fino e, em seguida, selecione o botão Excluir para excluir o modelo ajustado.

Nota

Não é possível excluir um modelo personalizado se ele tiver uma implantação existente. Você deve primeiro excluir sua implantação de modelo antes de poder excluir seu modelo personalizado.

Custo e quotas

Considerações de custo e cota para modelos Meta Llama ajustados como um serviço

Os modelos Meta Llama ajustados como um serviço são oferecidos pela Meta através do Azure Marketplace e integrados com o Azure AI Studio para utilização. Você pode encontrar os preços do Azure Marketplace ao implantar ou ajustar os modelos.

Sempre que um projeto subscreve uma determinada oferta do Azure Marketplace, é criado um novo recurso para controlar os custos associados ao seu consumo. O mesmo recurso é usado para monitorizar os custos associados à inferência e à otimização; no entanto, estão disponíveis vários medidores para monitorizar cada cenário de forma independente.

Para obter mais informações sobre como monitorizar os custos, consulte Monitorizar custos dos modelos oferecidos através do Azure Marketplace.

Filtragem de conteúdos

Os modelos implantados como um serviço com cobrança pré-paga são protegidos pelo Azure AI Content Safety. Quando implantado em pontos de extremidade em tempo real, você pode desativar esse recurso. Com a segurança de conteúdo de IA do Azure habilitada, tanto o prompt quanto a conclusão passam por um conjunto de modelos de classificação destinados a detetar e prevenir a saída de conteúdo nocivo. O sistema de filtragem de conteúdo (visualização) deteta e executa ações em categorias específicas de conteúdo potencialmente nocivo em prompts de entrada e finalizações de saída. Saiba mais sobre a Segurança de Conteúdo do Azure AI.

Próximos passos