Congratulazioni a Docling, che questo mese è entrato tra i repository più popolari su GitHub.

Le organizzazioni dispongono di enormi quantità di dati: dalla proprietà intellettuale e dal patrimonio di conoscenze alle informazioni su marketing, vendite e clienti, fino a policy, procedure operative e molto altro.  La vera sfida non è raccogliere i dati o creare documenti, ma riuscire a ricavarne informazioni realmente utili. Quando dai dati si ricavano informazioni fruibili, è possibile offrire un servizio migliore ai clienti, ridurre il tempo necessario per generare valore e semplificare le attività operative. L'IA generativa (IA gen) promette di colmare questo divario, trasformando la mole di dati delle organizzazioni in conoscenze strategiche.

Le potenzialità dell'IA gen, tuttavia, restano inespresse quando i dati sono racchiusi in formati che un modello linguistico di grandi dimensioni (LLM) non è in grado di elaborare direttamente. È il caso dei file pdf o dei formati di documento proprietari, come docx, che possono diventare un ostacolo all'allineamento del modello con le esigenze dell'organizzazione. Per superare queste difficoltà, le organizzazioni devono convertire i documenti esistenti in formati utilizzabili dalle pipeline di fine tuning o per implementare soluzioni basate sulla retrieval augmented generation (RAG).

Non si tratta di un semplice processo di OCR o di estrazione del testo. In questa fase di preelaborazione è fondamentale estrarre i dati preservandone il contesto e riconoscendo correttamente i diversi elementi del documento. Ad esempio, una tabella distribuita su più pagine deve essere ricostruita come un'unica tabella. Analogamente, quando un documento presenta un layout a più colonne oppure combina elementi come immagini e tabelle, ciascun elemento deve essere estratto in modo coerente e mantenere il legame con il contesto originale.

Negli anni sono nati molti strumenti open source per affrontare uno o più aspetti di questa problematica, ma nessuno ha offerto una soluzione completa. Di conseguenza, le organizzazioni si sono trovate a dover realizzare pipeline complesse, integrare strumenti scollegati tra loro ed elaborare più volte gli stessi documenti con strumenti diversi. Ne derivano risultati incoerenti, costi computazionali elevati, una manutenzione complessa e una qualità dell'output variabile.

Le stesse sfide si sono presentate anche durante la realizzazione delle pipeline di elaborazione dei documenti per il fine tuning dei modelli con InstructLab. È in quel contesto che abbiamo scoperto e adottato Docling, un progetto sviluppato da IBM Research che ha rivoluzionato il nostro flusso di lavoro. Dal rilascio di Docling come progetto open source da parte di IBM, nell'autunno del 2024, lo strumento ha rapidamente conquistato un ruolo di primo piano nel campo dell'NLP, dimostrando il valore della nostra scelta di adottarlo fin da subito. Siamo entusiasti di assistere alla sua crescente diffusione nell'ecosistema open source dell'IA gen.

Docling in breve

Docling è un progetto e uno strumento open source upstream che permette di analizzare documenti in diversi formati, tra cui .pdf, .docx, .pptx e html, e convertirli in formati come Markdown o JSON, così da preparare più facilmente i contenuti per le applicazioni di IA gen. Offre funzionalità avanzate per l'elaborazione dei PDF e il riconoscimento ottico dei caratteri (OCR) dei documenti scansionati, oltre all'integrazione con strumenti come LlamaIndex e LangChain per lo svolgimento di attività basate su RAG e question answering.

How the Docling process works

Fonte: https://github.com/DS4SD/docling?tab=readme-ov-file

Prova Docling in prima persona

Ti basta installare Docling con il tuo gestore di pacchetti, ad esempio pip:

# pip install docling

Una volta installato, puoi convertire i documenti direttamente dal tuo modulo Python oppure utilizzare la CLI di Docling.

from docling.document_converter import DocumentConverter source = "https://arxiv.org/pdf/2408.09869"  # PDF path or URL converter = DocumentConverter() result = converter.convert(source) print(result.document.export_to_markdown())  # output: "### Docling Technical Report[...]" # docling https://arxiv.org/pdf/2206.01062

Per ulteriori opzioni di configurazione della conversione dei dati e informazioni dettagliate, consulta il repository del progetto.

Docling è già all'opera

La community di InstructLab utilizza già Docling per preparare e inviare set di dati pubblici alla tassonomia di InstructLab. Accedendo a https://ui.instructlab.ai/, gli utenti possono inviare i propri set di dati affinché vengano inclusi nelle future versioni del modello open source granite-lab della community InstructLab. Il modello granite-lab si basa sul modello open source Granite-7b, personalizzato con InstructLab per integrare nuove conoscenze e competenze messe a disposizione dai membri della community. La prossima release di granite-lab utilizzerà come base il modello open source Granite-3.0-8b ed è in fase di personalizzazione con InstructLab. Questo servizio utilizza Docling per convertire i documenti degli utenti nel formato richiesto dalla tassonomia di InstructLab, semplificando l'invio dei documenti destinati ad arricchire la base di conoscenza.  Gli stessi strumenti possono essere utilizzati anche per personalizzare istanze private dei propri modelli. 

Contributing knowledge to InstructLab with Docling

Red Hat e Docling

All'inizio di quest'anno Red Hat ha introdotto Red Hat Enterprise Linux AI (RHEL AI) e InstructLab con l'obiettivo di estendere queste funzionalità anche ai clienti enterprise. RHEL AI è una piattaforma per modelli fondativi progettata per il mondo enterprise, che integra funzionalità open source di IA gen ed è ottimizzata per il deployment negli ambienti di cloud ibrido. Unisce gli LLM open source Granite di IBM agli strumenti InstructLab di Red Hat, permettendo anche agli esperti di dominio, oltre che ai data scientist, di personalizzare i modelli con conoscenze specifiche del settore e adattarli alle esigenze e ai dati della propria organizzazione. I modelli possono quindi essere distribuiti e gestiti in ambienti di cloud ibrido, dai data center aziendali ai cloud pubblici fino agli ambienti edge.

Abbiamo accolto con entusiasmo la scelta di IBM Research di rendere Docling open source e di continuare a investire nell'innovazione in questo campo, favorendo una più ampia adozione dell'IA gen.  Nelle prossime versioni di RHEL AI intendiamo integrare Docling come funzionalità supportata, semplificando l'acquisizione dei dati aziendali privati in diversi formati. I clienti potranno quindi utilizzare tali dati con InstructLab per la generazione di dati sintetici e l'addestramento dei modelli in RHEL AI, personalizzando le proprie istanze di modello.

Docling rappresenta un'importante innovazione per la community open source e offre vantaggi concreti agli utenti. Siamo lieti di poter estendere questi benefici anche agli utenti di RHEL AI. È straordinario vedere con quale rapidità i progetti open source stiano rendendo l'IA gen sempre più accessibile. Siamo orgogliosi di supportare queste community upstream e di trasformare questa innovazione in funzionalità enterprise-ready per i nostri clienti.

Guarda questo video per saperne di più 

Prova prodotto

Red Hat Enterprise Linux AI | Versione di prova

Scarica la versione di prova gratuita di 60 giorni di Red Hat Enterprise Linux AI, una piattaforma ottimizzata per l'esecuzione di LLM.

Sull'autore

William is a Product Manager in Red Hat's AI Business Unit and is a seasoned professional and inventor at the forefront of artificial intelligence. With expertise spanning high-performance computing, enterprise platforms, data science, and machine learning, William has a track record of introducing cutting-edge technologies across diverse markets. He now leverages this comprehensive background to drive innovative solutions in generative AI, addressing complex customer challenges in this emerging field. Beyond his professional role, William volunteers as a mentor to social entrepreneurs, guiding them in developing responsible AI-enabled products and services. He is also an active participant in the Cloud Native Computing Foundation (CNCF) community, contributing to the advancement of cloud native technologies.

UI_Icon-Red_Hat-Close-A-Black-RGB

Ricerca per canale

automation icon

Automazione

Novità sull'automazione IT di tecnologie, team e ambienti

AI icon

Intelligenza artificiale

Aggiornamenti sulle piattaforme che consentono alle aziende di eseguire carichi di lavoro IA ovunque

open hybrid cloud icon

Hybrid cloud open source

Scopri come affrontare il futuro in modo più agile grazie al cloud ibrido

security icon

Sicurezza

Le ultime novità sulle nostre soluzioni per ridurre i rischi nelle tecnologie e negli ambienti

edge icon

Edge computing

Aggiornamenti sulle piattaforme che semplificano l'operatività edge

Infrastructure icon

Infrastruttura

Le ultime novità sulla piattaforma Linux aziendale leader a livello mondiale

application development icon

Applicazioni

Approfondimenti sulle nostre soluzioni alle sfide applicative più difficili

Virtualization icon

Virtualizzazione

Il futuro della virtualizzazione negli ambienti aziendali per i carichi di lavoro on premise o nel cloud