I modelli generativi che costituiscono l’architettura di base per il funzionamento dei migliori chatbot basati sull’intelligenza artificiale sono il risultato di un lungo e attento processo di addestramento. Le “conoscenze” del modello di solito rimangono ferme alla data in cui si è completato l’addestramento.
RAG (Retrieval-Augmented Generation) è un modello di linguaggio che unisce tecniche di recupero e generazione per produrre contenuti di qualità. Si pensi al professionista o ai dipendenti aziendali che non hanno il tempo materiale, le competenze o le risorse per “frugare” tra centinaia di contenuti per cercare una specifica informazione. Ecco, l’intelligenza artificiale permette oggi di leggere i documenti PDF, DOCX, TXT e in altri formati per arricchire la base di conoscenza del modello generativo sottostante.
In altre parole, è possibile selezionare un Large Language Model (LLM) aperto quindi renderlo edotto delle informazioni riservate dell’impresa o dello studio professionale. Il tutto senza scambiare un solo bit di dati in rete, quindi preservando la riservatezza dei dati, che restano sempre conservati in locale.
AnythingLLM: leggere i documenti PDF, DOCX, TXT e farli parlare
Un progetto nel campo dell’IA che ci ha letteralmente ammaliato si chiama AnythingLLM. Disponibile come software open source, installabile all’interno di un container Docker ma anche come semplice software desktop per Windows, macOS e Linux, AnythingLLM è un’applicazione progettata per trasformare documenti e contenuti in riferimenti utili per i LLM. Anche quelli più diffusi. È in grado di utilizzare modelli di linguaggio sia commerciali che open source e offre un’interfaccia user-friendly per la gestione dei contenuti.
AnythingLLM si distingue per la sua flessibilità e potenza, permettendo agli utenti di interagire in modo intelligente con una varietà di documenti, in molteplici formati.
Una delle idee vincenti di AnythingLLM è la sua capacità di creare workspace, ovvero contenitori per i documenti caricati dagli utenti. Ciascun workspace opera in modo indipendente, permettendo agli utenti di mantenere un contesto chiaro e organizzato per ogni lavorazione, senza confusione tra informazioni diverse.
Specialmente nella versione Docker, accessibile tramite interfaccia Web, AnythingLLM si adatta a contesti aziendali e di ricerca, in cui la collaborazione e la gestione dei diritti d’accesso sono fondamentali.
Configurare un sistema RAG basato sull’IA
Considerabile come una sorta di Ollama all’ennesima potenza (Ollama è tra l’altro parte integrante di AnythingLLM), l’applicazione include funzionalità avanzate come gli agenti intelligenti, che possono eseguire compiti come navigare sul Web o eseguire codice. È facile comprendere, quindi, quali possano essere le potenzialità di un tool del genere.
Di base, dopo aver scelto il LLM preferito, AnythingLLM risponde con un approccio “generalista”. Ciò avviene perché si limita a utilizzare la base di conoscenza del modello generativo selezionato dall’utente.
Cliccando sull’icona di upload accanto al norme del workspace creato in Anything LLM, è possibile caricare tutti i documenti che il sistema deve prendere in considerazione per la generazione delle risposte in output. Ebbene sì, con due clic avrete correttamente configurato il vostro sistema RAG basato sull’IA.
Provate adesso a chiedere qualcosa che abbia attinenza con il contenuto di documenti appena passati ad AnythingLLM: il modello generativo produrrà una risposta argomentata, pertinente e di qualità proprio grazie alla precedente estrazione dei contenuti dai file e al conseguente tuning del LLM “generalista”!
Ricordatevi sempre, dopo aver effettuato l’upload dei documenti, di selezionarli tutti quindi di fare clic sul pulsante Move to workspace e infine su Save and embed. Diversamente, i loro contenuti non saranno presi in considerazione. Prima di porre una domanda, è necessario digitare /reset
nel riquadro di inserimento del prompt.
Configurare e usare gli agent
Come abbiamo accennato in precedenza, gli agent sono capaci di offrire un supporto supplementare per gli utenti di AnythingLLM che desiderano ottenere risposte più rapide e accurate, basate su dati aggiornati.
Cliccando sull’icona dell’ingranaggio, nella colonna di sinistra accanto al nome del workspace, quindi su Agent configuration, vedrete che funzionalità come RAG e la memoria a lungo termine (abbiamo parlato di recente della memoria di ChatGPT), la possibilità di creare riassunti dei documenti, effettuare lo scraping dei siti Web sono già abilitate per impostazione predefinita.
Dalla stessa schermata, tuttavia, si può rendere AnythingLLM in grado di cercare informazioni fresche sul Web (Web Search), generare grafici, attivare il connettore SQL in modo da attingere a sorgenti di dati come i database, generare e salvare file nel browser. Il bello è che tutto questo va ad estendere qualsiasi LLM sottostante, qualunque modello generativo scelto dall’utente.
Infine, la possibilità di integrare facilmente API di terze parti per personalizzazioni e funzionalità aggiuntive è un altro punto di forza. Gli sviluppatori di adattare AnythingLLM alle loro specifiche esigenze e di creare soluzioni su misura, rendendo l’applicazione ancora più potente e utile nel panorama attuale dell’intelligenza artificiale.
Se abbiamo solleticato il vostro interesse, non avete che da provare AnythingLLM scaricando la versione desktop dalla sezione download. Date un’occhiata anche ai requisiti minimi, tenendo comunque presente che le attività inferenza svolte in locale presuppongono l’utilizzo di un sistema ben carrozzato (noi abbiamo usato una macchina con CPU 32 core e 64 GB di RAM).
Credit immagine in apertura: Copilot Designer