Kosmos-2

Kosmos-2 est le modèle de grounding de Microsoft : il légende une image, puis localise par une boîte chaque groupe nominal de cette légende. LibreYOLO l'enveloppe en détecteur d'objets à vocabulaire ouvert : fournissez la liste de classes au moment de la prédiction.

Tâches
detection
Tailles
224 at 224 px
Installer
pip install libreyolo
Niveau de support
Niveau parallèle, depuis v. Une interface produit distincte avec sa propre factory et son propre contrat.
Origine
Kosmos-2 par Microsoft, MIT. Article, source
Licences
Code MIT, poids MIT. Usage commercial

Installation

Kosmos-2 appartient au niveau « VLM comme détecteur » de LibreYOLO, une surface produit distincte des familles à base de checkpoints, avec sa propre factory. Il demande l'extra vlm.

bash
pip install "libreyolo[vlm]"

Prédire

Les poids sont téléchargés depuis Hugging Face au premier usage, puis mis en cache localement. LibreYOLO charge directement le dépôt microsoft/kosmos-2-patch14-224 de Microsoft lui-même ; contrairement à Florence-2, aucun ré-hébergement communautaire n'est nécessaire ici.

Python
from libreyolo import LibreVLM, SAMPLE_IMAGE model = LibreVLM("kosmos-2")model.set_classes(["boat", "person"])result = model.predict(SAMPLE_IMAGE, save=True) for box in result.boxes:    print(box.cls, box.conf, box.xyxy)
Vidéo
from libreyolo import LibreVLM model = LibreVLM("kosmos-2")model.set_classes(["boat", "person"]) # Toute source acceptée par la bibliothèque : fichier, dossier, URL,# index de webcam, flux RTSP ou liste .streamsfor result in model.predict("clip.mp4", stream=True, save=True):    print(len(result.boxes))

Cette famille se charge via la factory LibreVLM(), et non LibreYOLO() : les familles VLM ne déclarent aucun chargeur de checkpoint, si bien que le routage par suffixe de fichier décrit sur les autres pages de modèles ne s'applique pas ici. set_classes() définit le vocabulaire que Kosmos-2 doit trouver ; il est rémanent, donc il reste actif pour tous les appels predict()/track() suivants jusqu'à ce que vous le redéfinissiez. Kosmos-2 fait le grounding de groupes nominaux plutôt que de faire correspondre une étiquette à l'identique, si bien que le wrapper de LibreYOLO accepte une correspondance partielle : une classe nommée "boat" correspond aussi à un groupe généré comme « the boats ». Chaque détection porte la même confiance de remplissage, si bien que le filtrage par conf est tout ou rien plutôt qu'un classement, et iou n'a aucun effet ici, puisque le wrapper construit la liste des détections directement à partir des entités ancrées, sans étape de déduplication. chat() lève NotImplementedError, car Kosmos-2 est piloté par un prompt <grounding> et non par un template de chat. Le CLI de LibreYOLO ne couvre pas ce niveau : il n'existe pas de forme libreyolo predict model=... pour lui. Voir la prédiction pour les sources, le streaming et le traitement des résultats.

Variantes

Une seule taille : kosmos-2-patch14-224, en 224 px, chargée avec LibreVLM("kosmos-2"). C'est un modèle de 2023, et le wrapper de LibreYOLO note lui-même que son grounding est plus grossier que celui des détecteurs plus récents de ce niveau.

LibreYOLO n'entraîne, ne valide ni n'exporte Kosmos-2 : train(), val() et export() lèvent tous NotImplementedError pour chaque famille de ce niveau (voir le niveau de prise en charge ci-dessus). Faites du fine-tuning de Kosmos-2 en amont et chargez les poids obtenus si vous avez besoin d'un vocabulaire personnalisé figé dans le modèle ; contrôlez la sortie de predict() à l'œil plutôt qu'avec une passe de validation à la COCO, puisque chaque détection porte la même confiance de remplissage.

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
Kosmos-2, Microsoft
Licence du projet d'origine
MIT
Code de LibreYOLO
MIT
Poids
MIT, distribués par leurs auteurs. LibreYOLO ne les héberge pas et n'en fournit pas de miroir.
Interprétation
MIT is a permissive license, so these weights can be used in commercial and closed-source products, provided the copyright notice and license text travel with any copy you redistribute. LibreYOLO downloads Microsoft's own microsoft/kosmos-2-patch14-224 repository directly; unlike Florence-2, no community re-upload is needed for it to load on current transformers.

Citation

@article{kosmos-2,
  title={Kosmos-2: Grounding Multimodal Large Language Models to the World},
  author={Zhiliang Peng and Wenhui Wang and Li Dong and Yaru Hao and Shaohan Huang and Shuming Ma and Furu Wei},
  journal={ArXiv},
  year={2023},
  volume={abs/2306}
}

Copié depuis le bloc de citation des auteurs sur github.com/microsoft/unilm/blob/master/kosmos-2/README.md#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.