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.
- 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.
pip install libreyoloPrédire
Les poids sont téléchargés depuis Hugging Face au premier usage, puis mis en cache localement.
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)libreyolo predict model=LibreLingBotVisions-sem.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=Trueresult.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.
| Fichier | Entrée (px) | Licence des poids |
|---|---|---|
| semantic | ||
| LibreLingBotVisions-sem.pt | apache-2.0 | |
| LibreLingBotVisionb-sem.pt | apache-2.0 | |
| LibreLingBotVisionl-sem.pt | apache-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.
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)libreyolo train model=LibreLingBotVisions-sem.pt data=my-dataset.yaml \ epochs=20 imgsz=512 batch=16from libreyolo import LibreYOLO model = LibreYOLO("LibreLingBotVisions-sem.pt")model.train( data="my-dataset.yaml", epochs=20, imgsz=512, batch=16, freeze_backbone=False,)libreyolo train model=LibreLingBotVisions-sem.pt data=my-dataset.yaml \ epochs=20 device=0,1 batch=32Voir 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é.
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"])libreyolo val model=LibreLingBotVisions-sem.pt data=my-dataset.yamlExporter
| Tâche | ONNX | TorchScript | ExecuTorch | TensorRT | OpenVINO | Paddle | MNN | RKNN | ncnn | TFLite | CoreML | Core AI |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| semantic | semantic to ONNX : pris en charge | semantic to TorchScript : pris en charge | semantic to ExecuTorch : pris en charge | semantic to TensorRT : pris en charge | semantic to OpenVINO : pris en charge | semantic to Paddle : non pris en charge | semantic to MNN : non pris en charge | semantic to RKNN : non pris en charge | semantic to ncnn : non pris en charge | semantic to TFLite : non pris en charge | semantic to CoreML : non pris en charge | semantic 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.
from libreyolo import LibreYOLO model = LibreYOLO("LibreLingBotVisions-sem.pt")model.export(format="onnx", imgsz=512)model.export(format="coreai", imgsz=512)libreyolo export model=LibreLingBotVisions-sem.pt format=onnx imgsz=512from 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.
| Fichier | Entrée (px) | Licence des poids |
|---|---|---|
| semantic | ||
| LibreLingBotVisions-sem.pt | apache-2.0 | |
| LibreLingBotVisionb-sem.pt | apache-2.0 | |
| LibreLingBotVisionl-sem.pt | apache-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.