Kosmos-2

Kosmos-2 ist das Grounding-Modell von Microsoft: Es beschreibt ein Bild und lokalisiert anschließend jede Nominalphrase dieser Beschreibung mit einer Box. LibreYOLO bindet es als Open-Vocabulary-Objektdetektor ein. Gib die Klassenliste bei der Vorhersage an.

Aufgaben
detection
Größen
224 at 224 px
Installation
pip install libreyolo
Supportstufe
Geschwisterstufe, seit v. Eine separate Produktoberfläche mit eigener Factory und eigenem Vertrag.
Upstream
Kosmos-2 von Microsoft, MIT. Publikation, Quelle
Lizenzen
Code MIT, Gewichte MIT. Kommerzielle Nutzung

Installation

Kosmos-2 gehört zur VLM-als-Detektor-Stufe von LibreYOLO. Sie bildet eine eigene Produktoberfläche mit eigener Factory und unterscheidet sich von den Checkpoint-basierten Familien. Dafür wird das Extra vlm benötigt.

bash
pip install "libreyolo[vlm]"

Vorhersage

Die Gewichte werden bei der ersten Verwendung von Hugging Face heruntergeladen und lokal zwischengespeichert. LibreYOLO lädt direkt aus dem eigenen Repository microsoft/kosmos-2-patch14-224 von Microsoft. Anders als bei Florence-2 ist hier kein erneuter Upload durch die Community erforderlich.

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)
Video
from libreyolo import LibreVLM model = LibreVLM("kosmos-2")model.set_classes(["boat", "person"]) # Jede von der Bibliothek unterstützte Quelle: Datei, Ordner, URL,# Webcam-Index, RTSP-Stream oder eine .streams-Listefor result in model.predict("clip.mp4", stream=True, save=True):    print(len(result.boxes))

Diese Familie wird über die Factory LibreVLM() und nicht über LibreYOLO() geladen. VLM-Familien deklarieren keinen Checkpoint-Loader. Daher gilt das auf anderen Modellseiten beschriebene Routing nach Dateiendung hier nicht. set_classes() legt das Vokabular fest, nach dem Kosmos-2 suchen soll. Die Einstellung bleibt über alle späteren Aufrufe von predict() und track() hinweg aktiv, bis du sie erneut setzt. Kosmos-2 verankert Nominalphrasen, anstatt ein Label exakt abzugleichen. Der Wrapper von LibreYOLO akzeptiert deshalb auch Teilübereinstimmungen: Eine Klasse namens "boat" passt auch zu einer generierten Phrase wie „the boats“. Jede Erkennung trägt dieselbe Platzhalter-Confidence. Die Filterung mit conf entscheidet daher nur zwischen allen oder keinen Ergebnissen, statt diese zu ordnen. iou hat hier keine Wirkung, weil der Wrapper die Erkennungsliste ohne Deduplizierungsschritt direkt aus den verankerten Entitäten erstellt. chat() löst NotImplementedError aus, da Kosmos-2 durch einen <grounding>-Prompt und nicht durch ein Chat-Template gesteuert wird. Die CLI von LibreYOLO deckt diese Stufe nicht ab: Eine Form wie libreyolo predict model=... gibt es dafür nicht. Unter Vorhersage findest du Informationen zu Quellen, Streaming und Ergebnisverarbeitung.

Varianten

Es gibt eine Größe: kosmos-2-patch14-224 mit 224 px. Sie wird als LibreVLM("kosmos-2") geladen. Das Modell stammt aus dem Jahr 2023, und der LibreYOLO-Wrapper weist darauf hin, dass sein Grounding gröber als das der neueren Detektoren dieser Stufe ist.

LibreYOLO trainiert, validiert und exportiert Kosmos-2 nicht: train(), val() und export() lösen für jede Familie dieser Stufe NotImplementedError aus (siehe die oben genannte Support-Stufe). Führe das Fine-Tuning von Kosmos-2 im Upstream-Projekt durch und lade die resultierenden Gewichte, wenn du ein fest integriertes benutzerdefiniertes Vokabular benötigst. Prüfe die Ausgabe von predict() visuell statt mit einem Validierungsdurchlauf im COCO-Stil, da jede Erkennung dieselbe Platzhalter-Confidence trägt.

Lizenzierung

Prüfe die Lizenz im Hugging-Face-Repository der konkreten Gewichte, die du herunterlädst. Jeder Checkpoint in der LibreYOLO-Organisation hat eine Lizenz, und sie ist innerhalb einer Familie nicht immer gleich. Dieses Repository ist die maßgebliche Quelle. Die Zusammenfassung unten beschreibt den Stand bei der letzten Verifizierung dieser Seite.

Dies ist eine Beschreibung der beteiligten Lizenzen und keine Rechtsberatung. Wenn die Antwort kommerziell relevant ist, lies die Lizenzen selbst und hole eigenen Rechtsrat ein.

Originalarbeit
Kosmos-2, Microsoft
Upstream-Lizenz
MIT
LibreYOLO-Code
MIT
Gewichte
MIT, von den Autoren verbreitet. LibreYOLO hostet oder spiegelt sie nicht.
Einordnung
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.

Zitieren

@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}
}

Aus dem Zitierblock der Autoren unter github.com/microsoft/unilm/blob/master/kosmos-2/README.md#citation kopiert.

Mit LibreYOLO v1.5.0 verifiziert. Supporttabellen, Checkpoints und Benchmarkwerte auf dieser Seite werden aus der veröffentlichten Bibliothek und den publizierten Gewichten generiert und nicht von Hand geschrieben.