Voici rakedoc-nano : le VLM à poids ouverts à la fine pointe pour l’analyse de documents
Parse, propulsé par rakedoc-nano

Transformez vos fichiers en contenu structuré.

Un seul appel transforme un PDF, une numérisation, un fichier bureautique ou un enregistrement en markdown propre et en JSON structuré — avec une boîte englobante sur chaque bloc produit, pas seulement les tableaux et les images.

Comment ça fonctionne

Regardez la page avant de la payer.

La plupart des API d'analyse exécutent le même modèle sur chaque page et vous les facturent toutes. Nous acheminons d'abord. Trois pages sur quatre n'atteignent jamais un modèle.

  1. 01

    Envoyez le fichier. C'est toute la configuration.

    Aucun schéma, aucun gabarit, aucune configuration à préparer. Parse prend une URL ou un identifiant de fichier et décide comment le lire. Forcez la décision avec un seul champ quand vous savez déjà — la ROC sur une mauvaise télécopie, la transcription sur un enregistrement arrivé en PDF.

    POST /v1/parseprocessing: autoaucun schéma
  2. 02

    Le lire avec le plus petit outil qui suffit

    Un PDF nativement numérique a déjà une couche de texte. Une lettre à une colonne n'a aucune mise en page à résoudre. Ceux-là passent par un pipeline déterministe, sans GPU et sans frais. Seul le quart difficile — numérisations, tableaux denses, documents multicolonnes — atteint la ROC et rakedoc-nano.

    rakedoc-nano1.2B75 % gratuit
  3. 03

    Markdown pour les gens. JSON pour tout le reste.

    Une seule lecture produit deux artefacts. Du markdown qu'une personne peut ouvrir et qu'un modèle peut découper, et du JSON structuré qui porte les blocs, leur page et leur position. L'audio saute le markdown et retourne la transcription, avec une langue détectée et des segments minutés.

    output.markdownUrloutput.jsonUrl24 langues
  4. 04

    Chaque élément garde sa boîte

    Paragraphes, titres, éléments de liste, cellules de tableau, figures, notes — chacun revient avec le rectangle qu'il occupait. La plupart des services encadrent les images et les tableaux et laissent le texte en flux continu. Encadrer le texte, c'est ce qui permet ensuite de caviarder une clause, de signer à un ancrage, de citer une région source, ou de montrer à un vérificateur la cellule exacte d'où vient un chiffre.

    boîtes englobantespage + position
  5. 05

    Attendez, ou pas

    Un petit fichier revient terminé dans le même appel. Un long enregistrement ou une numérisation de 300 pages revient avec un identifiant à interroger, ou un webhook si vous préférez être avisé. Dans tous les cas, la lecture est conservée : passez le même identifiant de fichier à extract, redact ou sign et rien n'est analysé deux fois.

    202 + statuswebhookttl: 24h
Ce qu'il gère

Un seul point d'entrée. Tout ce qui arrive.

Le courrier ne se trie pas tout seul avant de vous arriver. Parse ne vous demande donc pas de le trier d'abord.

PDF nativement numériques
Le texte est déjà dans le fichier. Nous le lisons directement, gardons l'ordre de lecture, et ne facturons rien. C'est l'essentiel de ce que la plupart des équipes envoient.
Numérisations, télécopies et photos
Aucune couche de texte, pages de travers, un tampon sur le total. Ceux-là passent par la ROC et rakedoc-nano — le quart du trafic qui mérite qu'on y consacre un modèle.
Fichiers bureautiques
Word, Excel, PowerPoint et les autres sont convertis plutôt que photographiés : une feuille de calcul reste une grille au lieu de devenir l'image d'une grille.
Enregistrements, avec locuteurs
Transcription en 24 langues, avec identification optionnelle des locuteurs : chaque tour porte un locuteur et un minutage. La transcription revient en segments minutés, pas en un mur de texte.
Tableaux qui débordent d'une page
Un tableau de taux avec un en-tête à trois niveaux qui court sur deux pages reste un seul tableau, l'en-tête rattaché aux lignes qu'il coiffe. C'est le cas sur lequel nous avons le plus travaillé.
Lu une fois, réutilisé ensuite
La lecture est rattachée au fichier, pas à l'appel. Extract analyse déjà : vous n'appelez jamais Parse d'abord pour l'alimenter. Les fichiers expirent selon une durée que vous fixez, d'une seconde à sept jours.
Notre propre modèle

L'analyseur est le nôtre. Les poids aussi.

rakedoc-nano est le modèle qui lit le quart difficile. Il est premier parmi tous les modèles vision-langage sur ParseBench — modèles propriétaires de pointe inclus — et il est publié sur Hugging Face sous AGPL-3.0, pour que vous puissiez le vérifier vous-même.

  • 77.2 ParseBench, global Premier parmi les VLM, cinquième au total
  • 1.2 B Paramètres Tourne sur tout GPU de 8 Go, ~6 pages/s sur un H100
  • $0.60 Par 1 000 pages Au volume entreprise; 2 $ au tarif courant, et seulement sur les pages qui exigent un modèle
  • AGPL-3.0 Poids ouverts Exécutez-le, inspectez-le, ajustez-le, gardez les documents dans votre périmètre

Score global ParseBench — classement, incluant notre soumission

  1. LlamaParse Cost Effective 80,6
  2. rakedoc-nano le nôtre, poids ouverts 77,2
  3. florin-parser-nano ouvert 76,7
  4. Gemini 3 Flash 75,1
  5. Reducto (Agentic) 73,0
  6. Fable 5 70,8
  7. Datalab Accurate 70,0
  8. Opus 4.8 63,7
  9. Azure Document Intelligence 59,6
  10. Google Document AI 50,4
  11. AWS Textract 47,9

rakedoc-nano, par dimension

  • 86,4 Tableaux Devant toutes les API d'analyse sauf une
  • 88,8 Fidélité du contenu À 3,5 points du meilleur du banc
  • 71,7 Mise en forme sémantique Sixième au total, troisième parmi les VLM
  • 74,3 Ancrage Les boîtes, évaluées
  • 64,9 Graphiques La dimension dont nous sommes le moins fiers

Chaque chiffre ici vient du classement public ParseBench, y compris notre propre soumission. Notre score est la moyenne de trois exécutions complètes sur un seul H100; l'écart entre exécutions est resté sous ±0,2 sur chaque dimension. Les modèles sans prix publié figurent quand même au graphique. Nous préférons que vous vérifiiez les chiffres plutôt que de nous croire sur parole.

Ouvert par défaut

Un analyseur que vous pouvez emporter.

Nous publions les poids, la lignée, le commit exact du banc d'essai et le bruit mesuré entre les exécutions. Hébergez rakedoc-nano vous-même avec vLLM sur toute carte de 8 Go et aucun document ne quitte votre réseau. C'est étrange à donner, et c'était voulu — un analyseur est le plancher de tout ce qui se construit dessus, et un plancher que personne ne peut inspecter est un plancher sur lequel personne ne devrait se tenir.

Lire l'annonce

Placé en amont d'un plus gros modèle, un petit analyseur gagne sa place deux fois. Il réduit le nombre de jetons que le modèle en aval doit lire, et ses boîtes lui permettent de pointer un mot sur une page au lieu de le paraphraser. Envoyez-nous les documents qui le mettent en échec. C'est ainsi que la prochaine version est entraînée.

Parlons de la facture

Vous payez probablement pour lire des pages qui se lisent seules.

L'analyse est vendue à la page parce que c'est facile à facturer, pas parce que chaque page coûte le même prix à lire.

  • Facturation
    Ce que tout le monde facture Un tarif par page, peu importe ce qu'elle contient.
    Ce que nous facturons Rien pour les pages qu'une règle peut lire — trois sur quatre dans notre propre trafic. Le modèle n'est facturé que sur le quart qui l'exige.
  • Boîtes
    Ce que tout le monde facture Mise en page et structure des tableaux en options payantes.
    Ce que nous facturons Inclus, sur chaque élément, texte compris. Il n'existe aucune version de Parse qui retourne un flux de mots sans coordonnées.
  • Dépendance
    Ce que tout le monde facture Un modèle fermé, et une facture qui suit votre volume pour toujours.
    Ce que nous facturons Les poids sont sur Hugging Face sous AGPL-3.0. Auto-hébergez à forte utilisation et le coût marginal tombe sous 0,30 $ par 1 000 pages — sur votre matériel, avec notre bénédiction.
  • Preuve
    Ce que tout le monde facture Un chiffre marketing tiré d'une évaluation interne.
    Ce que nous facturons Un classement public, une demande de tirage soumise, le commit exécuté, et l'écart de ±0,2 sur trois exécutions. Reproduisez-le si vous voulez.
POST /v1/parse

Un appel. Markdown, JSON et boîtes.

Aucun schéma à définir d'abord, rien à configurer. Le deuxième appel ci-dessous est extract, réutilisant le même identifiant de fichier — la page est déjà lue, elle n'est donc pas relue.

import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

// 1 - Read the file. Routing is automatic; override it when you know better.
const run = await client.parse({
  body: { file: { url: "https://example.com/rate-filing.pdf" } },
});

console.log(run.output?.markdownUrl); // rendered markdown, time-limited URL
console.log(run.output?.jsonUrl);     // blocks, page, and position

// 2 - Every block carries the rectangle it came from
const parsed = await client.fetch(run.output!.jsonUrl);
for (const block of parsed.blocks) {
  console.log(block.type, block.page, block.bbox, block.text.slice(0, 60));
}

// 3 - The read is attached to the file, not the call. No second parse.
const data = await client.extract({
  body: {
    files: [{ id: run.file.id }],
    schema: {
      type: "object",
      properties: { effective_date: { type: ["string", "null"] } },
    },
    citations: true,
  },
});
console.log(data.output?.value);
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

# 1 - Read the file. Routing is automatic; override it when you know better.
run = client.parse(file={"url": "https://example.com/rate-filing.pdf"})

print(run.output.markdown_url)  # rendered markdown, time-limited URL
print(run.output.json_url)      # blocks, page, and position

# 2 - Every block carries the rectangle it came from
for block in client.fetch(run.output.json_url)["blocks"]:
    print(block["type"], block["page"], block["bbox"], block["text"][:60])

# 3 - The read is attached to the file, not the call. No second parse.
data = client.extract(
    files=[{"id": run.file.id}],
    schema={
        "type": "object",
        "properties": {"effective_date": {"type": ["string", "null"]}},
    },
    citations=True,
)
print(data.output.value)
Trois façons d'entrer

La même lecture. Pas le même métier.

Les trois chemins diffèrent sur qui fait l'appel. Ce qui revient, c'est le même markdown, le même JSON et les mêmes boîtes.

Pour les développeurs
Un point d'entrée, aucun schéma, et un palier gratuit qui couvre des milliers de pages par mois. SDK Python et TypeScript, une interface en ligne de commande, et des exemples à coller. Les longues tâches reviennent en identifiant d'exécution ou en webhook, selon ce que vous préférez tenir ouvert.
Voir l'API
Pour les équipes
Personne ne clique sur un bouton Parse. Il s'exécute comme première étape d'une automatisation : quand une file s'ouvre, les documents qu'elle contient sont déjà lisibles, cherchables et adressables jusqu'à la cellule.
Voir l'espace de travail
Pour les agents
Une seule connexion MCP et un agent peut lire un document avant de raisonner dessus. Un markdown plus propre, c'est moins de jetons; et les boîtes permettent à la réponse de pointer la page au lieu de la paraphraser.
Voir les agents
Où aller ensuite

Parse est la première étape de la plupart des autres.

Extract, redact, fill, compose, redline et sign commencent tous par lire la page. La même fondation, une seule lecture.

Split
Une trousse contenant six documents s'analyse comme un seul long fichier. Découpez-la d'abord et chaque pièce devient un document lisible et adressable.
Voir Split
Commencer

Envoyez-nous la page qui le met en échec.

Le palier gratuit couvre des milliers de pages par mois, et les pages qu'une règle peut lire ne comptent jamais. Pointez Parse vers votre pire document et lisez ce qui revient.