TL;DR

Este artigo apresenta o LLMOps, um ramo especializado que mescla DevOps e MLOps para gerenciar os desafios apresentados pelos LLMs ( Large Language Models ). Os LLMs, como o GPT da OpenAI, usam texto extenso data para tarefas como geração de texto e tradução de idiomas. O LLMOps lida com questões como personalização, alterações de API, data drift, avaliação de modelos e monitoramento por meio de ferramentas como LangSmith, TruLens e W&B Prompts. Ele garante a adaptabilidade, a avaliação e o monitoramento dos LLMs em cenários do mundo real, oferecendo uma solução abrangente para as organizações que utilizam esses modelos avançados de linguagem.

Para orientá-lo nessa discussão, começaremos revisitando os princípios fundamentais de DevOps e MLOps e, em seguida, nos concentraremos no LLMOps, começando com uma breve introdução aos LLMs e sua utilização pelas organizações. Em seguida, vamos nos aprofundar nos principais desafios operacionais apresentados pela tecnologia de LLM e em como o LLMOps os enfrenta de forma eficaz.

Princípios básicos para LLMOps: DevOps e MLOps

DevOps, abreviação de Desenvolvimento e Operações, é um conjunto de práticas que visa automatizar o processo de entrega de software, tornando-o mais eficiente, confiável e dimensionável. Os princípios fundamentais do DevOps incluem: colaboração, automação, teste contínuo, monitoramento e orquestração de implantação.

MLOps, abreviação de Machine Learning Operations (operações de aprendizado de máquina), é uma extensão das práticas de DevOps especificamente adaptadas para o gerenciamento do ciclo de vida dos modelos de aprendizado de máquina. Ele aborda os desafios exclusivos apresentados pela natureza iterativa e experimental do desenvolvimento do aprendizado de máquina. Introduzindo tarefas adicionais como data versionamento e gerenciamento, bem como experimentação e treinamento de modelos.

LLMOps: gerenciando a implantação e a manutenção de modelos de idiomas grandes

LLMOps, abreviação de Large Language Model Operations (operações de modelos de linguagem grandes), é um ramo especializado de MLOps projetado especificamente para lidar com os desafios e requisitos exclusivos do gerenciamento de modelos de linguagem grandes (LLMs).

Mas, primeiro, o que são exatamente os LLMs?

Os LLMs são um tipo de modelo de aprendizagem profunda que usa grandes quantidades de texto data para estimar bilhões de parâmetros. Esses parâmetros permitem que os LLMs compreendam e gerem textos com qualidade humana, traduzam idiomas, resumam informações complexas e executem várias tarefas de processamento de linguagem natural.

Como as organizações usam os LLMs

Como o treinamento de LLMs do zero é extremamente caro e demorado, as organizações optam por modelos básicos pré-treinados, como o GPT da OpenAI ou o LaMDA do Google AI, como ponto de partida. Esses modelos, por já terem sido treinados em grandes quantidades de data, possuem amplo conhecimento e podem executar várias tarefas, inclusive gerar texto, traduzir idiomas e escrever diferentes tipos de conteúdo criativo. Para personalizar ainda mais o resultado do LLM para tarefas ou domínios específicos, as organizações empregam técnicas como engenharia de prompts, geração aumentada por recuperação (RAG) e ajuste fino. data A engenharia de prompts envolve a elaboração de instruções claras e concisas que orientam o LLM em direção ao resultado desejado, enquanto a RAG fundamenta o modelo em informações adicionais de fontes externas, melhorando seu desempenho e relevância. O ajuste fino, por outro lado, envolve o ajuste dos parâmetros do LLM usando data adicionais específicos para as necessidades da organização. O esquema abaixo oferece uma visão geral do fluxo de trabalho do LLMOps, ilustrando como essas técnicas se integram ao processo geral.

class="img-responsive

Por que precisamos de LLMOps

Os rápidos avanços na tecnologia LLM trouxeram à tona vários desafios operacionais que exigem abordagens especializadas.

Alguns desses desafios incluem :

  • A necessidade de personalização: Embora os LLMs sejam pré-treinados em grandes quantidades de data, a personalização é essencial para o desempenho ideal em tarefas específicas. Isso levou ao desenvolvimento de novas técnicas de personalização, como a engenharia imediata, a geração aumentada por recuperação(RAG) e o ajuste fino. O RAG ajuda a fundamentar o modelo nas informações mais precisas, fornecendo a ele uma base de conhecimento externa, enquanto o ajuste fino é mais adequado quando queremos que o modelo execute tarefas específicas ou adira a um formato de resposta específico, como JSON ou SQL. A escolha entre RAG e ajuste fino depende do objetivo de aprimorar o conhecimento do modelo ou melhorar seu desempenho em uma tarefa específica.

  • Alterações na API: Diferentemente dos modelos tradicionais de ML, os LLMs são frequentemente acessados por meio de APIs de terceiros, que podem ser modificadas ou até mesmo obsoletas, exigindo monitoramento e adaptação contínuos. Por exemplo, a documentação da Open AI menciona explicitamente que seus modelos estão sujeitos a atualizações regulares, o que pode exigir que os usuários atualizem seu software ou migrem para modelos ou pontos de extremidade mais novos.

  • Data drift, refere-se a uma mudança nas propriedades estatísticas da entrada data, que ocorre frequentemente na produção quando a data encontrada se desvia da data em que os LLMs foram treinados. Isso pode levar à geração de informações imprecisas ou desatualizadas. Por exemplo, com o modelo GPT-3.5, suas informações foram limitadas até setembro de 2021, antes que a data de corte fosse estendida para janeiro de 2022. Consequentemente, não foi possível responder a perguntas sobre eventos mais recentes, o que levou à frustração do usuário.

  • Avaliação do modelo: No aprendizado de máquina tradicional, contamos com métricas como acurácia, precisão e recall para avaliar nossos modelos. No entanto, a avaliação de LLMs é muito mais complexa, especialmente na ausência de dados verdadeiros data e ao lidar com resultados de linguagem natural em vez de valores numéricos.

  • Monitoramento: O monitoramento contínuo dos LLMs e dos aplicativos baseados em LLMs é crucial. Também é mais complicado porque envolve vários aspectos que precisam ser considerados para garantir a eficácia e a confiabilidade gerais desses modelos de linguagem. Discutiremos esses aspectos em mais detalhes na próxima seção.

Como o LLMOps aborda esses desafios

O LLMOps se baseia nos fundamentos do MLOps e introduz componentes especializados adaptados aos LLMs:

  • Engenharia de prompts e gerenciamento de ajustes finos: O LLMOps fornece ferramentas como sistemas de controle de versão de prompts para rastrear e gerenciar diferentes versões de prompts. Ele também se integra a estruturas de ajuste fino para automatizar e otimizar o processo de ajuste fino. Um exemplo importante dessas ferramentas é o LangSmith, uma estrutura projetada especificamente para gerenciar fluxos de trabalho de LLM. Seus recursos abrangentes incluem o versionamento imediato, permitindo a experimentação controlada e a reprodutibilidade. Além disso, o LangSmith facilita o ajuste fino dos LLMs usando execuçõesdata após eventual filtragem e enriquecimento para aprimorar o desempenho do modelo.

  • Gerenciamento de mudanças na API: O LLMOps estabelece processos para monitorar as alterações na API, alertando os operadores sobre possíveis interrupções e permitindo reversões, se necessário.

  • Adaptação do modelo às mudanças data: o LLMOps facilita a adaptação dos LLMs às paisagens em evolução data , garantindo que os modelos permaneçam relevantes e eficientes à medida que os padrões data mudam. Isso pode ser feito por meio do monitoramento das data distribuições e do acionamento de processos de adaptação quando forem detectadas mudanças significativas. Esses processos podem incluir:
    -> Retreinamento ou ajuste fino: Dependendo da extensão do desvio de data e dos recursos disponíveis, o retreinamento ou o ajuste fino podem ser empregados para atenuar seu impacto.
    -> Adaptação do domínio: Ajuste fino do LLM em um conjunto de dados do domínio de destino.
    -> Destilação do conhecimento: Treinamento de um modelo menor, aproveitando o conhecimento e a experiência de um modelo maior, mais poderoso e atualizado.

  • Avaliação específica para LLMs: O LLMOps emprega novas ferramentas de avaliação adaptadas aos LLMs. Essas ferramentas incluem:
    -> Métricas baseadas em texto, como a perplexidade, uma medida estatística de quão bem o modelo é capaz de prever a próxima palavra em uma sequência. Assim como as métricas BLEU e ROUGE, que comparam o texto gerado por máquina a um ou mais textos de referência gerados por humanos. Elas são comumente usadas para tarefas de tradução e resumo.
    -> Análise de embeddings (representações vetoriais de palavras ou frases), para avaliar a capacidade do modelo de entender palavras específicas do contexto e capturar semelhanças semânticas. As técnicas de visualização e agrupamento também podem nos ajudar na detecção de tendências.
    -> LLMs avaliadores: Usar outros LLMs para avaliar nosso modelo. Por exemplo, isso pode ser feito atribuindo uma pontuação à saída do modelo avaliado com base em métricas predefinidas, como fluência, coerência, relevância e precisão factual.
    -> Integração de feedback humano: O LLMOps incorpora mecanismos para coletar e incorporar o feedback humano no ciclo de vida do ML, melhorando o desempenho do LLM e abordando vieses.
    O TruLens é uma ferramenta que permite a integração dessas avaliações aos aplicativos de LLM por meio de uma abordagem programática conhecida como Funções de Feedback.

  • Monitoramento específico do LLM: O LLMOps integra o monitoramento contínuo para rastrear as métricas de desempenho do LLM, identificar possíveis problemas e detectar desvios ou tendências de conceito. Isso inclui:
    -> Monitoramento funcional; rastreando o número de solicitações, o tempo de resposta, o uso de tokens, as taxas de erro e o custo.
    -> Monitoramento de prompts, para garantir a legibilidade e detectar toxicidade e outras formas de abuso. O W&B Prompts é um conjunto de ferramentas projetado para monitorar aplicativos baseados em LLM. Ele pode ser usado para analisar as entradas e saídas de seus LLMs, visualizar os resultados intermediários e armazenar e gerenciar com segurança seus prompts.
    -> Monitoramento de respostas; para garantir a relevância e a consistência do modelo. Isso inclui evitar a geração de conteúdo alucinatório ou fictício, bem como garantir a exclusão de material prejudicial ou inadequado. A transparência pode nos ajudar a entender melhor a resposta do modelo. Ela pode ser estabelecida revelando as fontes de resposta (no RAG) ou solicitando que o modelo justifique seu raciocínio (cadeia de pensamento).

Esse monitoramento data pode ser utilizado para aumentar a eficiência operacional. Podemos melhorar o gerenciamento de custos implementando alertas sobre o uso de tokens e empregando estratégias como o armazenamento em cache de respostas anteriores. Isso nos permite reutilizá-las para consultas semelhantes sem invocar o LLM novamente. Além disso, podemos minimizar a latência optando por modelos menores sempre que possível e restringindo o número de tokens gerados.

Conclusão

Neste artigo, exploramos o surgimento do LLMOps, um descendente do DevOps e do MLOps, projetado especificamente para lidar com os desafios operacionais apresentados por grandes modelos de linguagem. Vamos concluir com uma comparação visual dessas três metodologias, ilustrando seu escopo no contexto das empresas usuárias de LLM, que aproveitam esses modelos para criar produtos e resolver problemas de negócios.

class="img-responsive

Embora as três metodologias compartilhem práticas comuns, como CI/CD, controle de versão e avaliação, cada uma delas tem áreas de foco distintas. O DevOps abrange todo o ciclo de vida do desenvolvimento de software, desde o desenvolvimento até a implantação e a manutenção. O MLOps amplia o DevOps para abordar os desafios específicos dos modelos de aprendizado de máquina, incluindo a automatização do treinamento, da implantação e do monitoramento do modelo. O LLMOps, a mais recente iteração dessas metodologias, concentra-se especificamente nos LLMs. Embora as empresas usuárias de LLM não precisem desenvolver seus próprios modelos, elas ainda enfrentam desafios operacionais, incluindo o gerenciamento de alterações de API e a personalização de modelos por meio de técnicas como engenharia imediata e ajuste fino.

class="img-responsive

Blog do Medium por Artefact.

Este artigo foi publicado inicialmente no Medium.com.
Siga-nos em nosso blog no Medium!