Introdução à personalização de um LLM (modelo de linguagem grande)
Há várias técnicas para adaptar um modelo de linguagem pré-treinado para atender a uma tarefa ou domínio específico. Isso inclui engenharia de prompt, RAG (Recuperação de Geração Aumentada) e ajuste fino. Essas três técnicas não são mutuamente exclusivas, mas são métodos complementares que, em combinação, podem ser aplicáveis a um caso de uso específico. Neste artigo, exploraremos essas técnicas, casos de uso ilustrativo, itens a serem considerados e forneceremos links para recursos para saber mais e começar a usar cada uma delas.
Engenharia de prompt
Definição
A engenharia de prompt é uma técnica que é arte e ciência, que envolve a criação de prompts para modelos de IA generativos. Esse processo utiliza o aprendizado no contexto (zero shot e few shot) e, com a iteração, melhora a precisão e a relevância das respostas, otimizando o desempenho do modelo.
Casos de uso ilustrativos
Um Gerente de Marketing de uma empresa ambientalmente consciente pode usar a engenharia de prompts para ajudar a orientar o modelo a gerar descrições mais alinhadas com o tom e o estilo de sua marca. Por exemplo, eles podem adicionar um prompt como "Escrever uma descrição do produto para uma nova linha de produtos de limpeza ecológicos que enfatiza a qualidade, a eficácia e realça o uso de ingredientes ambientalmente amigáveis" à entrada. Isso ajudará o modelo a gerar descrições alinhadas com os valores e mensagens de sua marca.
Aspectos a considerar
A engenharia de prompt é o ponto de partida para gerar a saída desejada de modelos de IA generativos.
Crie instruções claras: As instruções são comumente usadas em prompts e orientam o comportamento do modelo. Seja específico e deixe o mínimo de espaço para interpretação possível. Use analogias e linguagem descritiva para ajudar o modelo a entender o resultado desejado.
Experimento e iterar: a engenharia de prompt é uma arte que requer experimentação e iteração. Pratique e obtenha experiência na criação de prompts para tarefas diferentes. Cada modelo pode se comportar de forma diferente, portanto, é importante adaptar técnicas de engenharia de prompt adequadamente.
Introdução
- Técnicas de engenharia de prompt
- Mensagens do sistema
- 15 dicas para se tornar um engenheiro de prompt melhor para IA geradora
- As noções básicas da engenharia de prompt (vídeo)
RAG (Recuperação de Geração Aumentada)
Definição
RAG (Recuperação de Geração Aumentada) é um método que integra dados externos a um prompt de Modelo de Linguagem Grande para gerar respostas relevantes. Essa abordagem é particularmente benéfica ao usar um grande corpus de texto não estruturado com base em tópicos diferentes. Ele permite que as respostas sejam fundamentadas na KB (base de dados de conhecimento) da organização, fornecendo uma resposta mais personalizada e precisa.
O RAG também é vantajoso ao responder perguntas com base nos dados privados de uma organização ou quando os dados públicos nos quais o modelo foi treinado podem ter se tornado desatualizados. Isso ajuda a garantir que as respostas sejam sempre atualizadas e relevantes, independentemente das alterações no cenário de dados.
Caso de uso ilustrativo
Um departamento de RH corporativo está procurando fornecer um assistente inteligente que responda a perguntas específicas relacionadas ao seguro de saúde dos funcionários, como "óculos são cobertos?" O RAG é usado para ingerir os documentos extensos e numerosos associados às políticas de plano de seguro para habilitar a resposta desses tipos específicos de perguntas.
Aspectos a considerar
O RAG ajuda a basear a saída de IA em dados reais e reduz a probabilidade de fabricação.
O RAG é útil quando há a necessidade de responder perguntas com base em dados proprietários privados.
O RAG é útil quando você deseja que as perguntas respondidas sejam recentes (por exemplo, antes da data de corte de quando a versão do modelo foi treinada pela última vez).
Introdução
- Recuperação de geração aumentada no Azure AI Studio – Azure AI Studio | Microsoft Learn
- Geração Aumentada de Recuperação (RAG) na Pesquisa de IA do Azure
- Recuperação de Geração Aumentada por meio do fluxo de prompt do Azure Machine Learning (versão prévia)
Ajuste fino
Definição
O ajuste fino, especificamente o ajuste fino supervisionado neste contexto, é um processo iterativo que adapta um modelo de linguagem grande existente a um conjunto de treinamento fornecido para melhorar o desempenho, ensinar novas habilidades ao modelo ou reduzir a latência. Essa abordagem é usada quando o modelo precisa aprender e generalizar sobre tópicos específicos, especialmente quando esses tópicos geralmente são pequenos no escopo.
O ajuste fino requer o uso de dados de treinamento de alta qualidade, em um formato especial baseado em exemplo, para criar o novo modelo de linguagem grande ajustado. Ao se concentrar em tópicos específicos, o ajuste fino permite que o modelo forneça respostas mais precisas e relevantes dentro dessas áreas de foco.
Caso de uso ilustrativo
Um departamento de TI tem usado GPT-4o para converter consultas de linguagem natural em SQL, mas eles descobriram que as respostas nem sempre são fundamentadas de forma confiável em seu esquema, e o custo é proibitivamente alto.
Ele ajusta o GPT-4o mini com centenas de solicitações e respostas corretas e produzem um modelo com um desempenho melhor que o modelo base e custos e latência mais baixos.
Aspectos a considerar
O ajuste fino é uma funcionalidade avançada; ele aprimora a LLM com conhecimento de data de corte posterior e/ou conhecimento específico do domínio. Comece avaliando o desempenho da linha de base de um modelo padrão em relação aos requisitos antes de considerar essa opção.
Ter uma linha de base para desempenho sem ajuste fino é essencial para saber se o ajuste fino melhorou o desempenho do modelo. O ajuste fino com dados incorretos piora o modelo base, mas sem uma linha de base, é difícil detectar regressões.
Bons casos para ajuste fino incluem direcionar o modelo para o conteúdo de saída em um estilo específico e personalizado, tom ou formato ou tarefas em que as informações necessárias para orientar o modelo são muito longas ou complexas para caber na janela do prompt.
Custos de ajuste fino:
O ajuste fino pode reduzir os custos em duas dimensões: (1) usando menos tokens dependendo da tarefa (2) usando um modelo menor (por exemplo, o GPT-4o mini pode potencialmente ser ajustado para alcançar a mesma qualidade do GPT-4o em uma tarefa específica).
O ajuste fino tem custos iniciais para treinar o modelo. E custos adicionais por hora para hospedar o modelo personalizado depois que ele é implantado.