LingBot-Vision

LingBot-Vision est une famille de backbones vision transformer auto-supervisés, entraînés par masked modeling centré sur les contours pour la perception spatiale dense, publiée par Robbyant. LibreYOLO associe le backbone à une tête dense et le prend en charge pour une seule tâche, la segmentation sémantique.

Tâches
semantic
Tailles
Installer
pip install libreyolo
Niveau de support
Pris en charge, depuis v. Modèles entraînables complémentaires : maintenus au vert dans la CI, avec des fonctionnalités ajoutées selon les occasions.
Origine
LingBot-Vision par Robbyant (Ant Group), Apache-2.0. Article, source
Licences
Code Apache-2.0, poids Apache-2.0. Usage commercial

Installation

LingBot-Vision ne demande aucun extra optionnel. Tout ce qu'il importe fait partie de l'installation de base.

bash
pip install libreyolo

Prédire

Les poids sont téléchargés depuis Hugging Face au premier usage, puis mis en cache localement.

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreLingBotVisions-sem.pt")result = model(SAMPLE_IMAGE, save=True) mask = result.semantic_maskprint(mask.data.shape, mask.classes)
CLI
libreyolo predict model=LibreLingBotVisions-sem.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True

result.semantic_mask porte la carte dense des classes : .data est un tenseur (H, W) d'ids de classe à la taille d'origine de l'image, et .classes liste les ids de classe réellement présents. result.boxes vaut None, puisqu'il n'y a pas de détections par instance. conf et iou sont acceptés par parité d'API mais ne changent rien à la sortie, puisque le modèle renvoie une classe par pixel plutôt que des détections à filtrer. Voir la prédiction pour les sources, le streaming et le traitement des résultats.

Variantes

Trois tailles publiées, s, b et l, distillées depuis un enseignant ViT-g/16 de 1.1 milliard de paramètres. L'enseignant lui-même, taille g, se charge et se prête au fine-tuning dans LibreYOLO, mais LibreYOLO n'héberge pas de checkpoint g propre.

FichierEntrée (px)Licence des poids
semantic
LibreLingBotVisions-sem.ptapache-2.0
LibreLingBotVisionb-sem.ptapache-2.0
LibreLingBotVisionl-sem.ptapache-2.0

Tous les fichiers ci-dessus sont actuellement disponibles dans l<link>organisation LibreYOLO</link> et sont téléchargés à la première utilisation.

Entraîner

train() fait du fine-tuning sur un checkpoint publié. La recette par défaut est le linear probe du rapport d'amont : le backbone ViT est gelé et seule la tête dense 1x1 s'entraîne, ce qui correspond à la façon dont les poids hébergés par LibreYOLO ci-dessus ont été produits. Passez freeze_backbone=False pour faire du fine-tuning sur tout le réseau à la place, et attendez-vous à baisser lr0 en conséquence.

Python (linear probe)
from libreyolo import LibreYOLO # Backbone gelé par défaut, conformément au protocole d'évaluation# d'amont. Seule la tête dense 1x1 s'entraîne.model = LibreYOLO("LibreLingBotVisions-sem.pt")model.train(data="my-dataset.yaml", epochs=20, imgsz=512, batch=16)
CLI
libreyolo train model=LibreLingBotVisions-sem.pt data=my-dataset.yaml \  epochs=20 imgsz=512 batch=16
Fine-tune complet
from libreyolo import LibreYOLO model = LibreYOLO("LibreLingBotVisions-sem.pt")model.train(    data="my-dataset.yaml", epochs=20, imgsz=512, batch=16,    freeze_backbone=False,)
Multi-GPU
libreyolo train model=LibreLingBotVisions-sem.pt data=my-dataset.yaml \  epochs=20 device=0,1 batch=32

Voir l'entraînement pour les datasets, l'augmentation de données, le multi-GPU et les loggers.

Valider

val() renvoie un dictionnaire de clés metrics/ : mIoU et exactitude par pixel, mesurées sur n'importe quel dataset au format sur lequel vous avez entraîné.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreLingBotVisions-sem.pt")metrics = model.val(data="my-dataset.yaml") print(metrics["metrics/mIoU"])print(metrics["metrics/pixel_accuracy"])
CLI
libreyolo val model=LibreLingBotVisions-sem.pt data=my-dataset.yaml

Exporter

TâcheONNXTorchScriptExecuTorchTensorRTOpenVINOPaddleMNNRKNNncnnTFLiteCoreMLCore AI
semanticsemantic to ONNX : pris en chargesemantic to TorchScript : pris en chargesemantic to ExecuTorch : pris en chargesemantic to TensorRT : pris en chargesemantic to OpenVINO : pris en chargesemantic to Paddle : non pris en chargesemantic to MNN : non pris en chargesemantic to RKNN : non pris en chargesemantic to ncnn : non pris en chargesemantic to TFLite : non pris en chargesemantic to CoreML : non pris en chargesemantic to Core AI : pris en charge

Un artefact exporté se recharge via LibreYOLO() selon son extension de fichier, si bien qu'un fichier .onnx ou .engine se comporte comme un checkpoint et renvoie le même Results. L'export liste les arguments que chaque format accepte.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreLingBotVisions-sem.pt")model.export(format="onnx", imgsz=512)model.export(format="coreai", imgsz=512)
CLI
libreyolo export model=LibreLingBotVisions-sem.pt format=onnx imgsz=512
Utiliser le fichier exporté
from libreyolo import LibreYOLO, SAMPLE_IMAGE # La factory s'appuie sur l'extension du fichier, donc un artefact# exporté se charge comme un checkpoint et renvoie le même Results.model = LibreYOLO("LibreLingBotVisions-sem.onnx")result = model(SAMPLE_IMAGE) print(result.semantic_mask.data.shape)

Checkpoints

Tous les fichiers de poids publiés de cette famille.

FichierEntrée (px)Licence des poids
semantic
LibreLingBotVisions-sem.ptapache-2.0
LibreLingBotVisionb-sem.ptapache-2.0
LibreLingBotVisionl-sem.ptapache-2.0

Tous les fichiers ci-dessus sont actuellement disponibles dans l<link>organisation LibreYOLO</link> et sont téléchargés à la première utilisation.

Licence

Vérifiez la licence dans le dépôt Hugging Face des poids précis que vous téléchargez. Chaque checkpoint de l<link>organisation LibreYOLO</link> en possède une, et elles ne sont pas toujours identiques au sein dune même famille. Ce dépôt fait autorité ; le résumé ci-dessous décrit les conditions applicables lors de la dernière vérification de cette page.

Ceci décrit les licences concernées et ne constitue pas un conseil juridique. Si la réponse a une importance commerciale, lisez vous-même les licences et consultez votre propre avocat.

Travail d'origine
LingBot-Vision, Robbyant (Ant Group)
Licence du projet d'origine
Apache-2.0
Source du projet d'origine
github.com/robbyant/lingbot-vision
Code de LibreYOLO
MIT
Poids
Apache-2.0, republiés sur huggingface.co/LibreYOLO
Interprétation
Apache-2.0 is a permissive license, so these weights can be used in commercial and closed-source products. It asks you to keep its license text and attribution notices with any copy of the weights you redistribute, and it grants a patent license. The LibreYOLO-hosted checkpoints combine Robbyant's Apache-2.0 backbone weights with a dense segmentation head LibreYOLO trained itself, so the whole checkpoint file carries the same permissive terms end to end.

La version d'amont documente son ViT comme construit sur l'architecture DINOv2/DINOv3 publiée par Meta AI. Robbyant distribue son implémentation sous Apache-2.0, et ce portage LibreYOLO a été réalisé uniquement à partir du dépôt Robbyant, jamais à partir du code DINOv2 ou DINOv3 de Meta.

Citation

@article{lingbot-vision2026,
  title={Vision Pretraining for Dense Spatial Perception},
  author={Fu, Zelin and Tan, Bin and Sun, Changjiang and Liu, Shaohui and Zheng, Kecheng and Xu, Yinghao and Zhu, Xing and Shen, Yujun and Xue, Nan},
  journal={arXiv preprint arXiv:2607.05247},
  year={2026}
}

Copié depuis le bloc de citation des auteurs sur github.com/robbyant/lingbot-vision#-citation.

Vérifié avec LibreYOLO v1.5.0. Les tableaux de support, les checkpoints et les chiffres de benchmark de cette page sont générés à partir de la bibliothèque publiée et des poids publiés, et non rédigés à la main.