Oggi le aziende esplorano sempre più modi per sfruttare i modelli linguistici di grandi dimensioni (LLM) per aumentare la produttività e creare applicazioni intelligenti. Tuttavia, molte delle opzioni LLM disponibili sono modelli generici non adattati alle esigenze aziendali specializzate come l'analisi dei dati, la codifica e l'automazione delle attività. accedere Fiocco di neve artico – un LLM all'avanguardia appositamente progettato e ottimizzato per i casi d'uso aziendali principali.
Sviluppato dal team di ricerca sull'intelligenza artificiale di Snowflake, Arctic spinge i confini di ciò che è possibile con una formazione efficiente, un rapporto costo-efficacia e un livello di apertura senza precedenti. Questo modello rivoluzionario eccelle nei parametri di riferimento aziendali chiave pur richiedendo una potenza di calcolo molto inferiore rispetto ai LLM esistenti. Immergiamoci in ciò che rende Arctic un punto di svolta per l'intelligenza artificiale aziendale.
Ridefinizione dell'intelligence aziendale Fondamentalmente, Arctic è focalizzato sulla fornitura di prestazioni eccezionali su parametri che contano davvero per le aziende: codifica, query SQL, seguito di istruzioni complesse e produzione di output fondati e basati sui fatti. Snowflake ha combinato queste capacità critiche in un romanzo “intelligenza aziendalemetrico.
I risultati parlano da soli. Arctic soddisfa o supera modelli come LLAMA 7B e LLAMA 70B nei parametri di riferimento dell'intelligence aziendale, utilizzando meno della metà del budget informatico per la formazione. Notevolmente, nonostante l'utilizzo 17 volte meno risorse di elaborazione rispetto a LLAMA 70B, Arctic raggiunge la parità nei test specializzati come la codifica (HumanEval+, MBPP+), la generazione SQL (Spider) e il seguito delle istruzioni (IFEval).
Ma l’abilità di Arctic va oltre il semplice raggiungimento dei parametri di riferimento aziendali. Mantiene ottime prestazioni in termini di comprensione del linguaggio generale, ragionamento e attitudine matematica rispetto ai modelli addestrati con budget di calcolo esponenzialmente più elevati come DBRX. Questa capacità olistica rende Arctic una scelta imbattibile per affrontare le diverse esigenze di IA di un’impresa.
L'innovazione
Trasformatore ibrido Dense-MoE Quindi, come ha fatto il team Snowflake a costruire un LLM così incredibilmente capace ma efficiente? La risposta sta nell’architettura all’avanguardia del trasformatore ibrido Dense Mixture-of-Experts (MoE) di Arctic.
L'addestramento dei modelli tradizionali di trasformatori densi diventa sempre più costoso man mano che le loro dimensioni crescono, con requisiti computazionali che aumentano in modo lineare. Il design del MoE aiuta a aggirare questo problema utilizzando più reti feed-forward parallele (esperti) e attivando solo un sottoinsieme per ciascun token di input.
Tuttavia, utilizzare semplicemente un'architettura MoE non è sufficiente: Arctic combina ingegnosamente i punti di forza sia dei componenti densi che di quelli MoE. Abbina un codificatore del trasformatore denso da 10 miliardi di parametri con uno strato di percettrone multistrato (MLP) MoE residuo esperto. Questo modello ibrido a MoE denso ammonta a 128 miliardi di parametri, ma solo 480 miliardi sono attivi in un dato momento utilizzando il gating top-17.
Le implicazioni sono profonde: Arctic raggiunge una qualità e una capacità del modello senza precedenti, pur rimanendo notevolmente efficiente in termini di calcolo durante l’addestramento e l’inferenza. Ad esempio, Arctic ha il 50% in meno di parametri attivi rispetto a modelli come DBRX durante l'inferenza.
Ma l’architettura modello è solo una parte della storia. L'eccellenza di Arctic è il culmine di numerose tecniche e intuizioni pionieristiche sviluppate dal team di ricerca Snowflake:
- Curriculum dei dati di formazione incentrato sull'azienda Attraverso una sperimentazione approfondita, il team ha scoperto che competenze generiche come il ragionamento basato sul buon senso dovrebbero essere apprese presto, mentre specializzazioni più complesse come la codifica e SQL si acquisiscono meglio più avanti nel processo di formazione. Il curriculum dei dati di Arctic segue un approccio in tre fasi che imita le progressioni dell’apprendimento umano.
I primi teratoken si concentrano sulla costruzione di un’ampia base generale. I successivi 1.5 teratoken si concentrano sullo sviluppo delle competenze aziendali attraverso dati su misura per SQL, attività di codifica e altro ancora. I teratoken finali perfezionano ulteriormente le specializzazioni dell'Artico utilizzando set di dati raffinati.
- Scelte architettoniche ottimali Mentre i MoE promettono una migliore qualità per elaborazione, la scelta delle giuste configurazioni è cruciale ma poco compresa. Attraverso una ricerca dettagliata, Snowflake è approdato a un'architettura che impiega 128 esperti con i primi 2 gate di ogni livello dopo aver valutato i compromessi tra qualità ed efficienza.
Aumentando il numero di esperti si ottengono più combinazioni, migliorando la capacità del modello. Tuttavia, ciò aumenta anche i costi di comunicazione, quindi Snowflake è approdato a 128 esperti “condensati” attentamente progettati e attivati tramite i primi 2 gating come equilibrio ottimale.
- Co-progettazione del sistema Ma anche un'architettura modello ottimale può essere compromessa da colli di bottiglia del sistema. Quindi anche in questo caso il team Snowflake ha innovato, co-progettando l’architettura del modello mano nella mano con i sistemi di addestramento e inferenza sottostanti.
Per una formazione efficiente, i componenti denso e MoE sono stati strutturati per consentire la sovrapposizione di comunicazione e calcolo, nascondendo notevoli spese generali di comunicazione. Dal punto di vista delle inferenze, il team ha sfruttato le innovazioni di NVIDIA per consentire un'implementazione altamente efficiente nonostante le dimensioni dell'Artico.
Tecniche come la quantizzazione FP8 consentono di adattare il modello completo su un singolo nodo GPU per l'inferenza interattiva. I batch più grandi sfruttano le capacità di parallelismo di Arctic su più nodi pur rimanendo straordinariamente efficienti in termini di calcolo grazie ai suoi parametri attivi compatti da 17B.
Con una licenza Apache 2.0, i pesi e il codice di Arctic sono disponibili senza restrizioni per qualsiasi uso personale, di ricerca o commerciale. Ma Snowflake è andata ben oltre, rendendo disponibili come open source ricette complete di dati, implementazioni di modelli, suggerimenti e approfondimenti di ricerca che alimentano l'Artico.
Il "Libro di cucina artica" è una base di conoscenze completa che copre ogni aspetto della costruzione e dell'ottimizzazione di un modello MoE su larga scala come Arctic. Distilla le conoscenze chiave acquisite attraverso l'approvvigionamento dei dati, la progettazione dell'architettura del modello, la co-progettazione del sistema, gli schemi di formazione/inferenza ottimizzati e altro ancora.
Dall'identificazione di programmi di dati ottimali all'architettura dei MoE, co-ottimizzando compilatori, programmatori e hardware: questo ampio corpus di conoscenze democratizza le competenze precedentemente confinate nei laboratori di intelligenza artificiale d'élite. L'Arctic Cookbook accelera le curve di apprendimento e consente ad aziende, ricercatori e sviluppatori a livello globale di creare i propri LLM convenienti e personalizzati praticamente per qualsiasi caso d'uso.
Iniziare con l'Artico
Per le aziende interessate a sfruttare l'Artico, Snowflake offre molteplici percorsi per iniziare rapidamente:
Inferenza serverless: i clienti Snowflake possono accedere gratuitamente al modello Artico su Snowflake Cortex, la piattaforma AI completamente gestita dell'azienda. Oltre a ciò, Arctic è disponibile in tutti i principali cataloghi di modelli come AWS, Microsoft Azure, NVIDIA e altri.
Inizia da zero: i pesi e le implementazioni del modello open source consentono agli sviluppatori di integrare direttamente Arctic nelle loro app e servizi. Il repository Arctic fornisce esempi di codice, tutorial di distribuzione, ricette di perfezionamento e altro ancora.
Costruisci modelli personalizzati: grazie alle guide esaustive di Arctic Cookbook, gli sviluppatori possono creare da zero i propri modelli MoE personalizzati ottimizzati per qualsiasi caso d'uso specializzato utilizzando gli insegnamenti tratti dallo sviluppo di Arctic.
Una nuova era di impresa aperta L’AI Arctic è molto più di un semplice modello linguistico potente: annuncia una nuova era di capacità di intelligenza artificiale aperte, convenienti e specializzate, create appositamente per l’impresa.
Dalla rivoluzione dell'analisi dei dati e della produttività della codifica al potenziamento dell'automazione delle attività e di applicazioni più intelligenti, il DNA aziendale di Arctic lo rende una scelta imbattibile rispetto ai LLM generici. E rendendo open source non solo il modello ma l’intero processo di ricerca e sviluppo dietro di esso, Snowflake sta promuovendo una cultura di collaborazione che migliorerà l’intero ecosistema AI.
Mentre le aziende abbracciano sempre più l’intelligenza artificiale generativa, Arctic offre un progetto audace per lo sviluppo di modelli oggettivamente superiori per i carichi di lavoro di produzione e gli ambienti aziendali. La sua confluenza di ricerca all’avanguardia, efficienza senza pari e una costante etica aperta stabilisce un nuovo punto di riferimento nella democratizzazione del potenziale di trasformazione dell’IA.
Ecco una sezione con esempi di codice su come utilizzare il modello Snowflake Arctic:
A tu per tu con l'Artico
Ora che abbiamo spiegato ciò che rende Arctic davvero innovativo, approfondiamo il modo in cui gli sviluppatori e i data scientist possono iniziare a mettere in pratica questo potente modello.
Fuori dagli schemi, Arctic è disponibile pre-addestrato e pronto per l’implementazione attraverso i principali hub di modelli come Hugging Face e le piattaforme AI dei partner. Ma il suo vero potere emerge quando lo personalizzi e lo perfezioni per i tuoi casi d'uso specifici.
La licenza Apache 2.0 di Arctic offre piena libertà di integrarla nelle tue app, servizi o flussi di lavoro IA personalizzati. Esaminiamo alcuni esempi di codice utilizzando la libreria Transformers per iniziare:
Inferenza di base con l'Artico
Per casi d'uso di generazione rapida di testo, possiamo caricare Arctic ed eseguire l'inferenza di base molto facilmente:
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)
Questo dovrebbe produrre qualcosa come:
“La capitale della Francia è Parigi. Parigi è la città più grande della Francia e il centro economico, politico e culturale del paese. Ospita monumenti famosi come la Torre Eiffel, il museo del Louvre e la cattedrale di Notre-Dame.
Come puoi vedere, Arctic comprende perfettamente la query e fornisce una risposta dettagliata e fondata sfruttando le sue solide capacità di comprensione del linguaggio.
Messa a punto per compiti specializzati
Nonostante sia eccezionale già pronto all'uso, Arctic brilla davvero quando viene personalizzato e messo a punto sui dati proprietari per attività specializzate. Snowflake ha fornito ricette estese che coprono:
- Curare dati di formazione di alta qualità su misura per il tuo caso d'uso
- Implementazione di percorsi formativi personalizzati in più fasi
- Sfruttare approcci efficienti di messa a punto LoRA, P-Tuning o FactorizedFusion
- Ottimizzazioni per discernere SQL, codifica o altre competenze aziendali chiave
Ecco un esempio di come ottimizzare Arctic sui tuoi set di dati di codifica utilizzando le ricette di 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, ...)
Questo codice illustra come caricare facilmente Arctic, inizializzare una configurazione LoRA su misura per la generazione di codice e quindi ottimizzare il modello sui set di dati di codifica proprietari sfruttando la guida di Snowflake.
Personalizzato e messo a punto, Arctic diventa una potenza privata sintonizzata per offrire prestazioni senza pari sui flussi di lavoro aziendali principali e sulle esigenze delle parti interessate.