Modelli e piattaforme di IA

Snowflake Arctic: il modello LLM all’avanguardia per l’AI aziendale

mm
Aggiungi Unite.AI alle tue fonti preferite su Google
div]:bg-bg-300 [&_pre]:-mr-4 md:[&_pre]:-mr-9″>

Le aziende di oggi stanno esplorando sempre più modi per sfruttare i modelli di linguaggio grandi (LLM) per aumentare la produttività e creare applicazioni intelligenti. Tuttavia, molte delle opzioni LLM disponibili sono modelli generici non personalizzati per esigenze aziendali specializzate come l’analisi dei dati, la codifica e l’automazione dei compiti. Entra in scena Snowflake Arctic – un modello LLM all’avanguardia progettato e ottimizzato per casi d’uso aziendali core.

Sviluppato dal team di ricerca AI di Snowflake, Arctic spinge i confini di ciò che è possibile con la formazione efficiente, la convenienza economica e un livello di apertura senza precedenti. Questo modello rivoluzionario eccelle in benchmark aziendali chiave mentre richiede molto meno potere di calcolo rispetto ai LLM esistenti. Scopriamo cosa rende Arctic un fattore di cambiamento per l’AI aziendale.

Intelligenza aziendale ridefinita Al suo nucleo, Arctic è focalizzato sull’erogazione di prestazioni eccezionali su metriche che contano veramente per le aziende – codifica, query SQL, istruzioni complesse e produzione di output basati sui fatti. Snowflake ha combinato queste capacità critiche in una metrica di “intelligenza aziendale” innovativa.

I risultati parlano da soli. Arctic soddisfa o supera modelli come LLAMA 7B e LLAMA 70B sui benchmark di intelligenza aziendale mentre utilizza meno della metà del budget di calcolo per la formazione. In modo notevole, nonostante utilizzi 17 volte meno risorse di calcolo rispetto a LLAMA 70B, Arctic raggiunge la parità su test specializzati come la codifica (HumanEval+, MBPP+), la generazione SQL (Spider) e il follow-up delle istruzioni (IFEval).

Ma la capacità di Arctic va oltre il semplice superamento dei benchmark aziendali. Mantiene una forte prestazione in comprensione generale del linguaggio, ragionamento e abilità matematica rispetto a modelli formati con budget di calcolo esponenzialmente più alti come DBRX. Questa capacità olistica rende Arctic una scelta imbattibile per affrontare le diverse esigenze di AI di un’azienda.

L’innovazione

Dense-MoE Hybrid Transformer Come ha fatto il team Snowflake a costruire un LLM così incredibilmente capace eppure efficiente? La risposta si trova nell’architettura di Arctic, basata su un ibrido di Dense Mixture-of-Experts (MoE) e Transformer.

I modelli di trasformazione densi tradizionali diventano sempre più costosi da formare man mano che la loro dimensione cresce, con esigenze computazionali che aumentano linearmente. Il design MoE aiuta a superare questo utilizzando più reti feed-forward parallele (esperti) e attivandone solo una parte per ogni token di input.

Tuttavia, utilizzare semplicemente un’architettura MoE non è sufficiente – Arctic combina le forze di entrambi i componenti densi e MoE in modo ingegnoso. Accoppia un encoder di trasformazione densa da 10 miliardi di parametri con un livello di perceptron multi-layer residuale MoE da 128 esperti. Questo modello ibrido di dense-MoE totalizza 480 miliardi di parametri, ma solo 17 miliardi sono attivi in qualsiasi momento utilizzando il gating top-2.

Le implicazioni sono profonde – Arctic raggiunge una qualità e una capacità di modello senza precedenti mentre rimane notevolmente efficiente dal punto di vista computazionale durante la formazione e l’inferenza. Ad esempio, Arctic ha il 50% di parametri attivi in meno rispetto a modelli come DBRX durante l’inferenza.

Ma l’architettura del modello è solo una parte della storia. L’eccellenza di Arctic è il culmine di diverse tecniche e intuizioni pionieristiche sviluppate dal team di ricerca di Snowflake:

  1. Curriculum di dati di formazione aziendale Attraverso un’ampia sperimentazione, il team ha scoperto che le abilità generiche come il ragionamento del senso comune dovrebbero essere apprese all’inizio, mentre specializzazioni più complesse come la codifica e la query SQL sono meglio acquisite più tardi nel processo di formazione. Il curriculum dei dati di Arctic segue un approccio a tre fasi che imita le progressioni di apprendimento umano.

I primi teratoken si concentrano sulla costruzione di una base generale ampia. I prossimi 1,5 teratoken si concentrano sullo sviluppo di abilità aziendali attraverso dati adatti per SQL, compiti di codifica e altro. Gli ultimi teratoken raffinano ulteriormente le specializzazioni di Arctic utilizzando set di dati raffinati.

  1. Scelte architettoniche ottimali Sebbene gli MoE promettano una migliore qualità per calcolo, scegliere le configurazioni giuste è cruciale ma scarsamente compreso. Attraverso una ricerca dettagliata, Snowflake ha optato per un’architettura che utilizza 128 esperti con gating top-2 in ogni livello dopo aver valutato compromessi tra qualità ed efficienza.

Aumentare il numero di esperti fornisce più combinazioni, migliorando la capacità del modello. Tuttavia, ciò aumenta anche i costi di comunicazione, quindi Snowflake ha scelto 128 esperti “condensati” attivati tramite il gating top-2 come equilibrio ottimale.

  1. Progettazione di sistema Ma anche un’architettura di modello ottimale può essere compromessa da vincoli di sistema. Quindi il team Snowflake ha innovato anche qui – progettando l’architettura del modello a mano con i sistemi di formazione e inferenza sottostanti.

Per una formazione efficiente, i componenti densi e MoE sono stati strutturati per consentire la sovrapposizione della comunicazione e del calcolo, nascondendo sostanziali costi di comunicazione. Sul lato dell’inferenza, il team ha sfruttato le innovazioni di NVIDIA (NVDA ) per abilitare un deploy efficiente nonostante la scala di Arctic.

Tecniche come la quantizzazione FP8 consentono di adattare l’intero modello a un singolo nodo GPU per un’inferenza interattiva. Lotti più grandi attivano le capacità di parallelismo di Arctic su più nodi, restando impressionantemente efficienti dal punto di vista computazionale grazie ai suoi 17 miliardi di parametri attivi compatti.

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 molto oltre, rilasciando anche le sue complete ricette di dati, implementazioni di modelli, suggerimenti e approfondimenti di ricerca che alimentano Arctic.

La “Arctic Cookbook” è una base di conoscenza completa che copre ogni aspetto della costruzione e dell’ottimizzazione di un modello MoE su larga scala come Arctic. Essa distilla conoscenze chiave in materia di sourcing dei dati, progettazione dell’architettura del modello, progettazione del sistema, schemi di formazione e inferenza ottimizzati e altro.

Dall’identificazione dei curricula di dati ottimali alla progettazione di MoE mentre si co-ottimizzano compilatori, scheduler e hardware – questo vasto corpo di conoscenze democratizza abilità precedentemente confinate ai laboratori AI di élite. La Arctic Cookbook accelera le curve di apprendimento ed empowerment per aziende, ricercatori e sviluppatori in tutto il mondo per creare i propri modelli LLM personalizzati e convenienti per quasi ogni caso d’uso.

Iniziare con Arctic

Per le aziende interessate a sfruttare Arctic, Snowflake offre diversi percorsi per iniziare rapidamente:

Inferenza serverless: i clienti Snowflake possono accedere al modello Arctic gratuitamente su Snowflake Cortex, la piattaforma AI completamente gestita della società. Oltre a ciò, Arctic è disponibile su tutti i principali cataloghi di modelli come AWS, Microsoft Azure, NVIDIA e altro.

Iniziare da zero: i pesi del modello e le implementazioni open source consentono agli sviluppatori di integrare direttamente Arctic nelle loro app e servizi. Il repository Arctic fornisce esempi di codice, tutorial di deploy, ricette di fine-tuning e altro.

Costruire modelli personalizzati: grazie alle guide esaustive della Arctic Cookbook, gli sviluppatori possono costruire i propri modelli MoE personalizzati da zero, ottimizzati per qualsiasi caso d’uso specializzato utilizzando le conoscenze derivate dallo sviluppo di Arctic.

Una nuova era di AI aziendale aperta Arctic è più di un potente modello di linguaggio – segna l’inizio di una nuova era di capacità AI specializzate, cost-efficienti e aperte, progettate per le aziende.

Dalla rivoluzione dell’analisi dei dati e della produttività di codifica al potenziamento dell’automazione dei compiti e delle applicazioni più intelligenti, il DNA aziendale di Arctic lo rende una scelta imbattibile rispetto ai LLM generici. E aprendo non solo il modello ma l’intero processo di R&D dietro di esso, Snowflake sta promuovendo una cultura di collaborazione che eleverà l’intero ecosistema AI.

Mentre le aziende abbracciano sempre più l’AI generativa, Arctic offre un modello audace per lo sviluppo di modelli obiettivamente superiori per carichi di lavoro di produzione e ambienti aziendali. La sua combinazione di ricerca all’avanguardia, efficienza senza pari e un’etica aperta pone un nuovo standard nel democratizzare il potenziale trasformativo dell’AI.

Ecco una sezione con esempi di codice su come utilizzare il modello Snowflake Arctic:

Hands-On con Arctic

Ora che abbiamo coperto cosa rende Arctic veramente innovativo, scopriamo come gli sviluppatori e gli scienziati dei dati possono iniziare a utilizzare questo modello potente.
Fuori dalla scatola, Arctic è disponibile pre-addestrato e pronto per il deploy attraverso i principali hub di modelli come Hugging Face e piattaforme AI partner. Ma il suo vero potere emerge quando lo si personalizza e si ottimizza per i propri casi d’uso specifici.

La licenza Apache 2.0 di Arctic fornisce la piena libertà di integrarlo nelle proprie app, servizi o flussi di lavoro AI personalizzati. Scopriamo alcuni esempi di codice utilizzando la libreria transformers per iniziare:

Generazione di testo di base con Arctic

Per casi d’uso di generazione di testo rapida, possiamo caricare Arctic e eseguire un’inferenza di base molto facilmente:


<p>from transformers import AutoTokenizer, AutoModelForCausalLM</p>

<p># Carica il tokenizzatore e il modello
tokenizer = AutoTokenizer.from_pretrained("Snowflake/snowflake-arctic-instruct")
model = AutoModelForCausalLM.from_pretrained("Snowflake/snowflake-arctic-instruct")</p>

<p># Crea un input semplice e genera testo
input_text = "Ecco una domanda di base: Qual è la capitale della Francia?"
input_ids = tokenizer.encode(input_text, return_tensors="pt")</p>

<p># Genera risposta con 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)</p>

print(generated_text)

Questo dovrebbe produrre qualcosa del genere:

“La capitale della Francia è Parigi. Parigi è la città più grande della Francia e il centro economico, politico e culturale del paese. È sede di famosi luoghi come la Torre Eiffel, il museo del Louvre e la cattedrale di Notre-Dame.”

Come possiamo vedere, Arctic comprende perfettamente la query e fornisce una risposta dettagliata e basata sui fatti, sfruttando le sue robuste capacità di comprensione del linguaggio.

Ottimizzazione per compiti specializzati

Sebbene sia già impressionante fuori dalla scatola, Arctic brilla veramente quando viene personalizzato e ottimizzato sui propri dati per compiti specializzati. Snowflake ha fornito ricette esaustive che coprono:

  • Curare dati di alta qualità adatti per il proprio caso d’uso
  • Implementare curricula di formazione personalizzati a più fasi
  • Sfruttare approcci di ottimizzazione efficienti come LoRA, P-Tuning o FactorizedFusion
  • Ottimizzazioni per discernere SQL, codifica o altre abilità aziendali chiave

Ecco un esempio di come ottimizzare Arctic sui propri set di dati di codifica utilizzando LoRA e le ricette di Snowflake:


<p>from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import LoraConfig, get_peft_model, prepare_model_for_int8_training</p>

<p># Carica il modello Arctic di base
tokenizer = AutoTokenizer.from_pretrained("Snowflake/snowflake-arctic-instruct")
model = AutoModelForCausalLM.from_pretrained("Snowflake/snowflake-arctic-instruct", load_in_8bit=True)</p>

<p># Inizializza la configurazione LoRA
lora_config = LoraConfig(
r=8,
lora_alpha=16,
target_modules=["query_key_value"],
lora_dropout=0.05,
bias="none",
task_type="CAUSAL_LM"
)</p>

<p># Prepara il modello per l'ottimizzazione LoRA
model = prepare_model_for_int8_training(model)
model = get_peft_model(model, lora_config)</p>

<p># I tuoi set di dati di codifica
data = load_coding_datasets()</p>

<p># Ottimizza con le ricette di Snowflake
train(model, data, ...)</p>

Questo codice illustra come caricare Arctic, inizializzare una configurazione LoRA personalizzata per la generazione di codice e quindi ottimizzare il modello sui propri set di dati di codifica sfruttando le indicazioni di Snowflake.

Ottimizzato e personalizzato, Arctic diventa un’entità potente e personalizzata per offrire prestazioni senza pari sui propri flussi di lavoro aziendali e sulle esigenze degli stakeholder.

Il ciclo di innovazione rapido di Arctic

Uno degli aspetti più impressionanti di Arctic è il ritmo incalzante con cui il team di ricerca AI di Snowflake ha concepito, sviluppato e rilasciato questo modello all’avanguardia al mondo. Dall’inizio alla release open source, l’intero progetto Arctic ha richiesto meno di tre mesi e ha utilizzato solo circa un ottavo del budget di calcolo tipico per la formazione di modelli LLM grandi simili.

Questa capacità di innovare, iterare e produrre ricerca AI all’avanguardia in modo rapido è veramente notevole. Dimostra le profonde capacità tecniche di Snowflake e la posiziona per continuare a spingere i confini nello sviluppo di capacità AI aziendali nuove e innovative.

La famiglia Arctic e le embeddings

Arctic è solo l’inizio delle ambizioni di Snowflake nello spazio LLM aziendale. La società ha già rilasciato open source la famiglia di modelli di embedding di testo Arctic, ottimizzati per le prestazioni di recupero su più profili di dimensioni.

Come illustrato di seguito, i modelli di embedding Arctic raggiungono l’accuratezza di recupero allo stato dell’arte sul benchmark MTEB (recupero di testo), superando altri modelli di embedding di spicco, comprese le offerte chiuse delle principali aziende tecnologiche.

[Inserisci immagine che mostra i risultati del benchmark MTEB per i modelli di embedding Arctic]

Questi modelli di embedding complementano il modello LLM Arctic e consentono alle aziende di costruire soluzioni di generazione aumentata e question-answering potenti da uno stack open source integrato.

Ma la roadmap di Snowflake si estende ben oltre Arctic e le embeddings. I ricercatori AI della società stanno lavorando sull’espansione della famiglia Arctic con nuovi modelli personalizzati per compiti multi-modalità, parlato, video e altre capacità all’avanguardia – tutti costruiti utilizzando gli stessi principi di specializzazione, efficienza e apertura.

Partnership per un ecosistema AI aperto Snowflake comprende che realizzare il pieno potenziale dell’AI aziendale aperta richiede la coltivazione di un ricco ecosistema di partnership attraverso la comunità AI. Il rilascio di Arctic ha già catalizzato collaborazioni con piattaforme e fornitori principali:

NVIDIA ha collaborato strettamente con Snowflake per ottimizzare Arctic per un deploy efficiente utilizzando lo stack di inferenza AI all’avanguardia di NVIDIA, tra cui TensorRT, Triton e altro. Ciò consente alle aziende di servire Arctic in modo efficiente in termini di costo.

Hugging Face, il principale hub di modelli open source, ha accolto Arctic nelle sue librerie e repository di modelli. Ciò consente un’integrazione senza soluzione di continuità di Arctic nei flussi di lavoro e nelle applicazioni AI esistenti basate su Hugging Face.

Piattaforme come Replicate, SageMaker e altre hanno mosso rapidamente per offrire demo ospitate, API e percorsi di integrazione fluente per Arctic, accelerandone l’adozione.

L’open source ha guidato lo sviluppo di Arctic, e gli ecosistemi aperti rimangono centrali nella sua evoluzione. Snowflake è impegnata a promuovere una ricca collaborazione con ricercatori, sviluppatori, partner e aziende in tutto il mondo per spingere i confini di ciò che è possibile con modelli AI specializzati e aperti.

Accelerando la sua adozione. L’open source ha guidato lo sviluppo di Arctic, e gli ecosistemi aperti rimangono centrali nella sua evoluzione. Snowflake è impegnata a promuovere una ricca collaborazione con ricercatori, sviluppatori, partner e aziende in tutto il mondo per spingere i confini di ciò che è possibile con modelli AI aperti e specializzati.

Ho trascorso gli ultimi cinque anni immergendomi nel mondo affascinante del Machine Learning e del Deep Learning. La mia passione e la mia esperienza mi hanno portato a contribuire a oltre 50 progetti di ingegneria del software diversi, con un focus particolare su AI/ML. La mia curiosità in corso mi ha anche portato verso l'elaborazione del linguaggio naturale, un campo che sono ansioso di esplorare ulteriormente.