Estamos animados com o impacto que o grupo de modelos Llama 3.1 causou nos dois meses desde que os anunciamos, incluindo o 405B, o primeiro modelo de IA de código aberto de nível de fronteira. Embora esses modelos sejam incrivelmente poderosos, reconhecemos que construir com eles requer recursos de computação e experiência significativos. Também ouvimos desenvolvedores que não têm acesso a esses recursos e ainda querem a oportunidade de construir com o Llama. Como Mark Zuckerberg compartilhou hoje no Connect, eles não terão que esperar mais. Hoje, estamos lançando o Llama 3.2, que inclui LLMs de visão de pequeno e médio porte (11B e 90B) e modelos leves somente de texto (1B e 3B), que se encaixam em dispositivos móveis e de ponta selecionados.
Faz apenas um ano e meio desde que anunciamos o Llama pela primeira vez, e fizemos um progresso incrível em tão pouco tempo. Este ano, o Llama alcançou um crescimento de 10x e se tornou o padrão para inovação responsável. O Llama também continua a liderar em abertura, modificabilidade e eficiência de custos, sendo competitivo com modelos fechados — até mesmo liderando em algumas áreas. Acreditamos que a abertura impulsiona a inovação e é o caminho certo a seguir, e é por isso que continuamos a compartilhar nossa pesquisa e a colaborar com nossos parceiros e a comunidade de desenvolvedores.
Estamos disponibilizando modelos Llama 3.2 para download em llama.com e Hugging Face, e também estão disponíveis para desenvolvimento imediato em nosso amplo ecossistema de plataformas de parceiros. Os parceiros são uma parte importante deste trabalho, e trabalhamos com mais de 25 empresas, incluindo AMD, AWS, Databricks, Dell, Google Cloud, Groq, IBM, Intel, Microsoft Azure, NVIDIA NIM, Oracle Cloud e Snowflake, para habilitar serviços desde o início. Para o lançamento do Llama 3.2, também estamos trabalhando com os parceiros on-device Arm, MediaTek e Qualcomm para oferecer uma ampla gama de serviços no lançamento. A partir de hoje, também estamos disponibilizando o Llama Stack para a comunidade. Mais detalhes sobre o lançamento mais recente, incluindo informações sobre a disponibilidade multimodal na Europa, podem ser encontrados em nossa política de uso aceitável.
Conheça o Llama 3.2
Os dois maiores modelos da coleção Llama 3.2, 11B e 90B, oferecem suporte a casos de uso de raciocínio de imagem, como compreensão em nível de documento, incluindo tabelas e gráficos, legendas de imagens e tarefas de aterramento visual, como apontar objetos direcionalmente em imagens com base em descrições de linguagem natural. Por exemplo, uma pessoa pode fazer uma pergunta sobre qual mês do ano anterior sua pequena empresa teve as melhores vendas, e o Llama 3.2 pode então raciocinar com base em um gráfico disponível e fornecer a resposta rapidamente. Em outro exemplo, o modelo pode raciocinar com um mapa e ajudar a responder perguntas como quando uma caminhada pode se tornar mais íngreme ou a distância de uma trilha específica marcada no mapa. Os modelos 11B e 90B também podem preencher a lacuna entre visão e linguagem extraindo detalhes de uma imagem, entendendo a cena e, em seguida, elaborando uma ou duas frases que podem ser usadas como legenda de imagem para ajudar a contar a história.
Os modelos leves 1B e 3B são altamente capazes com geração de texto multilíngue e habilidades de chamada de ferramentas. Esses modelos capacitam os desenvolvedores a criar aplicativos agentes on-device personalizados com forte privacidade, onde os dados nunca saem do dispositivo. Por exemplo, esses aplicativos podem ajudar a resumir as últimas 10 mensagens recebidas, extrair itens de ação e aproveitar a chamada de ferramentas para enviar diretamente convites de calendário para acompanhamento.
Executar esses modelos localmente traz duas grandes vantagens. Primeiro, os prompts e respostas podem parecer instantâneos, uma vez que o processamento é feito localmente. Segundo, executar modelos localmente preserva a privacidade ao não enviar dados, como mensagens e informações de calendário, para a nuvem, tornando o aplicativo mais privado em geral. Como o processamento é feito localmente, o aplicativo pode controlar claramente quais consultas permanecem no dispositivo e quais podem precisar ser processadas por um modelo maior na nuvem.
Avaliações de modelos
Nossa avaliação sugere que os modelos de visão Llama 3.2 são competitivos com os principais modelos de base, como Claude 3 Haiku e GPT4o-mini, em reconhecimento de imagem e uma variedade de tarefas de compreensão visual. O modelo 3B supera os modelos Gemma 2 2.6B e Phi 3.5-mini em tarefas como seguir instruções, resumir, reescrever prompts e uso de ferramentas, enquanto o 1B é competitivo com o Gemma nessas tarefas.
Avaliamos o desempenho em mais de 150 conjuntos de dados de referência que abrangem uma ampla variedade de idiomas. Para os LLMs de visão, avaliamos o desempenho em benchmarks de compreensão de imagem e raciocínio visual. Além disso, realizamos extensivas avaliações humanas que comparam o Llama 3.2 com modelos concorrentes em cenários do mundo real.
Modelos de visão
Como os primeiros modelos Llama a oferecer suporte a tarefas de visão, os modelos 11B e 90B exigiram uma arquitetura de modelo totalmente nova, que possibilita o raciocínio de imagem.
Para adicionar suporte à entrada de imagem, treinamos um conjunto de pesos de adaptador que integram o codificador de imagem pré-treinado ao modelo de linguagem pré-treinado. O adaptador consiste em uma série de camadas de atenção cruzada que alimentam as representações do codificador de imagem no modelo de linguagem. Treinamos o adaptador em pares de texto-imagem para alinhar as representações de imagem com as representações de linguagem. Durante o treinamento do adaptador, também atualizamos os parâmetros do codificador de imagem, mas intencionalmente não atualizamos os parâmetros do modelo de linguagem. Ao fazer isso, mantemos todos os recursos somente de texto intactos, oferecendo aos desenvolvedores uma substituição imediata para os modelos Llama 3.1.
Nosso pipeline de treinamento consiste em vários estágios, começando com modelos de texto Llama 3.1 pré-treinados. Primeiro, adicionamos adaptadores e codificadores de imagem; depois, pré-treinamos em dados de pares (imagem, texto) ruidosos de grande escala. Em seguida, treinamos em dados de pares (imagem, texto) de alta qualidade e aprimorados por conhecimento, de escala média.
No pós-treinamento, usamos uma abordagem semelhante à dos modelos de texto, realizando várias rodadas de alinhamento em ajuste fino supervisionado, amostragem de rejeição e otimização de preferência direta. Aproveitamos a geração de dados sintéticos utilizando o modelo Llama 3.1 para filtrar e aumentar perguntas e respostas sobre imagens do domínio e usamos um modelo de recompensa para classificar todas as respostas candidatas, a fim de fornecer dados de ajuste fino de alta qualidade. Também adicionamos dados de mitigação de segurança para produzir um modelo com alto nível de segurança, mantendo a utilidade do modo.
O resultado final é um conjunto de modelos que podem receber prompts de imagem e texto e entender e raciocinar profundamente sobre a combinação. Este é mais um passo em direção aos modelos Llama com capacidades de agente ainda mais ricas.
Modelos leves
Como dissemos sobre o Llama 3.1, modelos professores poderosos podem ser utilizados para criar modelos menores com desempenho aprimorado. Usamos dois métodos — poda e destilação — nos modelos 1B e 3B, tornando-os os primeiros modelos Llama leves e altamente capazes que podem ser implantados de forma eficiente em dispositivos.
A poda nos permitiu reduzir o tamanho dos modelos existentes no grupo Llama enquanto recuperávamos o máximo de conhecimento e desempenho possível. Para os modelos 1B e 3B, adotamos a abordagem de usar uma poda estruturada de forma única do Llama 3.2 8B. Isso envolveu remover sistematicamente partes da rede e ajustar a magnitude dos pesos e gradientes, para criar um modelo menor e mais eficiente que retenha o desempenho da rede original.
A destilação de conhecimento usa uma rede maior para transmitir conhecimento em uma rede menor, com a ideia de que um modelo menor pode atingir melhor desempenho usando um professor do que se o fizesse do zero. Para o 1B e 3B no Llama 3.2, incorporamos os logits dos modelos 8B e 70B do Llama 3.1 no estágio de pré-treinamento do desenvolvimento do modelo, onde as saídas (logits) desses modelos maiores foram usadas como alvos de nível de token. A destilação de conhecimento foi usada após a poda, para recuperar o desempenho.
No pós-treinamento, usamos uma receita semelhante à do Llama 3.1 e produzimos modelos de bate-papo finais, fazendo várias rodadas de alinhamento sobre o modelo pré-treinado. Cada rodada envolve ajuste fino supervisionado (SFT), amostragem de rejeição (RS) e otimização de preferência direta (DPO).
Ampliamos o suporte ao comprimento do contexto para 128 mil tokens, mantendo a mesma qualidade do modelo pré-treinado. Também nos dedicamos à geração de dados sintéticos, que passam por um rigoroso processamento e filtragem para garantir alta qualidade. Misturamos cuidadosamente os dados para otimizar a qualidade em várias capacidades, como resumo, reescrita, acompanhamento de instruções, raciocínio linguístico e uso de ferramentas.
Para permitir que a comunidade inovasse nesses modelos, trabalhamos em estreita colaboração com a Qualcomm e a Mediatek, as duas maiores empresas de sistemas móveis em um chip (SoC) do mundo, e a ARM, que fornece o IP de computação principal para 99% dos dispositivos móveis. Os pesos divulgados hoje são baseados em números BFloat16. Nossas equipes estão explorando ativamente variantes quantizadas, que serão executadas ainda mais rápido, e esperamos compartilhar mais sobre isso em breve.
- Essa demonstração é baseada em um modelo quantizado não lançado.
- Essa demonstração é baseada em um modelo quantizado não lançado.
Distribuições do Llama Stack
Em julho, lançamos uma solicitação de comentários sobre a API do Llama Stack, uma interface padronizada para componentes de cadeia de ferramentas canônicos (ajuste fino, geração de dados sintéticos) que permite personalizar os modelos Llama e construir aplicativos agentes. O engajamento tem sido ótimo.
Desde então, temos trabalhado arduamente para tornar a API real. Construímos uma implementação de referência das APIs para inferência, uso de ferramentas e RAG. Além disso, temos trabalhado com parceiros para adaptá-los para se tornarem provedores das APIs. Por fim, introduzimos a Llama Stack Distribution como uma forma de empacotar vários provedores de API que funcionam bem juntos para fornecer um único endpoint para desenvolvedores. Agora estamos compartilhando com a comunidade uma experiência consistente realmente simplificada para trabalhar com modelos Llama em vários ambientes – localmente, na nuvem, em um single-node e on-device.
O conjunto completo de lançamentos inclui:
- Llama CLI (interface de linha de comando) para criar, configurar e executar distribuições Llama Stack
- Código do cliente em várias linguagens – python, node, kotlin, swift
- Contêineres Docker para Llama Stack Distribution Server e Agents API Provider
- Várias distribuições
- Distribuição Llama Stack de single-node via implementação interna Meta e Ollama
- Distribuições Llama Stack em nuvem via AWS, Databricks, Fireworks e Together
- Distribuição Llama Stack no dispositivo no iOS implementada via PyTorch ExecuTorch
- Distribuição Llama Stack localmente com suporte da Dell
Estamos ansiosos para trabalhar com desenvolvedores e parceiros para simplificar todos os aspectos da construção com modelos Llama e agradecemos o feedback.
Segurança a nível de sistema
Adotar uma abordagem aberta tem muitos benefícios. Isso ajuda a garantir que mais pessoas ao redor do mundo possam acessar as oportunidades que a IA oferece, protege contra a concentração de poder nas mãos de poucos e implanta a tecnologia de maneira mais equitativa e segura em toda a sociedade. À medida que continuamos a inovar, também queremos garantir que estamos capacitando os desenvolvedores a construir sistemas seguros e responsáveis.
Com base em nosso lançamento anterior e no esforço contínuo para apoiar a inovação responsável, hoje estamos adicionando novas atualizações à nossa família de proteções:
- Primeiro, estamos lançando o Llama Guard 3 11B Vision, projetado para dar suporte à nova capacidade de compreensão de imagem do Llama 3.2 e filtrar prompts de entrada de texto+imagem ou respostas de saída de texto a esses prompts.
- Segundo, ao lançarmos os modelos Llama 1B e 3B para serem usados em ambientes mais restritos, como em dispositivos, também otimizamos o Llama Guard para reduzir drasticamente seu custo de implantação. O Llama Guard 3 1B é baseado no modelo Llama 3.2 1B e foi podado e quantizado, reduzindo seu tamanho de 2.858 MB para 438 MB, tornando-o mais eficiente do que nunca para a implantação.
Essas novas soluções são integradas em nossas implementações de referência, demonstrações e aplicativos e estão prontas para a comunidade de código aberto usar desde o lançamento.
Experimente o Llama 3.2 hoje mesmo
O Llama 3.2 está pronto para alcançar mais pessoas do que nunca e permitir novos casos de uso interessantes. Acreditamos que compartilhar esses modelos com a comunidade de código aberto não é suficiente. Queremos garantir que os desenvolvedores também tenham as ferramentas necessárias para construir com o Llama de forma responsável. Como parte de nossos esforços contínuos de lançamento responsável, estamos oferecendo aos desenvolvedores novas ferramentas e recursos e, como sempre, atualizaremos as melhores práticas em nosso Guia de Uso Responsável.
Continuamos compartilhando os últimos avanços no ecossistema Llama porque acreditamos que a abertura impulsiona a inovação e é boa para os desenvolvedores, para a Meta e para o mundo. Estamos animados para continuar as conversas que estamos tendo com nossos parceiros e a comunidade de código aberto e, como sempre, mal podemos esperar para ver o que a comunidade construirá usando o Llama 3.2 e o Llama Stack.
Este trabalho foi apoiado por nossos parceiros em toda a comunidade de IA. Gostaríamos de agradecer e reconhecer (em ordem alfabética): Accenture, AMD, Arm, AWS, Cloudflare, Databricks, Dell, Deloitte, Fireworks.ai, Google Cloud, Groq, Hugging Face, IBM watsonx, Infosys, Intel, Kaggle, Lenovo, LMSYS, MediaTek, Microsoft Azure, NVIDIA, OctoAI, Ollama, Oracle Cloud, PwC, Qualcomm, Sarvam AI, Scale AI, Snowflake, Together AI e UC Berkeley – Projeto vLLM.