Intermedio 11 minRicerca

Zotero + LLM locale: riassumere e interrogare la propria bibliographie

Zotero centralizza i tuoi riferimenti bibliografici e i tuoi PDF; un LLM locale sa leggerli e sintetizzarli. Collegando i due, si ottiene un assistente di ricerca capace di riassumere un articolo, confrontare diversi articoli scientifici e preparare uno stato dell'arte, senza mai inviare i tuoi lavori non pubblicati nel cloud. Questa guida mostra come realizzare l'intera catena Zotero + IA, dall'inizio alla fine, con Ollama e un componente RAG.

Di Clara M.·Agg. 2026-08-27·Testato su Windows, macOS e Linux

#Perché collegare una IA locale a Zotero

Un ricercatore accumula rapidamente centinaia di articoli in Zotero, per la maggior parte ancora non pubblicati, sotto embargo o coperti da una clausola di riservatezza. Incollare il PDF di un manoscritto in fase di valutazione in un chatbot cloud significa affidarne il contenuto a un terzo — talvolta per l'addestramento dei modelli di quest'ultimo. Eseguire un LLM in locale risolve questo problema alla radice: i file rimangono sul tuo disco, l'inferenza avviene sulla tua macchina, nulla esce.

Il vantaggio di utilizzare Zotero come IA per la ricerca non si limita alla riservatezza. La tua biblioteca è già strutturata: raccolte per progetto, tag, metadati ordinati, PDF annotati. È una base documentale pronta all'uso per un LLM. Anziché scaricare di nuovo e riorganizzare gli articoli, si collega il modello direttamente a ciò che Zotero ha già organizzato.

Riassumi
Ottenere in trenta secondi l'obiettivo, il metodo e i risultati di un articolo di venti pagine, nella tua lingua.
Interrogare
Porre una domanda e lasciare che il modello cerchi la risposta nell'intera raccolta, non in un solo PDF.
Confrontare
Confrontare i metodi o i risultati di diversi paper per abbozzare una rassegna dello stato dell'arte.
Privacy
Trattare manoscritti sottoposti a embargo o dati di collaboratori senza clausola di fuga.
i
Ciò che un LLM locale non sostituisce
Un LLM locale ti fa risparmiare tempo nella lettura, ma non ti esonera dal rigore. Produce bozze di sintesi da rileggere, non verità da citare tali e quali. La sezione sui limiti spiega dove sbaglia ancora.

#Come Zotero e il LLM si parlano

Il kit RAG Local

I tuoi documenti, la tua IA: un RAG locale affidabile sui tuoi PDF, sulle tue note e sulle tue email — senza inviare nulla nel cloud.

  • Spazio online a vita
  • PDF + file
  • Aggiornamenti a vita

Zotero non «parla» nativamente con un modello linguistico. Il collegamento avviene tramite i file: Zotero memorizza ogni PDF sul tuo disco, ed è quel PDF che viene dato da leggere al LLM. Coesistono due approcci principali, che spesso vengono combinati.

Riepilogo a richiesta
Si estrae il testo da un PDF specifico e lo si invia a Ollama con un'istruzione di sintesi. Semplice, rapido, ideale per un articolo alla volta.
RAG sulla biblioteca
Si indicizza un'intera cartella di PDF in un database vettoriale, poi si formulano domande in linguaggio naturale. Il modello legge solo i passaggi pertinenti, il che permette di coprire decine di articoli scientifici.

In entrambi i casi, l'elemento centrale rimane la cartella di archiviazione di Zotero, dove risiedono tutti i PDF. Zotero 7 espone anche un'API locale (sulla porta 23119) che permette di elencare i suoi elementi tramite codice, ma per iniziare, puntare direttamente ai file è la soluzione più robusta e trasparente.

#Prerequisiti

Zotero 7
Con i tuoi PDF allegati ai riferimenti bibliografici (non solo i metadati). Il lettore PDF integrato non è necessario, ma i file devono essere memorizzati localmente.
Ollama
Il daemon che serve i modelli, su http://localhost:11434 per impostazione predefinita. Consultare la guida di installazione se l'installazione non è ancora stata eseguita.
Un modello di sintesi
Qwen 3.5 9B (≈6,6 GB di VRAM in Q4_K_M, 256k di contesto e visione) o Mistral Small 24B per un francese eccellente; un Qwen 3.5 4B (3,4 GB) basta su una configurazione modesta.
Un modello di embeddings
Per il RAG: nomic-embed-text o mxbai-embed-large, recuperabili tramite ollama pull. Leggeri, funzionano anche senza GPU.
Un componente RAG (opzionale)
AnythingLLM o Open WebUI se vuoi interrogare l'intera bibliografia senza scrivere codice.
Recuperare i modelli
# Modèle de synthèse (adaptez à votre VRAM)
ollama pull qwen3.5:9b

# Modèle d'embeddings pour le RAG
ollama pull nomic-embed-text
→
Scegliere la dimensione in base alla GPU
In Q4_K_M, considera circa 5 GB di VRAM per un modello 7B, 9 GB per un 14B e 19 GB per un 32B. Una RTX 3060 da 12 GB esegue agevolmente un 14B; su un Mac con memoria unificata, un 32B rimane possibile.

#Passo 1: trovare i propri PDF in Zotero

Zotero archivia ogni allegato in una sottocartella della directory storage, denominata con una chiave di otto caratteri. Non hai bisogno di comprendere questa struttura nel dettaglio: basta sapere dove si trova per indirizzarvi il LLM.

Windows
C:\Users\<vous>\Zotero\storage
macOS
~/Zotero/storage
Linux
~/Zotero/storage

In caso di dubbio, il percorso esatto è visualizzato in Zotero sotto Modifica ▸ Impostazioni ▸ Avanzate ▸ File e cartelle ▸ «Directory dei dati». La cartella storage si trova direttamente al suo interno.

Per lavorare in modo ordinato su un progetto specifico, è meglio esportare una collezione anziché cercare in tutta la cartella storage. Clic destro su una collezione ▸ « Esporta la collezione »: Zotero può copiare i PDF e una bibliografia (BibTeX, CSV, JSON) in una cartella dedicata, che poi passerai al LLM.

i
Estrarre il testo, non l'immagine
Il LLM legge testo, non pixel. Un PDF «scansionato» senza un livello di testo dovrà prima passare attraverso un OCR (ad esempio ocrmypdf). I PDF degli editori moderni contengono già un livello di testo direttamente utilizzabile.

#Passo 2: riassumere un articolo scientifico

Il caso più comune: apri un articolo scientifico in Zotero e vuoi leggerne un riassunto prima di decidere se merita una lettura completa. Si estrae il testo dal PDF e poi lo si invia a Ollama. La libreria pymupdf (fitz) esegue l'estrazione in modo accurato e rapido.

Dipendenze
pip install pymupdf requests
resumer_article.py
import sys, fitz, requests

def extraire_texte(pdf_path):
    doc = fitz.open(pdf_path)
    return "\n".join(page.get_text() for page in doc)

SYSTEM = (
    "Tu es un assistant de recherche. Tu résumes des articles "
    "scientifiques en français, avec rigueur, sans rien inventer. "
    "Tu t'appuies uniquement sur le texte fourni."
)

texte = extraire_texte(sys.argv[1])

resp = requests.post("http://localhost:11434/api/chat", json={
    "model": "qwen3.5:9b",
    "stream": False,
    "options": {"num_ctx": 16384, "temperature": 0.2},
    "messages": [
        {"role": "system", "content": SYSTEM},
        {"role": "user", "content": PROMPT + "\n\n---\n" + texte},
    ],
})

print(resp.json()["message"]["content"])

Chiamiamo l'API REST di Ollama sulla porta 11434: separa il messaggio di sistema (il ruolo) dal contenuto (l'articolo). Qui contano due impostazioni: una temperatura bassa (0.2) per limitare le elaborazioni inventate e un num_ctx abbastanza grande da elaborare un intero articolo senza troncarlo.

!
La finestra di contesto è il tuo limite invalicabile
Un articolo di venti pagine contiene spesso da 12.000 a 18.000 parole. Se num_ctx è troppo piccolo, il modello vedrà solo l'inizio del PDF e ne riassumerà la parte finale alla cieca. Verifica il contesto del modello, aumenta num_ctx se la VRAM lo permette, altrimenti suddividi il documento in sezioni.

#Un prompt di riassunto affidabile

La qualità del riassunto dipende più dal prompt che dal modello. Un prompt vago dà un paragrafo generico; un prompt strutturato dà una scheda di lettura riutilizzabile. Il segreto: imporre un formato in sezioni che ricalchi la struttura di un articolo scientifico e vietare al modello di andare oltre il testo.

Prompt per una scheda di lettura
Rédige une fiche de lecture en français de l'article ci-dessous, en respectant EXACTEMENT ce format :

## Question de recherche
Ce que l'article cherche à établir, en une à deux phrases.

## Méthode
Données, protocole, modèles ou outils utilisés.

## Résultats principaux
- Une puce par résultat marquant, chiffré si l'article donne des chiffres.

## Limites annoncées
- Les limites que les auteurs reconnaissent eux-mêmes.

## À retenir pour mon état de l'art
Deux à trois phrases sur l'apport et le positionnement de l'article.

Règles :
- Ne reprends que ce qui est réellement écrit dans l'article.
- Si une section n'est pas renseignée dans le texte, écris « non précisé ».
- N'invente aucun chiffre, aucune référence, aucun nom d'auteur.
Il formato obbligatorio
I titoli delle sezioni costringono il modello a organizzare le informazioni anziché dilungarsi. Ottieni la stessa griglia da un articolo all'altro, così puoi confrontarli a colpo d'occhio.
La regola contro le allucinazioni
«Riporta solo ciò che è scritto» e «non specificato» riducono il rischio che il LLM inventi un risultato o un riferimento: il principale pericolo in ambito scientifico.
La sezione sullo stato dell'arte
Chiedendo esplicitamente il posizionamento rispetto alla letteratura esistente, trasformi il riassunto in materiale di partenza direttamente riutilizzabile in una revisione della letteratura.
→
Controlla sempre i numeri nella fonte
Anche con una temperatura bassa e una regola stringente, un LLM può trasferire un numero da una riga all'altra. Tratta ogni numero del riassunto come un'indicazione da verificare nel PDF prima di citarlo.

#Passo 3: interrogare tutta la bibliografia con RAG

Riassumere un PDF è utile; interrogare cinquanta articoli scientifici tutti insieme è ciò che cambia la preparazione di una rassegna dello stato dell'arte. A questo punto si passa al RAG (Retrieval-Augmented Generation): si suddividono i PDF in frammenti, li si trasforma in vettori con il modello di embedding e il LLM legge soltanto i passaggi pertinenti per ogni domanda.

Il modo più semplice, senza scrivere codice, è configurare AnythingLLM o Open WebUI affinché utilizzino la cartella esportata da Zotero (o direttamente storage). Questi strumenti gestiscono l'indicizzazione e il database vettoriale per te; basta scegliere Ollama come fornitore e nomic-embed-text come modello di embedding.

  1. 01
    Esportare la collezione
    Da Zotero, esporta la collezione interessata con i suoi PDF in una cartella dedicata, ad esempio ~/recherche/etat-de-l-art.
  2. 02
    Creare uno spazio di lavoro
    In AnythingLLM, crea un workspace e imposta il provider LLM su Ollama (http://localhost:11434) e il modello di embedding su nomic-embed-text.
  3. 03
    Importare i documenti
    Trascina la cartella contenente i PDF nel workspace. Lo strumento estrae il testo, lo suddivide e lo indicizza automaticamente.
  4. 04
    Fare domande in linguaggio naturale
    Poni le tue domande trasversali: « Quali metodi di valutazione ricorrono più spesso? », « Quali articoli scientifici contraddicono l'ipotesi X? ».

Il grande vantaggio del RAG rispetto al semplice riassunto: il modello cita i passaggi che ha utilizzato. Puoi risalire al PDF di origine per verificare, il che è indispensabile nella ricerca. Chiedi sempre al modello di indicare da quale documento proviene ogni affermazione.

i
Il RAG non legge 'tutto'
Contrariamente a un'idea diffusa, il RAG non fa leggere al modello gli articoli per intero: recupera solo i pochi passaggi più vicini alla domanda. Una domanda formulata male recupera gli estratti sbagliati. Riformulala se la risposta sembra fuori tema.

#Limiti sui documenti molto tecnici

È qui che bisogna essere onesti: su un articolo di matematica, di fisica teorica o di ML molto formale, un LLM locale mostra rapidamente i propri limiti. Comprendere questi punti ciechi evita di affidarsi al modello nei casi sbagliati.

Le formule
L'estrazione del testo appiattisce le equazioni: indici, esponenti e simboli greci si mescolano o scompaiono. Il modello ragiona quindi su formule corrotte e può trarne conclusioni errate.
Le tabelle
Una tabella diventa un insieme confuso di numeri quando viene estratta come testo semplice. Le corrispondenze tra righe e colonne si perdono, quindi i numeri citati da una tabella sono poco affidabili.
Le figure
Un modello di testo non vede i grafici. Qualsiasi risultato presente soltanto in una figura gli sfugge completamente: non lo menzionerà oppure lo inventerà a partire dalla didascalia.
Il ragionamento matematico
Seguire una dimostrazione o verificare una derivazione supera ciò che un modello locale da 14B può fare in modo affidabile. Il modello parafrasa la dimostrazione senza verificarne la validità.

Concretamente: usa il LLM per la parte «narrativa» di un articolo: domanda di ricerca, motivazione, contributi dichiarati, limiti, posizionamento. Controlla personalmente tutto ciò che riguarda formule, tabelle numeriche e figure. Per gli articoli scientifici ricchi di equazioni, un modello multimodale capace di leggere le pagine come immagini (anziché il testo estratto) dà risultati migliori, ma resta un complemento, non un sostituto della tua lettura.

!
Mai citare alla cieca
Non copiare mai un numero, una formula o un'affermazione prodotta dal modello senza averli prima ritrovati nel PDF. Il ruolo del LLM è orientarti e svolgere il lavoro preliminare, non sostituirsi alla verifica scientifica.

#Risoluzione dei problemi

Il PDF esce vuoto
Si tratta di una scansione senza un livello di testo. Sottoponila all'OCR (ocrmypdf entree.pdf sortie.pdf) prima dell'estrazione.
Il riassunto ignora la fine dell'articolo
num_ctx è troppo piccolo: il testo è stato troncato. Aumentalo se la VRAM lo permette, altrimenti riassumi il testo per sezioni e poi fai una sintesi delle sintesi.
Il RAG dà risposte fuori tema
Sono stati recuperati i passaggi sbagliati. Riformula la domanda con i termini esatti del settore, oppure riduci la dimensione dei chunk durante l'indicizzazione.
Risposte lente
Un 9B su CPU è lento. Verifica che Ollama utilizzi effettivamente la GPU, oppure passa a Qwen 3.5 4B (3,4 GB) per le sintesi di routine.
Numeri che non corrispondono al PDF
Sintomo classico di una tabella estratta male o di un'allucinazione. Abbassa la temperatura e, soprattutto, confronta i dati con la fonte originale.

#Per approfondire

Questa guida si basa su componenti già descritti in dettaglio sul sito. Per approfondire in particolare l'installazione o il RAG:

Installare Ollama: Windows, macOS e Linux
Il punto di partenza per rendere disponibili i tuoi modelli in locale sulla porta 11434, se non hai ancora predisposto questa configurazione.
RAG locale con Ollama senza programmare (Open WebUI, AnythingLLM)
La guida di riferimento per configurare il componente RAG che interroga tutta la tua bibliografia, senza scrivere una riga di codice.
RAG locale con LM Studio: chattare con i propri documenti
Un'alternativa completa se preferisci LM Studio piuttosto che la coppia Ollama + interfaccia separata.
Questa guida ti è stata utile?

Un feedback, un errore, una precisazione? Facci sapere, così la guida migliora per tutti.