
RAGFlow: motore RAG open-source con deep document understanding
Scheda tecnica su RAGFlow, il progetto InfiniFlow per costruire knowledge base conversazionali accurate, citabili e adatte a documenti complessi.
Cos'è
RAGFlow è un motore open-source di Retrieval-Augmented Generation (RAG) sviluppato dal team InfiniFlow. Il progetto offre una piattaforma end-to-end per trasformare documenti aziendali eterogenei in una knowledge base conversazionale capace di alimentare modelli di linguaggio di grandi dimensioni (LLM) con contesto rilevante, verificabile e ben strutturato.
A differenza di molti framework RAG che trattano i documenti come semplice testo flat, RAGFlow pone al centro il cosiddetto deep document understanding: l'analisi profonda della struttura, del layout e della semantica dei contenuti prima che avvenga l'indicizzazione. L'obiettivo è mantenere il significato originale di tabelle, paragrafi, titoli, formule e immagini, riducendo la perdita di informazione tipica di approcci di chunking troppo semplici.
Il progetto è distribuito sotto licenza Apache 2.0 ed è scritto principalmente in Python, con un'interfaccia utente realizzata in React/TypeScript. Può essere installato on-premise tramite Docker Compose ed è disponibile anche una versione cloud gestita (RAGFlow Cloud).
Il problema che risolve
Le architetture RAG standard spesso falliscono su documenti reali perché suddividono il testo in blocchi di dimensione fissa senza comprendere la struttura del documento. Il risultato sono frammenti privi di contesto, tabelle spezzate, citazioni errate e risposte del modello che "allucinano" o si basano su passaggi fuorvianti.
RAGFlow affronta questo problema a monte, migliorando la qualità dell'ingestione. La sua logica è sintetizzabile nel motto del progetto: "Quality in, quality out". Se i documenti vengono analizzati, suddivisi e indicizzati in modo semantico, il recupero successivo sarà più accurato e le risposte generate dagli LLM più affidabili.
Il sistema è pensato per organizzazioni che devono interrogare grandi volumi di documenti non strutturati — contratti, report finanziari, manuali tecnici, pubblicazioni scientifiche, slide, scansioni — senza rinunciare alla tracciabilità delle fonti.
Come funziona
Il flusso di lavoro di RAGFlow si articola in quattro fasi principali:
-
Ingestione e parsing: i documenti vengono caricati in diverse modalità — upload manuale, sincronizzazione da fonti esterne come pagine web, S3, Notion, Confluence, Google Drive — e analizzati dal modulo DeepDoc. Questo motore esegue riconoscimento del layout, OCR, estrazione di tabelle e comprensione multimodale (ad esempio immagini incorporate in PDF o DOCX).
-
Chunking semantico: il contenuto non viene spezzato a caso, ma organizzato in chunk secondo template configurabili. L'utente può intervenire visivamente sul risultato della segmentazione, correggendo o ottimizzando i blocchi prima dell'indicizzazione.
-
Indicizzazione e retrieval: i chunk vengono indicizzati utilizzando modelli di embedding configurabili. Al momento della query il sistema attiva più strategie di recupero (ricerca vettoriale densa, ricerca full-text, tecniche di re-ranking) e fonde i risultati per restituire i passaggi più rilevanti.