As empresas hoje estão explorando cada vez mais maneiras de aproveitar grandes modelos de linguagem (LLMs) para aumentar a produtividade e criar aplicações inteligentes. No entanto, muitas das opções de LLM disponíveis são modelos genéricos não adaptados para necessidades empresariais especializadas, como análise de dados, codificação e automação de tarefas. Digitar Floco de neve Ártico – um LLM de última geração projetado e otimizado propositalmente para os principais casos de uso corporativo.
Desenvolvido pela equipe de pesquisa de IA da Snowflake, o Arctic amplia os limites do que é possível com treinamento eficiente, economia e um nível de abertura incomparável. Este modelo revolucionário se destaca nos principais benchmarks empresariais, ao mesmo tempo que exige muito menos poder de computação em comparação com os LLMs existentes. Vamos mergulhar no que torna o Arctic um divisor de águas para a IA empresarial.
Inteligência Empresarial Redefinida Em sua essência, o Arctic está focado em fornecer desempenho excepcional em métricas que realmente importam para as empresas – codificação, consulta SQL, acompanhamento de instruções complexas e produção de resultados fundamentados e baseados em fatos. Snowflake combinou esses recursos críticos em um romance “inteligência empresarial” métrica.
Os resultados falam por si. A Arctic atende ou supera modelos como LLAMA 7B e LLAMA 70B em benchmarks de inteligência empresarial, usando menos da metade do orçamento de computação para treinamento. Notavelmente, apesar de utilizar 17 vezes menos recursos computacionais que o LLAMA 70B, o Arctic alcança paridade em testes especializados como codificação (HumanEval+, MBPP+), geração de SQL (Spider) e acompanhamento de instruções (IFEval).
Mas a capacidade da Arctic vai além de apenas atingir benchmarks empresariais. Ele mantém um forte desempenho em compreensão geral de linguagem, raciocínio e aptidão matemática em comparação com modelos treinados com orçamentos de computação exponencialmente mais altos, como DBRX. Esta capacidade holística torna o Arctic uma escolha imbatível para lidar com as diversas necessidades de IA de uma empresa.
A Inovação
Transformador híbrido Dense-MoE Então, como a equipe Snowflake construiu um LLM tão incrivelmente capaz, mas eficiente? A resposta está na arquitetura de transformador híbrido Dense Mixture-of-Experts (MoE) de última geração da Arctic.
Os modelos tradicionais de transformadores densos tornam-se cada vez mais caros para treinar à medida que seu tamanho aumenta, com os requisitos computacionais aumentando linearmente. O design do MoE ajuda a contornar isso, utilizando múltiplas redes feed-forward paralelas (especialistas) e ativando apenas um subconjunto para cada token de entrada.
No entanto, simplesmente usar uma arquitetura MoE não é suficiente – o Arctic combina os pontos fortes dos componentes densos e MoE de forma engenhosa. Ele emparelha um codificador de transformador denso de 10 bilhões de parâmetros com uma camada de perceptron multicamada (MLP) MoE residual de 128 especialistas. Este modelo híbrido denso-MoE totaliza 480 bilhões de parâmetros, mas apenas 17 bilhões estão ativos em um determinado momento usando os 2 principais canais.
As implicações são profundas – o Arctic alcança qualidade e capacidade de modelo sem precedentes, ao mesmo tempo que permanece notavelmente eficiente em termos de computação durante o treinamento e inferência. Por exemplo, o Arctic tem 50% menos parâmetros ativos do que modelos como o DBRX durante a inferência.
Mas a arquitetura modelo é apenas uma parte da história. A excelência do Ártico é o culminar de várias técnicas e insights pioneiros desenvolvidos pela equipe de pesquisa da Snowflake:
- Currículo de dados de treinamento focado na empresa Por meio de extensa experimentação, a equipe descobriu que habilidades genéricas, como raciocínio de bom senso, devem ser aprendidas cedo, enquanto especializações mais complexas, como codificação e SQL, são melhor adquiridas posteriormente no processo de treinamento. O currículo de dados do Arctic segue uma abordagem de três estágios que imita as progressões de aprendizagem humana.
Os primeiros teratokens concentram-se na construção de uma ampla base geral. Os próximos 1.5 teratokens concentram-se no desenvolvimento de habilidades empresariais por meio de dados personalizados para SQL, tarefas de codificação e muito mais. Os teratokens finais refinam ainda mais as especializações do Ártico usando conjuntos de dados refinados.
- Escolhas arquitetônicas ideais Embora os MoEs prometam melhor qualidade por computação, escolher as configurações corretas é crucial, mas pouco compreendido. Por meio de pesquisas detalhadas, a Snowflake chegou a uma arquitetura que emprega 128 especialistas com os 2 primeiros em cada camada após avaliar as compensações entre qualidade e eficiência.
Aumentar o número de especialistas proporciona mais combinações, aumentando a capacidade do modelo. No entanto, isso também aumenta os custos de comunicação, então a Snowflake escolheu 128 especialistas “condensados” cuidadosamente projetados e ativados por meio de gateway top-2 como o equilíbrio ideal.
- Co-design do sistema Mas mesmo uma arquitetura de modelo ideal pode ser prejudicada por gargalos do sistema. Portanto, a equipe da Snowflake também inovou aqui – co-projetando a arquitetura do modelo lado a lado com os sistemas subjacentes de treinamento e inferência.
Para um treinamento eficiente, os componentes denso e MoE foram estruturados para permitir comunicação e computação sobrepostas, ocultando sobrecargas substanciais de comunicação. Do lado da inferência, a equipe aproveitou as inovações da NVIDIA para permitir uma implantação altamente eficiente, apesar da escala do Ártico.
Técnicas como a quantização FP8 permitem ajustar o modelo completo em um único nó GPU para inferência interativa. Lotes maiores utilizam os recursos de paralelismo do Arctic em vários nós, ao mesmo tempo em que permanecem com eficiência computacional impressionante graças aos seus parâmetros ativos compactos de 17B.
Com uma licença Apache 2.0, os pesos e códigos do Arctic estão disponíveis sem restrições para qualquer uso pessoal, de pesquisa ou comercial. Mas a Snowflake foi muito mais longe, abrindo o código-fonte de suas receitas completas de dados, implementações de modelos, dicas e insights de pesquisa aprofundados que alimentam o Ártico.
A "Livro de receitas do Ártico”é uma base de conhecimento abrangente que cobre todos os aspectos da construção e otimização de um modelo MoE em grande escala como o Ártico. Ele destila os principais aprendizados em fonte de dados, design de arquitetura de modelo, co-design de sistema, esquemas de treinamento/inferência otimizados e muito mais.
Desde a identificação de currículos de dados ideais até a arquitetura de MoEs e, ao mesmo tempo, co-otimização de compiladores, programadores e hardware – este extenso corpo de conhecimento democratiza habilidades anteriormente confinadas a laboratórios de IA de elite. O Arctic Cookbook acelera as curvas de aprendizagem e capacita empresas, pesquisadores e desenvolvedores em todo o mundo a criar seus próprios LLMs personalizados e econômicos para praticamente qualquer caso de uso.
Primeiros passos com o Ártico
Para empresas interessadas em aproveitar o Ártico, a Snowflake oferece vários caminhos para começar rapidamente:
Inferência sem servidor: os clientes da Snowflake podem acessar o modelo Arctic gratuitamente no Snowflake Cortex, a plataforma de IA totalmente gerenciada da empresa. Além disso, o Arctic está disponível em todos os principais catálogos de modelos, como AWS, Microsoft Azure, NVIDIA e muito mais.
Comece do zero: os pesos e implementações do modelo de código aberto permitem que os desenvolvedores integrem diretamente o Arctic em seus aplicativos e serviços. O repositório Arctic fornece exemplos de código, tutoriais de implantação, receitas de ajuste fino e muito mais.
Crie modelos personalizados: graças aos guias exaustivos do Arctic Cookbook, os desenvolvedores podem construir seus próprios modelos MoE personalizados do zero, otimizados para qualquer caso de uso especializado, usando o que aprendeu com o desenvolvimento do Arctic.
Uma nova era de IA empresarial aberta O Arctic é mais do que apenas outro modelo de linguagem poderoso – ele anuncia uma nova era de recursos de IA abertos, econômicos e especializados, desenvolvidos especificamente para a empresa.
Desde revolucionar a análise de dados e a produtividade de codificação até potencializar a automação de tarefas e aplicações mais inteligentes, o DNA empresarial do Arctic o torna uma escolha imbatível em relação aos LLMs genéricos. E ao abrir o código-fonte não apenas do modelo, mas de todo o processo de P&D por trás dele, a Snowflake está promovendo uma cultura de colaboração que elevará todo o ecossistema de IA.
À medida que as empresas adotam cada vez mais a IA generativa, a Arctic oferece um plano ousado para o desenvolvimento de modelos objetivamente superiores para cargas de trabalho de produção e ambientes empresariais. A sua confluência de investigação de ponta, eficiência incomparável e um espírito aberto e inabalável estabelece uma nova referência na democratização do potencial transformador da IA.
Aqui está uma seção com exemplos de código sobre como usar o modelo Snowflake Arctic:
Prática com o Ártico
Agora que cobrimos o que torna o Ártico verdadeiramente inovador, vamos nos aprofundar em como os desenvolvedores e cientistas de dados podem começar a colocar esse modelo poderoso para funcionar.
Pronto para uso, o Arctic está disponível pré-treinado e pronto para implantação por meio de grandes centros de modelos, como Hugging Face e plataformas de IA de parceiros. Mas seu verdadeiro poder surge ao personalizá-lo e ajustá-lo para seus casos de uso específicos.
A licença Apache 2.0 da Arctic oferece total liberdade para integrá-la em seus aplicativos, serviços ou fluxos de trabalho de IA personalizados. Vejamos alguns exemplos de código usando a biblioteca de transformadores para você começar:
Inferência Básica com o Ártico
Para casos de uso de geração rápida de texto, podemos carregar o Arctic e executar inferência básica com muita facilidade:
from transformers import AutoTokenizer, AutoModelForCausalLM
# Load the tokenizer and model
tokenizer = AutoTokenizer.from_pretrained("Snowflake/snowflake-arctic-instruct")
model = AutoModelForCausalLM.from_pretrained("Snowflake/snowflake-arctic-instruct")
# Create a simple input and generate text
input_text = "Here is a basic question: What is the capital of France?"
input_ids = tokenizer.encode(input_text, return_tensors="pt")
# Generate response with Arctic
output = model.generate(input_ids, max_length=150, do_sample=True, top_k=50, top_p=0.95, num_return_sequences=1)
generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
print(generated_text)
Isso deve gerar algo como:
“A capital da França é Paris. Paris é a maior cidade da França e o centro económico, político e cultural do país. É o lar de monumentos famosos como a Torre Eiffel, o museu do Louvre e a Catedral de Notre-Dame.”
Como você pode ver, o Arctic entende perfeitamente a consulta e fornece uma resposta detalhada e fundamentada, aproveitando seus robustos recursos de compreensão de linguagem.
Ajuste fino para tarefas especializadas
Embora impressionante, o Arctic realmente brilha quando personalizado e ajustado em seus dados proprietários para tarefas especializadas. Snowflake forneceu extensas receitas cobrindo:
- Curadoria de dados de treinamento de alta qualidade adaptados ao seu caso de uso
- Implementação de currículos de treinamento personalizados em vários estágios
- Aproveitando abordagens eficientes de ajuste fino LoRA, P-Tuning ou FactorizedFusion
- Otimizações para discernir SQL, codificação ou outras habilidades empresariais importantes
Aqui está um exemplo de como ajustar o Ártico em seus próprios conjuntos de dados de codificação usando as receitas LoRA e Snowflake:
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import LoraConfig, get_peft_model, prepare_model_for_int8_training
# Load base Arctic model
tokenizer = AutoTokenizer.from_pretrained("Snowflake/snowflake-arctic-instruct")
model = AutoModelForCausalLM.from_pretrained("Snowflake/snowflake-arctic-instruct", load_in_8bit=True)
# Initialize LoRA configs
lora_config = LoraConfig(
r=8,
lora_alpha=16,
target_modules=["query_key_value"],
lora_dropout=0.05,
bias="none",
task_type="CAUSAL_LM"
)
# Prepare model for LoRA finetuning
model = prepare_model_for_int8_training(model)
model = get_peft_model(model, lora_config)
# Your coding datasets
data = load_coding_datasets()
# Fine-tune with Snowflake's recipes
train(model, data, ...)
Este código ilustra como você pode carregar o Arctic sem esforço, inicializar uma configuração LoRA personalizada para geração de código e, em seguida, ajustar o modelo em seus conjuntos de dados de codificação proprietários, aproveitando a orientação do Snowflake.
Personalizado e ajustado, o Arctic se torna uma potência privada ajustada para oferecer desempenho incomparável em seus principais fluxos de trabalho corporativos e nas necessidades das partes interessadas.