O que é o Llama 2?
Use o Llama 2 com watsonx.ai Inscreva-se para receber atualizações de IA
Ilustração com colagem de pictogramas de nuvens, gráfico de pizza, pictogramas de gráficos

Publicado: 19 de dezembro de 2023
Colaboradores: Dave Bergmann

O que é o Llama 2?

O Llama 2 é uma família de modelos de linguagem grande (LLMs) pré-treinados e aperfeiçoados lançados pela Meta AI em 2023. Disponibilizados gratuitamente para pesquisa e uso comercial, os modelos de IA do Llama 2 são capazes de realizar diversas tarefas de processamento de linguagem natural (NLP), desde a geração de texto até código de programação.

A família de modelos Llama 2, oferecida como modelos de base e modelos de "bate-papo" aperfeiçoados, serve como sucessora dos modelos originais LLaMa 1, que foram lançados em 2022 sob uma licença não comercial que concede acesso caso a caso exclusivamente a instituições de pesquisa. Ao contrário de seus antecessores, os modelos Llama 2 estão disponíveis gratuitamente para pesquisa de IA e uso comercial.

Assim, os modelos Llama da Meta pretendem desempenhar um papel importante na democratização do ecossistema de IA generativa. Conforme observado no artigo de pesquisa do Llama 2 (link externo ao site ibm.com), embora a metodologia de pré-treinamento de LLMs autorregressivos por meio de aprendizado autossupervisionado seja, por enquanto, relativamente simples e bem compreendida, os imensos requisitos computacionais que o processo implica limitaram amplamente o desenvolvimento de LLMs de ponta a alguns participantes importantes. Como a maioria dos LLMs de última geração, como o GPT da OpenAI, o Claude da Anthropic e o BARD da Google são modelos próprios (e enormes) de código fechado, o acesso público à pesquisa de IA que poderia ajudar a entender como e por que esses modelos funcionam – e como alinhar melhor seu desenvolvimento aos interesses humanos – tem sido consideravelmente restrito.

Além de disponibilizar gratuitamente seu código e pesos do modelo, o projeto Llama se concentrou em aprimorar os recursos de desempenho de modelos menores, em vez de aumentar o número de parâmetros. Considerando que os modelos de código fechado mais importantes têm centenas de bilhões de parâmetros, os modelos Llama 2 são oferecidos com sete bilhões (7B), 13 bilhões (13B) ou 70 bilhões de parâmetros (70B).

Isso permite que organizações menores, como startups e membros da comunidade de pesquisa, implementem instâncias locais dos modelos Llama 2 ou modelos baseados no Llama desenvolvidos pela comunidade de IA, sem a necessidade de investimentos em tempo de computação ou infraestrutura proibitivamente caros.

Saiba mais: A IBM disponibilizará o Llama 2 na sua plataforma de dados e IA watsonx
Llama 2 vs. LLaMa 1

O artigo de pesquisa do Llama 2 detalha várias vantagens que a mais nova geração de modelos de IA oferece em relação aos modelos LLaMa originais.

  • Maior comprimento de contexto: os modelos Llama 2 oferecem um comprimento de contexto de 4.096 tokens, que é o dobro do LLaMa 1. O comprimento do contexto (ou janela de contexto) refere-se ao número máximo de tokens que o modelo consegue "lembrar" durante a inferência (ou seja, a geração de texto ou conversa em andamento). Isso permite maior complexidade e uma troca mais coerente e fluente da linguagem natural.
  • Maior acessibilidade: enquanto o LLaMa 1 foi lançado exclusivamente para uso em pesquisa, o Llama 2 está disponível para qualquer organização (com menos de 700 milhões de usuários ativos).
  • Treinamento mais robusto: o Llama 2 foi pré-treinado com 40% a mais de dados, aumentando sua base de conhecimento e compreensão contextual. Além disso, ao contrário do LLaMa 1, os modelos de chat do Llama 2 foram aperfeiçoados com o uso de aprendizado por reforço com feedback humano (RLHF), ajudando a alinhar melhor as respostas do modelo às expectativas humanas.
O armazenamento de dados para IA

Descubra o poder de integrar uma estratégia de data lakehouse na sua arquitetura de dados, incluindo aprimoramentos para escalar oportunidades de IA e otimização de custos.

Conteúdo relacionado

Cadastre-se para obter o relatório da IDC

O Llama 2 é de código aberto?

Embora a Meta tenha disponibilizado gratuitamente o código inicial e os pesos do modelo Llama 2 para pesquisa e uso comercial, certas restrições no seu contrato de licenciamento causaram debate sobre se ele pode ser chamado de "código aberto".

O debate é um tanto técnico e semântico: embora "código aberto" seja frequentemente usado coloquialmente para se referir a qualquer software (ou outras ferramentas de programação) cujo código-fonte seja distribuído gratuitamente, na verdade é uma designação formal administrada pela Open Source Initiative (OSI). A OSI só certifica uma determinada licença de software como "aprovada pela Open Source Initiative" se considerar que essa licença atende aos dez requisitos listados na Definição oficial de Código Aberto (OSD) (link externo ao site ibm.com).

Conforme explicado em uma declaração do diretor executivo da OSI, Stefano Maffulli, "A OSI está satisfeita em ver que a Meta está diminuindo as barreiras de acesso a sistemas poderosos de IA. Infelizmente, a gigante da tecnologia criou o mal-entendido de que o LLaMa 2 é de "código aberto" – mas não é." 1

A discrepância decorre de dois aspectos do contrato de licença do Llama 2:

  • Qualquer organização com mais de 700 milhões de usuários ativos mensais deve solicitar uma licença da Meta (a ser concedida a critério exclusivo da Meta). 2
  • A "Política de Uso Aceitável" proíbe o uso dos modelos para violência, atividade criminosa e personificação de seres humanos, entre outras restrições legais e morais.

Essas restrições contradizem dois pontos da OSD:

  • Ponto 5: "A licença não deve discriminar qualquer pessoa ou grupo de pessoas." 3
  • Ponto 6: "A licença não deve impedir que ninguém use o programa em um campo específico de atuação." 3

Para reconhecer o espírito aberto do Llama 2 e sua falha em atender à definição técnica de "código aberto", alguns membros da comunidade de tecnologia usaram o termo "abordagem aberta". 4

Como funciona o Llama 2?

Os modelos de base Llama 2 são modelos de base pré-treinados que devem ser ajustados para casos de uso específicos, enquanto os modelos de chat Llama 2 já estão otimizados para diálogo.

Modelos de base Llama 2

Llama 2 é uma família de modelos de linguagem causal autorregressiva baseados em transformadores. Modelos de linguagem autorregressivos recebem uma sequência de palavras como input e preveem recursivamente a produção.

Durante o pré-treino auto-supervisionado, as LLMs recebem o início de frases de amostra extraídas de um corpus gigante de dados não rotulado e têm a tarefa de prever a próxima palavra. Ao treinar o modelo para minimizar a divergência entre a verdade real (a próxima palavra real) e suas próprias previsões, o modelo aprende a replicar padrões linguísticos e lógicos nos dados de treinamento. Embora o artigo de pesquisa omita detalhes sobre fontes de dados específicas, ele afirma que o Llama 2 foi treinado com 2 trilhões de tokens– as palavras numericamente representadas, partes de palavras, frases e outros fragmentos semânticos que as redes neurais baseadas em transformadores usam para processamento de linguagem–de fontes publicamente disponíveis.

Em um nível fundamental, os modelos de base não são pré-treinados para realmente responder a um prompt: eles acrescentam texto ao prompt de uma forma gramaticalmente coerente. Um modelo de base pronto para uso pode responder a uma solicitação de "me ensine a fazer biscoitos" com "para uma festa de fim de ano". É necessário um ajuste adicional, por meio de técnicas como aprendizado supervisionado e aprendizado por reforço, para treinar um modelo de base para uma aplicação específica, como diálogo, acompanhamento de instruções ou escrita criativa.

Em vez disso, os modelos de base Llama 2 servem como base para a criação de um modelo com finalidade específica. Até o momento, os modelos Llama 2 (e o LLaMa original) serviram como base para vários LLMs de código aberto importantes, incluindo:

  • Alpaca: uma versão do LLaMa de 7B ajustada para o seguimento de instruções por parte dos pesquisadores da Universidade de Stanford. Particularmente, ele alcançou resultados competitivos com o GPT-3.5, apesar de custar apenas US$ 600 em recursos de computação.5
  • Vicuna: um modelo de assistente de chat da LMSYS Org, treinado pelo ajuste fino do Llama 2 13B em conversas de usuários do ShareGPT (link fora de ibm.com). Ele superou o Alpaca em mais de 90% dos casos com um custo de treinamento de apenas USD 300.6
  • Orca: uma versão aperfeiçoada do Llama 2, treinada pela Microsoft usando um esquema de "professor-alunos", no qual um LLM maior e mais poderoso é usado para gerar exemplos de comportamento de raciocínio útil para o modelo menor seguir.7
  • WizardLM: aprimorado usando o Evol-Instruct, um método para criar grandes quantidades de dados de instrução sintética usando LLMs, o WizardLM alcançou mais de 90% do desempenho do ChatGPT em 17 das 29 habilidades avaliadas.8
Modelos de chat Llama 2

Os modelos Llama-2-chat são ajustados para casos de uso orientados por diálogos, semelhantes às versões específicas do modelo GPT usadas no ChatGPT.

O ajuste fino supervisionado (SFT) foi usado para preparar o modelo básico pré-treinado da Llama 2 para gerar respostas no formato esperado pelos usuários em um ambiente de chatbot ou agente virtual. Em uma série de tarefas de aprendizado supervisionado, pares rotulados de trocas de diálogos, anotados como (prompt, resposta), são usados para treinar o modelo para minimizar a divergência entre sua própria resposta para um determinado prompt e o exemplo de resposta fornecido pelos dados rotulados. Assim, o modelo aprende, por exemplo, que a resposta adequada a uma solicitação do tipo "me ensine a fazer biscoitos" é fornecer instruções reais para fazer biscoitos, em vez de simplesmente completar a frase.

Em vez de usar milhões de exemplos rotulados, o artigo afirma que os resultados foram aprimorados usando "menos exemplos, mas de maior qualidade", observando que a Meta AI coletou 27.540 amostras anotadas.

Após o SFT, a Meta usou o aprendizado por reforço com feedback humano (RLHF) para alinhar ainda mais o comportamento dos modelos de chat com as preferências e instruções humanas. No RLHF, o feedback humano direto é usado para treinar um "modelo de recompensa" para aprender os padrões do tipo de resposta que os humanos preferem. Ao traduzir as previsões do modelo de recompensa (em relação a se uma determinada resposta seria preferida pelos humanos) para um sinal de recompensa escalar, o modelo de recompensa é usado para treinar ainda mais o Llama-2-chat por meio do aprendizado por reforço.

Existem muitos métodos e formatos diferentes nos quais esse feedback humano pode ser coletado. A Meta AI usou um método simples de comparação binária: os anotadores humanos foram solicitados a escrever um prompt e, em seguida, escolher entre duas respostas de modelo – com base nos critérios fornecidos pela Meta – geradas por duas variantes diferentes do Llama 2. Para ajudar o modelo de recompensa a ponderar adequadamente essas escolhas, os anotadores também foram solicitados a classificar o grau em que preferiam a resposta escolhida em relação à outra: "significativamente melhor", "ligeiramente melhor" ou "insignificantemente melhor/incerto.

As preferências humanas foram usadas para treinar dois modelos de recompensa separados: um otimizado para a utilidade, o outro otimizado para a segurança (ou seja, evitar respostas tóxicas e de ódio ou que possam ser usadas para ajudar na violência ou em atividades criminosas). Além da otimização da política proximal (PPO), o algoritmo normalmente usado para atualizar os pesos do modelo de LLM no RLHF, a Meta também usou a amostragem de rejeição (link externo ao site ibm.com) para atualizar o Llama-2-chat-70B.

Código Llama

O Code Llama, desenvolvido com base no Llama 2, foi aperfeiçoado para gerar código (e linguagem natural sobre código) a partir de solicitações baseadas em código e em linguagem natural. Apresentado logo após o lançamento dos modelos Llama 2 base e chat, ele é gratuito para pesquisa e uso comercial.

Compatível com as linguagens de programação mais comuns, incluindo Python, C++, Java, PHP e Javascript (entre outras), ele está disponível em modelos de 7B, 13B e 34B parâmetros, e possui um comprimento de contexto de até 100.000 tokens. Duas variações adicionais, Code Llama – Python e Code Llama – Instruct, são ajustadas para Python (e PyTorch) e seguimento de instruções, respectivamente.

Llama 2 vs. modelos de código fechado

Em relação aos concorrentes de código fechado, os modelos Llama 2 se destacam em áreas como segurança e precisão factual. Embora o Llama 2 possa não corresponder a todos os recursos de modelos muito maiores, sua disponibilidade aberta e maior eficiência apresentam vantagens únicas.

Ao comparar o Llama 2 com os principais modelos exclusivos de concorrentes como a OpenAI, Anthropic e Google, é importante considerar a escala. Embora os modelos de código fechado nem sempre divulguem todos os detalhes de sua arquitetura, as informações disponíveis sugerem fortemente que todos eles excedem em muito os 70 bilhões de parâmetros dos maiores modelos do Llama 2:

  • O GPT-3 tem 175 bilhões de parâmetros.
  • Estima-se que o GPT-4 tenha 1 trilhão de parâmetros.9
  • Dizem que o PaLM 2 da Google tem 340 bilhões de parâmetros.10 Seu antecessor, o PaLM, tem 540 bilhões de parâmetros.11
  • A Anthropic não divulgou a contagem dos parâmetros dos modelos Claude, mas um artigo recente sugere a existência de uma versão de 175 bilhões de parâmetros do Claude 2.12


Avaliação humana
De acordo com o artigo de pesquisa do Llama 2, os avaliadores humanos preferiram as respostas do Llama-2-chat de 70B às respostas do GPT-3,5.-turbo-0301, o modelo padrão do ChatGPT: as respostas do Llama 2 apresentaram uma taxa de vitória de 36% e uma taxa de empate de 31,5%. Em relação ao PaLM Bison, o segundo maior modelo do PaLM, o de 70B teve uma taxa de vitória de mais de 50%.


Segurança
Nos testes da Meta, os modelos de 7B, 13B e 70B do Llama 2 tiveram porcentagens de violação de segurança significativamente menores do que o PaLM Bison – 3% e 4%, em comparação com os 27% do PaLM – bem como porcentagens de violação de segurança menores do que os 7% do ChatGPT. Esse é um ponto forte importante para casos de uso corporativos, nos quais a linguagem tóxica, de ódio ou inflamatória dos chatbots pode ter consequências graves.


Privacidade e eficiência
Uma vantagem inerente de modelos menores e abertos em relação aos modelos grandes de código fechado é a liberdade para as empresas executarem instâncias de modelo locais e a eficiência de custo para fazê-lo sem grandes investimentos em infraestrutura ou computação em nuvem. A execução de um modelo local garante que códigos exclusivos, modificações de treinamento e dados exclusivos possam ser usados para ajustar o desempenho do modelo sem serem carregados em um servidor comercial ou possivelmente serem usados em futuros treinamentos de modelos de código fechado. Além disso, tamanhos de modelo menores, como as variantes de 7B e 13B, permitem um desempenho mais suave em ambientes como aplicações móveis, onde a potência de processamento é limitada.

Como usar o Llama 2

O Llama 2 não tem sua própria API dedicada, mas pode ser acessado por meio de vários provedores.

  • O Llama-2-13B-chat e o Llama-2-70B-chat estão entre os vários modelos de base disponíveis no watsonx, por meio da parceria da IBM com a Hugging Face.

  • Os pesos do modelo e o código inicial do Llama 2 podem ser baixados diretamente do Github, onde a Meta também fornece instruções, demonstrações e "receitas" para o Llama 2 (link externo ao site ibm.com). Os modelos podem ser implementados em estruturas de aprendizado de máquina de código aberto, como PyTorch ou LangChain.

  • O Llama 2 também está disponível em provedores de código aberto, como o Hugging Face, e em provedores corporativos, como o Microsoft Azure, o Amazon Sagemaker e o Bedrock, além de uma série de startups baseadas na nuvem.
Soluções relacionadas
IBM watsonx.ai

Treine, valide, ajuste e implemente IA generativa, modelos de base e recursos de aprendizado de máquina com facilidade, além de criar aplicativos de IA em uma fração do tempo com uma fração dos dados.

Explore o watsonx.ai

IBM watsonx Assistant

Ofereça atendimento ao cliente consistente e inteligente em todos os canais e pontos de contato com a ajuda da IA conversacional.

Explore o Assistente da IBM Watsonx

Serviços de consultoria de IA

Reinvente sua forma de trabalhar com a IA: nossa equipe global diversificada de mais de 20 mil especialistas em IA pode ajudar você a projetar e escalar a IA e a automação de forma rápida e confiável em toda a sua empresa, trabalhando com nossa própria tecnologia IBM watsonx e um ecossistema aberto de parceiros para oferecer qualquer modelo de IA, em qualquer nuvem, orientado por ética e confiança.

Explore os serviços de consultoria em IA da IBM
Recursos do Llama 2

Saiba mais sobre o Llama 2 e o tópico mais amplo dos modelos de base.

Modelos de base

Modelos modernos de IA que executam tarefas específicas em um único domínio estão dando lugar a modelos que aprendem de forma mais geral e funcionam em vários domínios e problemas. Saiba como os modelos de base, treinados em grandes conjuntos de dados não identificados e ajustados para uma variedade de aplicações, estão impulsionando essa mudança.

Como a IBM está adaptando a IA generativa para empresas

Saiba como a IBM está desenvolvendo modelos de base generativos que são confiáveis, eficientes em termos de energia e portáteis, permitindo que as empresas migrem as cargas de trabalho de IA sem dificuldades entre nuvens públicas e privadas.

O que é alinhamento de IA?

Explore o processo de codificação de valores e objetivos humanos em grandes modelos de linguagem para torná-los tão úteis, seguros e confiáveis quanto possível. Por meio do alinhamento, as empresas podem adaptar os modelos de IA para seguirem suas regras e políticas de negócio.

Dê o próximo passo

Treine, valide, ajuste e implemente IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de próxima geração para construtores de IA. Crie aplicações de IA em menos tempo com menos dados.

Explore o watsonx.ai Agende uma demonstração em tempo real