LLM locali con memoria persistente

Un nuovo approccio permette a modelli linguistici di grandi dimensioni (LLM) eseguiti localmente di conservare le informazioni apprese durante le interazioni con l'utente. A differenza dei sistemi tradizionali che si affidano a tecniche di retrieval augmented generation (RAG) o a database esterni, questo metodo integra direttamente la conoscenza nei pesi del modello.

Il sistema si articola in due fasi principali: "veglia" e "sonno".

  • Veglia: Durante la fase di veglia, l'utente interagisce normalmente con il modello. Il sistema estrae le informazioni rilevanti dalla conversazione e le inietta nei pesi della rete neurale tramite la tecnica MEMIT (Mass-Editing Memory in Transformers). Questo permette un richiamo immediato delle informazioni senza necessitร  di training aggiuntivo.
  • Sonno: Quando l'utente attiva la modalitร  "sonno" (tramite il comando /sleep), il sistema esegue un audit delle informazioni memorizzate, aggiornando quelle degradate e rimuovendo quelle in eccesso. Questo processo utilizza vincoli null-space per evitare che la correzione di una memoria danneggi altre.

Implementazione e risultati

Il sistema รจ stato testato con successo su diverse configurazioni hardware e modelli, tra cui:

  • MacBook Air M3 (8GB) con Llama-3.2-3B-4bit: supporta circa 15 informazioni, con tempi di "sonno" di circa 5 minuti.
  • 2x H100 80GB con Llama-3.1-8B: garantisce un richiamo del 100% delle 30 informazioni memorizzate dopo la fase di "sonno".
  • 2x H100 80GB con Llama-3.1-70B: offre un richiamo del 100% delle 60 informazioni, senza impatti significativi sulla perplexity (PPL) del modello.

Una scoperta interessante รจ che l'approccio iniziale basato su LoRA (Low-Rank Adaptation) fallisce completamente con modelli di grandi dimensioni come Llama-3.1-70B. L'allineamento RLHF (Reinforcement Learning from Human Feedback) crea un prior comportamentale che sovrascrive la conoscenza iniettata tramite LoRA. L'implementazione basata su MEMIT si รจ dimostrata piรน semplice e robusta.

Il sistema si ispira alla teoria CLS (Complementary Learning Systems) delle neuroscienze, che vede la fase di veglia come una codifica rapida ippocampale e la fase di sonno come una fase di consolidamento.

Il codice sorgente รจ disponibile su GitHub e richiede un Mac con chip Apple Silicio e macOS 14+.