Perché Phind-405B è un salto di qualità per l'IA e la programmazione

Phind-405B è il più avanzato modello generativo per il motore di ricerca basato sull'intelligenza artificiale. Migliorando notevolmente l'elaborazione di informazioni complesse, Phind-405B ha già ottenuto un punteggio elevato su HumanEval. L'introduzione di Phind Instant evidenzia l'impegno per innovare nel campo della ricerca basata su IA, fornendo al contempo un valido ausilio per chi sviluppa software.

Phind è un motore di ricerca basato su intelligenza artificiale che in passato aveva già affermato di aver superato le capacità di programmazione di OpenAI GPT-4. I chatbot basati su Large Language Model (LLM) stanno sempre più ambendo a diventare motori di ricerca, andando a sfidare frontalmente Google. In attesa dell’arrivo di SearchGPT, abbiamo già visto cosa può succedere se ChatGPT diventasse motore di ricercaPhind-405B è un modello generativo che alza ulteriormente l’asticella promettendo risposte più rapide e di alta qualità per gli utenti, in particolare gli sviluppatori software.

Cos’è Phind-405B e a che cosa serve

Vi abbiamo raccontato come Phind abbia largamente battuto sul tempo OpenAI presentando un chatbot che non soltanto attinge alle “conoscenze” raccolte nella fase di addestramento del modello generativo ma si serve anche delle informazioni più fresche pubblicate sul Web. Ecco quindi che gli utenti hanno tra le mani un sistema aggiornato, capace di unire la sua base di conoscenze con i dati reperibili online. Siamo di fronte a un motore di ricerca imperniato sull’IA che crea contenuti unici utilizzando più fonti differenti.

Phind è cresciuto migliorando il chatbot, le funzionalità di ricerca e la creazione di codice: a questo proposito, è disponibile un’estensione ufficiale per Visual Studio Code che permette di generare, completare e migliorare il codice di programmazione in qualsiasi linguaggio.

Il modello Phind-405B, appena presentato, si inserisce sullo stesso solco promettendo una gestione del contesto fino a 128K token e una context window ampia 32K.

Entrambi i valori si riferiscono alla capacità del modello di intelligenza artificiale di elaborare e mantenere in memoria grandi quantità di informazioni durante l’elaborazione di una richiesta.

Il token è un’unità di testo che il modello elabora: può essere una parola intera, parte di una parola o anche simboli. Quando parliamo di 128K token, significa che il modello può prendere in considerazione fino a 128.000 token in totale per rispondere a una richiesta, un numero estremamente elevato rispetto ad altri modelli che solitamente gestiscono meno token.

La context window è il numero massimo di token che il modello può “vedere” contemporaneamente durante l’elaborazione di una singola risposta o richiesta. In questo caso, una context window estesa a 32K, indica che il modello può tenere traccia e considerare fino a 32.000 token (che includono parti della domanda e contesto circostante) in un singolo ciclo di elaborazione.

Perché è importante poter gestire un ampio numero di token

La possibilità di gestire fino a 128K token in totale e una context window da 32K permettono al modello di considerare più informazioni contemporaneamente, soprattutto in compiti complessi come leggere documenti lunghi o elaborare discussioni articolate.

Una context window più ampia significa che il modello può mantenere “in memoria” più parti di una conversazione o di un documento, senza quindi dimenticare ciò che è stato detto in precedenza. Ciò è utile per attività come la programmazione o l’analisi di testi lunghi.

Il nuovo modello basato su Meta Llama 3.1 405B

Phind-405B si basa su Meta Llama 3.1 405B e ha già ottenuto un notevole 92% su HumanEval (una metrica per valutare le capacità di programmazione dei modelli), mettendosi così alla pari con Claude 3.5 Sonnet di Anthropic, altro modello IA di alto livello.

Uno degli aspetti più impressionanti di Phind-405B è la sua capacità di affrontare task reali piuttosto complessi. Un esempio pratico fornito da Phind riguarda la creazione di una landing page per il saggio Founder Mode di Paul Graham, uno dei fondatori di Y Combinator. Phind-405B ha raccolto informazioni da più fonti Web e ha creato diverse versioni della pagina Web, mostrando un’elevata flessibilità e creatività nel fornire soluzioni multiple.

Introduzione di Phind Instant per ricerche più veloci

Oltre a Phind-405B, l’azienda ha introdotto un modello ottimizzato per velocizzare le ricerche IA: Phind Instant. Una delle principali sfide per i motori di ricerca basati su IA è infatti il tempo impiegato per generare risposte, che è spesso più lungo rispetto a motori come Google. In questo senso, Cerebras Inference ha recentemente introdotto un nuovo punto di riferimento, grazie anche all’uso del chip WSE-3 al posto delle classiche GPU NVIDIA H100.

Phind ha sviluppato un modello basato su Meta Llama 3.1 8B, Instant appunto, che riesce a generare fino a 350 token al secondo, offrendo così una velocità di ricerca e risposta notevolmente superiore.

Phind Instant utilizza un server di inferenza personalizzato basato su NVIDIA TensorRT-LLM, ottimizzato per velocità e prestazioni. Inoltre, implementa tecnologie avanzate come flash decodingfused CUDA kernel.

Flash decoding e fused CUDA kernel

Flash decoding è una tecnica progettata per accelerare il processo di decodifica nei modelli linguistici. La decodifica è il processo con cui un modello IA genera le risposte o le previsioni, token dopo token. La decodifica tradizionale può essere lenta, poiché il modello deve calcolare e scegliere il token successivo uno alla volta.

Utilizzando la tecnica flash decoding è possibile ridurre i tempi, ottimizzando il modo in cui i calcoli vengono fatti durante la fase di inferenza (cioè al momento della generazione delle risposte). L’obiettivo è minimizzare la latenza e rendere il processo di generazione molto più veloce, aumentando il throughput, ovvero il numero di token generati al secondo.

I fused CUDA kernel sono un’ottimizzazione specifica per le GPU NVIDIA. In una GPU, i kernel CUDA sono piccole unità di codice che eseguono operazioni matematiche in parallelo. Quando si parla di “fused” (fusi o combinati), si intende la fusione di più kernel in un’unica operazione per ridurre il numero di passaggi di calcolo separati.

Come provare Phind-405B e Instant

Per provare subito i due modelli, è sufficiente puntare il browser sulla home page di Phind e quindi operare una scelta circa il LLM preferito intervenendo sul menu a tendina a sinistra, nel riquadro di inserimento del prompt.

Ricordiamo che su Phind sono disponibili tre differenti schede: Ask, PlaygroundCode. L’ambiente Ask si concentra sull’elaborazione di richieste di aiuto e sulla generazione di risposte immediate. È ideale per chiedere spiegazioni su concetti tecnici o per ottenere soluzioni rapide a problemi specifici.

La scheda Playground è uno spazio di prova e sperimentazione; è ottimizzato per esplorare concetti tecnici in modo pratico e interattivo. Gli utenti possono provare codice, esaminare output e modificare input in tempo reale.

Infine, la sezione Code è incentrata sul tema dello sviluppo software: offre infatti strumenti avanzati per la scrittura e la modifica del codice. Rappresenta una base solida per lo sviluppo di applicazioni e script.

Nel caso di ogni singola scheda su Phind, gli utenti possono scegliere il modello generativo che preferiscono. Da tenere presente che Phind-405B è al momento fruibile solo dagli utenti che attivano un piano a pagamento.

Credit immagine in apertura: iStock.com – BlackJack3D

Ti consigliamo anche

Link copiato negli appunti