SenseNova-Vision
SenseNova-Vision ist ein einheitliches multimodales Modell, das Bildverarbeitungsaufgaben als Prompt-basierte Generierung auf einem gemeinsamen Decoder formuliert: Boxen, Punkte, Keypoints und OCR-Wörter werden als markierter Text ausgegeben, Tiefe, Masken und panoptische Karten als vom Decoder gerenderte Bilder. LibreYOLO lädt es über LibreVLM und unterstützt sieben Aufgaben mit einem 7B-Checkpoint.
- Aufgaben
- detection, instance segmentation, panoptic, pose, point, depth, ocr
- Größen
- 7b at 1024 px
- Installation
pip install libreyolo- Supportstufe
- Geschwisterstufe, seit v. Eine separate Produktoberfläche mit eigener Factory und eigenem Vertrag.
- Upstream
- SenseNova-Vision von SenseTime (OpenSenseNova), Apache-2.0 (code); CC BY-NC 4.0 (weights). Publikation, Quelle
- Lizenzen
- Code Apache-2.0, Gewichte Apache-2.0 (code); CC BY-NC 4.0 (weights). Kommerzielle Nutzung
Installation
SenseNova-Vision benötigt ein eigenes Zusatzpaket. Dieses installiert
accelerate für die Verteilung großer Modelle, die der Checkpoint benötigt,
und auf Nicht-macOS-Plattformen bitsandbytes für das 4-Bit-Laden.
pip install "libreyolo[sensenova]"Der Checkpoint wird unter der eigenen LibreYOLO-Organisation auf Hugging Face gespiegelt und bei der ersten Verwendung automatisch heruntergeladen. Er steht unter CC BY-NC 4.0 und ist nur nicht kommerziell nutzbar. Der Loader gibt diesen Hinweis vor jedem automatischen Download aus. Weitere Informationen findest du unter Lizenzierung.
Vorhersage
from libreyolo import LibreVLM model = LibreVLM("sensenova-vision", task="detect")model.set_classes(["bird", "boat"])result = model.predict("image.jpg")print(result.boxes.xyxy) # set_task() wechselt Aufgaben auf demselben geladenen Modell.model.set_task("depth")result = model.predict("image.jpg")depth = result.depth_map.datafrom libreyolo import LibreVLM model = LibreVLM("sensenova-vision", task="segment")# Die Segmentierung ist referring-basiert: Sie benötigt eine Zielphrase, keine Klassenliste.model.set_classes(["the person furthest to the right"])result = model.predict("street.jpg")mask = result.masks.data[0] model.set_task("panoptic")# Ohne eigenes Vokabular greift die Panoptik auf die COCO-Panoptik-Kategorien# zurück, mit denen der Checkpoint nachtrainiert wurde.result = model.predict("street.jpg")segment_map = result.panoptic.datafor segment in result.panoptic.segments_info: print(segment)from libreyolo import LibreVLM model = LibreVLM("sensenova-vision", task="point")model.set_classes(["screw"])result = model.predict("board.jpg")print(result.points.xy) # Ohne gesetztes Vokabular verwendet Pose standardmäßig "person".model.set_task("pose")result = model.predict("gym.jpg")print(result.boxes.xyxy, result.keypoints.data.shape) model.set_task("ocr")result = model.predict("sign.jpg")print(result.ocr.texts)Jede Vorhersage ist eine Diffusionsdekodierung auf dem gemeinsamen
Bagel-MoT-Backbone. Es handelt sich daher um ein Fähigkeitsmodell und nicht um
ein Echtzeitmodell. Die Latenz pro Bild ist deutlich höher als bei einem
speziellen Detektor oder Segmentierer. dtype="auto" (der Standardwert) lädt
bf16 auf einer GPU mit ausreichend Speicher und greift andernfalls auf
4-Bit-NF4-Quantisierung zurück, die bitsandbytes benötigt. Übergib
dtype="bf16", um volle Precision auf einer ausreichend großen GPU zu
erzwingen. noise_seed=42 beim Erstellen initialisiert den Diffusions-Sampler
für reproduzierbare dichte Ausgaben. Mit noise_seed=None deaktivierst du das
Seeding.
Die sieben Aufgaben verwenden einen geladenen Checkpoint. Mit set_task()
wechselst du ohne erneutes Laden zwischen ihnen. set_classes() legt das
aktive Vokabular fest. Erkennung, Punkte, Pose und Panoptik akzeptieren eine
Klassenliste. Die Segmentierung ist referring-basiert und benötigt exakt die
zu isolierende Phrase. Jede Aufgabe gibt das standardmäßige Results-Objekt
mit einer anderen Nutzlast zurück: boxes für detect, points für point,
boxes und keypoints für pose, ocr für OCR, depth_map für depth,
masks für segment und panoptic einschließlich segments_info für
panoptic. Unter Vorhersage findest du Quellen, Streaming und
die Verarbeitung von Ergebnissen.
Checkpoints
| Datei | Eingabe (px) | Lizenz der Gewichte |
|---|---|---|
| Detection | ||
| SenseNovaVision7b.pt | 1024 | cc-by-nc-4.0 |
Jede oben aufgeführte Datei ist heute in der LibreYOLO-Organisation verfügbar und wird bei der ersten Verwendung heruntergeladen.
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
- SenseNova-Vision, SenseTime (OpenSenseNova)
- Upstream-Lizenz
- Apache-2.0 (code); CC BY-NC 4.0 (weights)
- Upstream-Quelle
- github.com/OpenSenseNova/SenseNova-Vision
- LibreYOLO-Code
- MIT
- Gewichte
- Apache-2.0 (code); CC BY-NC 4.0 (weights), erneut unter huggingface.co/LibreYOLO veröffentlicht
- Einordnung
- LibreYOLO's SenseNova-Vision port is Apache-2.0 code adapted from SenseTime's OpenSenseNova/SenseNova-Vision release, which is itself built on Apache-2.0 sources: ByteDance's Bagel decoder, Hugging Face Transformers' Qwen2 and SigLIP modules, and Black Forest Labs' FLUX autoencoder. The SenseNova-Vision-7B-MoT checkpoint is a separate artifact under CC BY-NC 4.0, NON-COMMERCIAL USE ONLY. LibreYOLO mirrors it byte-identical, with attribution, at LibreYOLO/SenseNovaVision7b, but mirroring does not change the license: it stays non-commercial, and the loader prints that notice before every automatic download. One upstream file, modeling/bagel/modeling_utils.py, carries an incompatible CC BY-NC 4.0 license inherited from Meta's DiT; LibreYOLO did not port it. The small permissive routines it would have supplied were re-derived independently instead, from Hugging Face Transformers' ViTMAE implementation (Apache-2.0) and OpenAI's guided-diffusion (MIT).
Zitieren
@misc{sensenova2026sensenovavision,
title={Vision as Unified Multimodal Generation},
author={Xiaoyang Han and Jianhua Li and Kewang Deng and Zukai Chen and Xuanke Shi and Sihan Wang and Boxuan Li and Linyan Wang and Siyi Xie and Xin You and Jinsheng Quan and Zhongang Cai and Haiwen Diao and Ziwei Liu and Lei Yang and Dahua Lin and Quan Wang},
year={2026},
eprint={2607.06560},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2607.06560},
}Aus dem Zitierblock der Autoren unter github.com/OpenSenseNova/SenseNova-Vision#citation kopiert.