Seguo spesso i video di Salvatore Sanfilippo e trovo super interessanti quelli un po’ più tecnici riguardandi i dettagli dei nuovi modelli LLM e la loro implementazione.

Dopo l’uscita di DeepSeek V4, sopratutto nella sua versione Flash, le recensioni molto positive mi hanno fatto prendere voglia di testarla anche a me.

Fortunatamente Sanfilippo ha rilasciato una versione quantizzata 2bit e contestualmente, una versione modificata di llama.cpp che avrei potuto usare nell’ASUS GB10 che ho a disposizione, sfortunatamente lui lavora sun mac e il progetto è specializzato per sfruttare le API Metal GPU e nella mia NVIDIA tutto il carico finiva sulle CPU.

Il primo passo è stato quello di fare un fork del repository di Sanfilippo per mettere sotto Claude e ChatGPT e farne una versione “ottimizzata” per i miei CUDA core. Una prima versione molto lenta, è subito venuta fuori ma ancora veniva usata la CPU per alcune condizioni di attention e dopo altre sessioni siamo arrivati ad una velocità decente per l’utilizzo anche agentico.

Tutto il lavoro di sviluppo è stato fatto da AI, io non ho competenze tali che mi permettono di intervenire in maniera pratica nel codice di llama.cpp, ma guidando con intuizioni, osservazioni e analisi prese da documenti e anche dagli stessi video di Sanfilippo ne è venuto fuori un codice funzionante e pienamente utilizzabile.

Il passo successivo è stato quello di installare opencode su un vecchio Raspberry4 che avevo in giro e dargli permessi quasi totali, creare un piccolo script che verifica l’utilizzo del contesto e appena superato il 50% circa effettua una scrittura della memoria su .md per proseguire il lavoro su un contesto pulito.

A questo punto lanciando opencode in modalità headless pianifico i task da effettuare e una volta avviato il plan ho lasciato andare DeepSeek per tutto il giorno e la notte, lui ha messo a punto, sviluppato e testato il tutto con risultati decenti, effettivamente non ho volutamente dato grosse indicazioni tecniche per capire come se la sarebbe cavata ma aveva a disposizione un esempio da seguire e ha lavorato per 12 ore fino al raggiungimento di un prodotto molto simile a quello voluto.

Opencode è stato molto utile grazie alla possibilità di aprire la TUI locale sul server remoto (rpi) ripescando la sessione in corso, in questo modo è possibile verificare lo stato in qualsiasi momento senza essere costantemente con la TUI aperta.