O que são pequenos modelos de linguagem (SLMs)?
Um pequeno modelo de linguagem, ou Small Language Model (SLM) em inglês, é uma versão reduzida de um large language model (LLM), com foco em conhecimentos específicos, mais fácil de personalizar e mais leve para executar.
Diferente dos LLMs, que têm conhecimento amplo e genérico, os SLMs são treinados com foco em áreas específicas. Por serem menores, os SLMs usam menos recursos computacionais para treinamento e implantação, reduzindo custos de infraestrutura e permitindo ajustes finos mais rápidos. Por serem lightweight, os SLMs são ideais para uso em dispositivos edge e apps mobile.
LLMs e SLMs
LLMs e SLMs são tipos de sistemas de inteligência artificial (IA) treinados para interpretar a linguagem humana, incluindo a linguagem de programação. As principais diferenças entre esses sistemas geralmente estão no tamanho dos conjuntos de dados usados para treiná-los, nos processos aplicados durante o treinamento e no custo-benefício inicial para diferentes casos de uso.
Como seus nomes sugerem, LLMs e SLMs são treinados com conjuntos de dados baseados em linguagem, o que os diferencia dos modelos treinados com imagens (por exemplo, DALL·E) ou vídeos (por exemplo, Sora). Há conjuntos de dados baseados em linguagem que incluem textos de páginas da web, códigos de programação, e-mails e manuais.
Uma das aplicações mais conhecidas dos SLMs e LLMs é a IA Generativa (gen AI), que pode oferecer respostas não roteirizadas para uma ampla variedade de consultas imprevisíveis. O modelo de base GPT-4 e o ChatGPT, um chatbot de conversação treinado com grandes conjuntos de dados usando trilhões de parâmetros para responder a uma ampla variedade de perguntas humanas, tornaram os LLMs conhecidos pelo público em geral. Embora a IA Generativa tenha se tornado mais conhecida, também existem aplicações não generativas para os LLMs e SLMs, como a IA Preditiva.
LLMs e SLMs geralmente são treinados em conjuntos de dados diferentes.
O alcance do GPT-4/ChatGPT é um excelente exemplo que demonstra uma diferença comum entre LLMs e SLMs: os conjuntos de dados em que são treinados.
Os LLMs são geralmente feitos para imitar a inteligência humana em um nível mais amplo e, por isso, são treinados com vários tipos de grandes conjuntos de dados. É o caso do GPT-4/ChatGPT que inclui toda a internet pública(!) até uma certa data. Foi assim que o ChatGPT ganhou notoriedade, ao interpretar e responder a uma grande variedade de perguntas de usuários. No entanto, é também por isso que, às vezes, ele chama atenção por respostas incorretas, conhecidas informalmente como "alucinações". Falta a ele ajuste fino e treinamento voltado para áreas específicas, o que permitiria oferecer respostas mais precisas para questões de determinadas indústrias e nichos.
Por outro lado, os SLMs são treinados com conjuntos de dados menores, personalizados para algum setor específico. Por exemplo, uma entidade de saúde poderia usar um chatbot com SLM treinado com conjuntos de dados médicos para incorporar conhecimento específico da área em uma consulta leiga de um usuário sobre sua saúde, enriquecendo a qualidade tanto da pergunta quanto da resposta. Nesse caso, o chatbot baseado em SLM não necessita de treinamento com todo o conteúdo da internet, como blogs, romances ou poemas, pois esses dados não são relevantes para os casos de uso do setor de saúde.
Em resumo, os SLMs geralmente se destacam em domínios específicos, mas têm um desempenho inferior aos LLMs se avaliarmos o conhecimento geral e a compreensão contextual ampla.
Recursos da Red Hat
LLMs e SLMs exigem recursos diferentes
Treinar qualquer modelo para casos de uso empresariais requer muitos recursos, seja ele LLM ou SLM. No entanto, treinar LLMs exige ainda mais. No caso do GPT-4, um total de 25 mil NVIDIA A100 GPUs foram executadas simultaneamente e continuamente por mais de 90 dias. Mais uma vez, o GPT-4 representa o limite superior do espectro dos LLMs. Outros LLMs como o Granite não exigiram tantos recursos. Treinar um SLM ainda requer um grande volume de recursos computacionais, mas muito menor do que exige um LLM.
Requisitos de recursos para treinamento e inferência
Observe também a diferença entre treinamento e inferência de modelos. Como discutido anteriormente, treinamento é a primeira etapa para desenvolver um modelo de IA. Inferência é o processo seguido por um modelo de IA treinado para fazer previsões com novos dados. Por exemplo, quando um usuário faz uma pergunta ao ChatGPT, ele retorna uma previsão ao usuário. Esse processo de gerar uma previsão é uma inferência.
Alguns LLMs pré-treinados, como a família de modelos Granite, podem fazer inferências usando os recursos de uma única estação de trabalho de alta potência (uma V100-32GB GPU2 é capaz de executar um modelo Granite), embora muitos exijam várias unidades de processamento paralelas para gerar dados. Além disso, quanto maior o número de usuários simultâneos acessando o LLM, mais lenta é a execução de inferências. Por outro lado, normalmente, SLMs são criados para fazer inferências com os recursos de um smartphone ou outro dispositivo mobile.
Os benefícios dos SLMs
Não há uma resposta para a pergunta "Qual modelo é melhor?". Isso depende dos planos, recursos, expertise, cronograma e outros fatores da sua organização. Também é importante decidir se seu caso de uso exige treinar um modelo do zero ou fazer ajuste fino em um modelo pré-treinado. Na hora de escolher entre um LLM e um SLM, você deve considerar:
Custo
Em geral, LLMs requerem muito mais recursos para treinar, ajustar e executar inferências. Lembre-se de que treinar é um investimento menos frequente. Os recursos computacionais só são necessários enquanto um modelo está sendo treinado, o que é uma tarefa intermitente e não contínua. No entanto, executar inferências representa um custo contínuo, e a necessidade pode aumentar à medida que o modelo é escalado para cada vez mais usuários. Na maioria dos casos, isso requer recursos de cloud computing em escala, um investimento significativo em recursos on-premise ou ambos.
SLMs costumam ser avaliados para casos de uso de baixa latência, como a edge computing. Isso porque eles geralmente conseguem operar com os recursos disponíveis em um único dispositivo mobile, sem precisar de uma conexão constante e robusta para recursos mais avançados
Expertise
Muitos LLMs pré-treinados populares, como Granite, Llama e GPT-4, oferecem uma opção pronta para uso para começar a usar a IA. Em geral, eles são mais recomendados para organizações que querem começar a experimentar a IA, já que não precisam ser projetados e treinados do zero por cientistas de dados. Por outro lado, geralmente, SLMs exigem expertise em ciência de dados e domínios de conhecimento do setor para realizar o ajuste fino preciso em conjuntos de dados de nicho.
Segurança
Um potencial risco dos LLMs é a exposição de dados confidenciais por meio das interfaces de programação de aplicações (APIs). Especificamente, realizar o ajuste fino em um LLM com dados da sua organização requer atenção especial às políticas de conformidade e da empresa. SLMs podem representar um risco menor de vazamento de dados porque oferecem um nível maior de controle.
As limitações dos SLMs
Com a incorporação dos SLMs nos fluxos de trabalho empresariais, é importante ter em mente os limites dessa tecnologia.
Vieses
Os vieses são inevitáveis, mas como os SLMs são treinados em conjuntos de dados menores, sua mitigação se torna mais viável (comparado aos LLMs). No entanto, assim como acontece com modelos de linguagem de qualquer tamanho, os dados de treinamento podem introduzir vieses, como a sub-representação de certos grupos, deturpação das ideias ou imprecisões nas informações. Os modelos de linguagem também podem herdar vieses relacionados a dialetos, localização geográfica e gramática.
As equipes devem prestar atenção na qualidade dos dados de treinamento para evitar respostas enviesadas.
Conhecimento limitado
Os SLMs trabalham com um conjunto reduzido de informações ao gerar respostas. Essa limitação torna os SLMs ideais para objetivos bem definidos, mas menos adequados para aqueles que exigem um amplo escopo de conhecimento geral.
As equipes podem criar um conjunto de SLMs específicos para serem usados com um LLM (ou LLMs). Essa solução se torna ainda mais interessante se as equipes conseguirem integrar os modelos com aplicações existentes, criando um fluxo de trabalho interconectado, no qual vários modelos de linguagem operam juntos.
Casos de uso de SLM
A capacidade de adaptação dos SLMs permite que eles sejam aplicados em diferentes casos de uso.
Chatbots
Use um SLM para treinar um chatbot com materiais específicos. Por exemplo, um chatbot de atendimento ao cliente pode ser treinado com conhecimentos específicos da empresa, para responder a perguntas e direcionar os usuários às informações corretas.
IA Agente
Integre SLMs a um fluxo de trabalho de IA Agente para que possam executar tarefas pelo usuário.
IA Generativa
Os SLMs são capazes de realizar tarefas como criar textos, traduzir materiais e resumir conteúdos.
Como a Red Hat pode ajudar?
O Red Hat AI oferece recursos de IA generativa e preditiva, com suporte a MLOps, para criação de soluções de IA flexíveis e confiáveis, em escala, em ambientes de nuvem híbrida. Ele ajuda a acelerar a adoção da IA, abstraindo as complexidades da entrega de soluções e trazendo flexibilidade para desenvolver e implantar onde quer que seus dados estejam.
Combinado com a infraestrutura de nuvem híbrida aberta da Red Hat, o Red Hat AI permite que as organizações criem soluções de IA personalizadas, gerenciem ciclos de vida da aplicação e do modelo, se adaptem aos requisitos de aceleração de hardware e implantem, executem e operem cargas de trabalho críticas em uma única plataforma.
Machine learning e IA para iniciantes
Se você está começando a explorar os modelos de ML e IA, experimente o InstructLab, uma solução de treinamento de LLMs voltada para a comunidade. Aqui, você pode experimentar e contribuir diretamente com o desenvolvimento do seu modelo de IA gratuitamente.
Acesse facilmente os modelos da família Granite da IBM
Se quiser ir além, o Red Hat® Enterprise Linux AI® é uma plataforma de modelo de base para desenvolver, testar e executar LLMs da família Granite para aplicações empresariais. Granite é uma família de modelos de IA open source licenciados com suporte completo e garantia de indenização por parte da Red Hat. Sua abordagem open source incentiva a inovação em IA generativa, mantendo a segurança e a confiabilidade.
Escalabilidade para empresas
O Red Hat® OpenShift® AI é uma plataforma que oferece suporte para seus modelos em escala, em ambientes de nuvem híbrida. Você pode treinar, ajustar prompts, fazer ajustes finos e disponibilizar esses modelos de IA para seus casos de uso e com dados específicos.
Juntos, esses serviços oferecem uma solução unificada que permite aos cientistas de dados e desenvolvedores colaborarem para que as equipes consigam colocar os modelos experimentais em produção mais rápido.
Cresça com o apoio de parceiros
Além disso, as integrações de parceiros da Red Hat oferecem acesso a um crescente ecossistema de ferramentas de IA confiáveis, projetadas para serem compatíveis com plataformas open source.
Blog da Red Hat
Tudo relacionado à Red Hat: soluções, treinamentos e certificações Red Hat, casos de sucesso de clientes, novidades dos nossos parceiros e notícias sobre projetos das comunidades open source.