Mistral OCR 3 guida completa: estrazione dati e Vision API

Mistral AI ha annunciato Mistral OCR 3, un modello di visione e linguaggio pensato per convertire documenti in dati strutturati. Rispetto a un OCR basato sulla sola trascrizione, il modello punta a conservare anche layout, tabelle e relazioni tra gli elementi della pagina.
Il modello, identificato nell'API come mistral-ocr-2512, viene presentato per scenari come tabelle annidate, scrittura a mano e scansioni a bassa risoluzione. Mistral dichiara una velocità fino a 2.000 pagine al minuto in una configurazione specifica; il valore non va generalizzato a ogni documento o infrastruttura.
Oltre la trascrizione: la comprensione del layout
La sfida principale dei modelli OCR classici risiede nella perdita della struttura spaziale. Mistral OCR 3 affronta il problema trattando il documento come un artefatto visivo complesso. Il modello non si limita a riconoscere i token testuali, ma ricostruisce attivamente la gerarchia del documento. Questo include l'identificazione di intestazioni, piè di pagina e liste puntate, restituendo un output nativo in Markdown.
Il modello è presentato per documenti con caratteri compressi, scansioni distorte e immagini a bassa risoluzione. Le operazioni di normalizzazione e correzione dell'orientamento dipendono dall'implementazione dell'API e vanno verificate sui documenti reali.
Gestione avanzata di tabelle e handwriting
Uno dei punti di forza dichiarati di Mistral OCR 3 è la ricostruzione delle tabelle. Mentre molti sistemi estraggono i dati in modo sequenziale, rompendo la correlazione tra righe e colonne, questo modello genera rappresentazioni HTML arricchite. Vengono preservati attributi fondamentali come colspan e rowspan, permettendo ai sistemi downstream di interrogare i dati tabellari senza perdita di contesto strutturale.
Tra le funzionalità dichiarate c'è il supporto alla scrittura a mano e alle annotazioni sovrapposte a moduli stampati. In ambiti legale e sanitario, questi casi richiedono comunque una verifica campionaria perché qualità dell'immagine, grafia e dominio influenzano il risultato.
Benchmark e prestazioni a confronto
In termini di accuratezza, Mistral dichiara un win rate del 74% rispetto a Mistral OCR 2. Si tratta di test interni su dataset descritti dall'azienda; il confronto con Google Document AI e Azure AI Vision va quindi verificato considerando dataset, prompt, metriche e configurazioni equivalenti.
Il modello dichiara il supporto a oltre 100 lingue, inclusi script da destra a sinistra (RTL) come arabo ed ebraico. La dimensione dei pesi, indicata in circa 1,5 miliardi di parametri, può favorire la latenza rispetto a modelli generalisti, ma il risultato dipende da infrastruttura, formato e documento.
Integrazione tecnica e casi d'uso
Gli sviluppatori possono accedere al modello tramite l'endpoint /v1/ocr o utilizzare il Document AI Playground in Mistral AI Studio. L'API accetta PDF tramite document_url o immagini in formato PNG e JPEG via image_url. È possibile richiedere output specifici come coordinate dei bounding box per ogni blocco di testo o immagini base64 integrate direttamente nella risposta JSON.
Il prezzo indicato è di 2 dollari per 1.000 pagine, con una tariffa dichiarata di 1 dollaro usando la Batch API. Il costo reale dipende da formato, volume, opzioni di output e condizioni del servizio. Il modello può essere inserito in pipeline RAG, ma la qualità dell'estrazione va valutata prima di indicizzare grandi collezioni.
Come usare Mistral OCR 3 in Python
Per integrare Mistral OCR 3 nei propri workflow Python, è necessario utilizzare l'SDK ufficiale mistralai. Il modello può processare sia documenti accessibili tramite URL pubblico sia file locali caricati preventivamente sui server di Mistral.
Installazione e configurazione
Per prima cosa, installa la libreria necessaria tramite pip:
pip install mistralai
Esempio con un URL di documento
Il metodo più rapido per testare il modello mistral-ocr-2512 consiste nel passare un URL diretto a un file PDF o a un'immagine. L'esempio seguente mostra come configurare la richiesta per ottenere un output in Markdown con tabelle formattate in HTML.
import os
from mistralai import Mistral
# Inizializzazione del client (assicurati di aver impostato la variabile d'ambiente)
api_key = os.environ.get("MISTRAL_API_KEY")
client = Mistral(api_key=api_key)
# Elaborazione di un documento remoto
ocr_response = client.ocr.process(
model="mistral-ocr-2512",
document={
"type": "document_url",
"document_url": "https://arxiv.org/pdf/2310.06825.pdf"
},
table_format="html", # Preserva la struttura complessa delle tabelle
include_image_base64=True # Include i dati delle immagini per workflow RAG
)
# Stampa del contenuto Markdown della prima pagina
print(ocr_response.pages[0].markdown)
Elaborazione di file locali
Per elaborare file salvati localmente, è necessario seguire una procedura in due step: caricamento del file (upload) e successiva chiamata al motore OCR.
from pathlib import Path
# Caricamento del file locale
file_path = Path("contratto_scansionato.pdf")
with open(file_path, "rb") as f:
uploaded_file = client.files.upload(
file={
"file_name": file_path.name,
"content": f.read(),
},
purpose="ocr"
)
# Generazione di un URL firmato temporaneo per l'elaborazione
signed_url = client.files.get_signed_url(file_id=uploaded_file.id)
# Processamento OCR
response = client.ocr.process(
model="mistral-ocr-latest",
document={
"type": "document_url",
"document_url": signed_url.url
}
)
# Aggregazione di tutto il testo del documento
full_text = "\n\n".join([page.markdown for page in response.pages])
print(full_text)
Note tecniche sui parametri
- table_format: Impostandolo su "html", il modello ricostruisce le gerarchie di righe e colonne, fondamentale per tabelle con celle unite.
- include_image_base64: Se attivato, la risposta JSON conterrà le immagini estratte in formato base64, permettendo di ricostruire il documento visuale lato applicazione.
- model: Utilizzare
mistral-ocr-2512per fissare la versione specifica del rilascio di dicembre 2025 omistral-ocr-latestper puntare sempre all'ultima versione stabile.
Perché Mistral OCR 3 è utile nella Document AI
Il rilascio di Mistral OCR 3 si inserisce nella categoria dei sistemi di Document AI che collegano documenti visivi e modelli linguistici. L'output in JSON o Markdown può ridurre parte del post-processing, ma non elimina la necessità di controlli su tabelle, numeri, firme e campi sensibili.
Il valore pratico di Mistral OCR 3 dipenderà quindi dalla qualità dell'estrazione su documenti reali e dal costo della verifica. È più corretto considerarlo un componente per pipeline documentali, non un sostituto automatico della revisione umana nei flussi ad alto rischio.