banner
Lar / blog / Meta lança Code Llama, um código
blog

Meta lança Code Llama, um código

Aug 18, 2023Aug 18, 2023

Meta, com a intenção de causar impacto em um espaço generativo de IA repleto de concorrência, está em uma espécie de ruptura de código aberto.

Após o lançamento de modelos de IA para geração de texto, tradução de idiomas e criação de áudio, a empresa abriu hoje o Code Llama, um sistema de aprendizado de máquina que pode gerar e explicar código em linguagem natural – especificamente em inglês.

Semelhante ao GitHub Copilot e Amazon CodeWhisperer, bem como geradores de código de código aberto alimentados por IA, como StarCoder, StableCode e PolyCoder, Code Llama pode completar código e depurar código existente em uma variedade de linguagens de programação, incluindo Python, C++, Java, PHP, Texto datilografado, C# e Bash.

“Na Meta, acreditamos que os modelos de IA, mas em particular os grandes modelos de linguagem para codificação, se beneficiam mais de uma abordagem aberta, tanto em termos de inovação quanto de segurança”, escreveu Meta em uma postagem de blog compartilhada com o TechCrunch. “Modelos específicos de código disponíveis publicamente podem facilitar o desenvolvimento de novas tecnologias que melhorem a vida das pessoas. Ao lançar modelos de código como o Code Llama, toda a comunidade pode avaliar suas capacidades, identificar problemas e corrigir vulnerabilidades.”

Code Llama, que está disponível em vários sabores, incluindo uma versão otimizada para Python e uma versão ajustada para entender instruções (por exemplo, “Escreva-me uma função que produza a sequência de Fibonacci”), é baseado no modelo de geração de texto Llama 2 aquele Meta foi aberto no início deste mês. Embora o Llama 2 pudesse gerar código, não era necessariamente um código bom – certamente não tinha a qualidade que um modelo construído especificamente como o Copilot poderia produzir.

No treinamento do Code Llama, Meta usou o mesmo conjunto de dados usado para treinar o Llama 2 – uma mistura de fontes disponíveis publicamente em toda a web. Mas fez com que o modelo “enfatizasse”, por assim dizer, o subconjunto dos dados de treinamento que incluía o código. Essencialmente, o Code Llama teve mais tempo para aprender as relações entre código e linguagem natural do que o Llama 2 – seu modelo “pai”.

Cada um dos modelos Code Llama, variando em tamanho de 7 bilhões a 34 bilhões de parâmetros, foi treinado com 500 bilhões de tokens de código junto com dados relacionados ao código. O Code Llama específico do Python foi aprimorado em 100 bilhões de tokens de código Python e, da mesma forma, o Code Llama de compreensão de instruções foi ajustado usando feedback de anotadores humanos para gerar respostas “úteis” e “seguras” às perguntas .

Para fins de contexto, os parâmetros são as partes de um modelo aprendidas a partir de dados históricos de treinamento e definem essencialmente a habilidade do modelo em um problema, como gerar texto (ou código, neste caso), enquanto os tokens representam texto bruto (por exemplo, “fan, ”“tas” e “tic” para a palavra “fantástico”).

Vários modelos do Code Llama podem inserir código em código existente e todos podem aceitar cerca de 100.000 tokens de código como entrada, enquanto pelo menos um – o modelo de 7 bilhões de parâmetros – pode ser executado em uma única GPU. (Os outros exigem hardware mais poderoso.) Meta afirma que o modelo de 34 bilhões de parâmetros é o de melhor desempenho de qualquer gerador de código aberto até o momento – e o maior em contagem de parâmetros.

Você pensaria que uma ferramenta de geração de código seria extremamente atraente para programadores e até mesmo não programadores – e você não estaria errado.

O GitHub afirma que mais de 400 organizações estão usando o Copilot hoje e que os desenvolvedores dessas organizações estão codificando 55% mais rápido do que antes. Em outro lugar, Stack Overflow, site de perguntas e respostas sobre programação, descobriu em uma pesquisa recente que 70% já estão usando – ou planejam usar – ferramentas de codificação de IA este ano, citando benefícios como aumento de produtividade e aprendizado mais rápido.

Mas, como todas as formas de IA generativa, as ferramentas de codificação podem sair dos trilhos — ou apresentar novos riscos.

Uma equipe de pesquisa afiliada a Stanford descobriu que os engenheiros que usam ferramentas de IA têm maior probabilidade de causar vulnerabilidades de segurança em seus aplicativos. As ferramentas, mostrou a equipe, geralmente geram código que parece superficialmente correto, mas que apresenta problemas de segurança ao invocar software comprometido e usar configurações inseguras.