Masques d'objets décrits en mots et transcription de pages
Falcon-Perception est le code d'inférence de deux modèles vision-langage du Technology Innovation Institute (TII) d'Abou Dabi. Falcon Perception (0,6 milliard de paramètres) reçoit une image et une requête en langage naturel, et renvoie les boîtes et les masques des objets décrits. Falcon OCR (270 millions de paramètres) reprend l'architecture pour transcrire une page en texte, en formules LaTeX ou en tableaux HTML, avec un moteur qui étend celui de Perception.
Le comparatif des outils d'OCR open source met Falcon OCR face aux moteurs OCR classiques et aux convertisseurs de documents vers Markdown.
Moteur à cache KV paginé, backend MLX sans PyTorch
- Une requête en mots suffit : « le chat de gauche » donne boîtes et masques au pixel.
- Code et poids sous Apache 2.0 : les deux modèles sur Hugging Face suivent la licence du code.
- Moteur paginé : cache KV paginé, batching continu, graphes CUDA, mise en pause des séquences quand la mémoire manque. L'attention passe par FlexAttention de PyTorch, sans noyau écrit à la main.
- Backend MLX : sur Mac, aucune dépendance à PyTorch ni à transformers.
- OCR de bout en bout par défaut : la page entière part au modèle. Le mode avec détection de mise en page, que le README réserve aux pages très denses, télécharge en plus PP-DocLayoutV3, un modèle issu de PaddleOCR.
Isoler un objet, transcrire un reçu, exposer une API OpenAI
- Isoler un objet décrit en mots dans une photo, ou le suivre dans une vidéo (un notebook du dépôt le montre).
- Transcrire reçus, notes manuscrites ou scans, formules et tableaux compris.
- Servir Falcon OCR derrière une API compatible OpenAI avec l'image Docker, qui accepte aussi les PDF.
GPU NVIDIA ou Mac Apple Silicon, serveur REST sans authentification
Le matériel attendu est un GPU NVIDIA sous Linux ou un Mac Apple Silicon. Sous Linux, l'installation recommandée (uv) tire PyTorch pour CUDA 12.8, qui exige un pilote NVIDIA 570 ou plus récent. Le README ne documente ni CPU ni GPU AMD. Le serveur et le moteur paginé reposent sur CUDA ; sur Mac, MLX n'offre que le moteur par lots. Le code dimensionne le cache par paliers de mémoire à partir de 15 Gio, mais un utilisateur de deux RTX 3090 a vu le serveur réclamer 56 Gio au démarrage (issue #5, ouverte depuis avril).
Le serveur REST n'a aucune authentification documentée et écoute par défaut sur 0.0.0.0. Le 30 septembre 2026, un rapporteur a annoncé publiquement une faille exploitable sans authentification dans l'API HTTP (issue #37), sans la détailler faute de canal privé : le dépôt n'a ni SECURITY.md ni signalement privé de vulnérabilité. Au 7 octobre, l'issue est sans réponse.
TII présente Falcon Perception comme un Transformer unique pour l'image et le texte, à la place d'un encodeur de vision accolé à un décodeur de texte. Le billet d'annonce de TII reconnaît que Falcon Perception reste derrière SAM 3 pour juger si l'objet demandé figure dans l'image. Côté OCR, le README annonce Falcon OCR 1.5 environ trois fois plus petit que PaddleOCR-VL et environ vingt fois plus petit que Chandra 2, le modèle de Chandra, dont les poids relèvent d'une licence OpenRAIL-M modifiée qui restreint l'usage commercial.
Falcon-Perception vise qui veut lire ou modifier un moteur d'inférence de VLM. Le README présente le moteur comme « minimal, lisible mais performant ». Pour l'OCR seul en production, il oriente vers l'image Docker vLLM ; le modèle Perception, lui, ne passe pas par vLLM, selon le mainteneur.
Le projet est en bêta, avec une seule version publiée : la 1.0.0, sur PyPI le 7 avril 2026. Les ajustements pour Falcon OCR 1.5 (11 septembre 2026) ne sont que dans la branche principale, et le README installe depuis les sources. Le code de fine-tuning, que le mainteneur disait en préparation le 8 avril 2026, n'est toujours pas publié.
