SenseNova-Vision
SenseNova-Vision є уніфікованою мультимодальною моделлю, яка подає завдання зору як генерацію за запитами у спільному декодері: рамки, точки, ключові точки й слова OCR виходять як текст із тегами, а карти глибини, масок і паноптичної сегментації виходять як зображення, які відтворює декодер. LibreYOLO завантажує її через LibreVLM і підтримує сім завдань за допомогою однієї контрольної точки 7B.
- Задачі
- detection, instance segmentation, panoptic, pose, point, depth, ocr
- Розміри
- 7b at 1024 px
- Встановлення
pip install libreyolo- Рівень підтримки
- Суміжний рівень, починаючи з v. Окремий інтерфейс продукту з власною фабрикою та контрактом.
- Першоджерело
- SenseNova-Vision, автори: SenseTime (OpenSenseNova), ліцензія Apache-2.0 (code); CC BY-NC 4.0 (weights). Стаття, джерело
- Ліцензії
- Код: Apache-2.0, ваги: Apache-2.0 (code); CC BY-NC 4.0 (weights). Комерційне використання
Встановлення
SenseNova-Vision потребує власного набору додаткових залежностей, який
установлює accelerate для розподілу великої моделі, потрібного цій
контрольній точці, а на платформах, відмінних від macOS, також
bitsandbytes для 4-бітного завантаження.
pip install "libreyolo[sensenova]"Контрольну точку дзеркально розміщено на Hugging Face у власній організації LibreYOLO, і під час першого використання вона завантажується автоматично. Вона має ліцензію CC BY-NC 4.0 лише для некомерційного використання, і завантажувач показує це повідомлення перед кожним автоматичним завантаженням. Докладніше див. розділ «Ліцензування» нижче.
Передбачення
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() перемикає завдання в тій самій завантаженій моделі.model.set_task("depth")result = model.predict("image.jpg")depth = result.depth_map.datafrom libreyolo import LibreVLM model = LibreVLM("sensenova-vision", task="segment")# Сегментація виконується за описом: їй потрібна цільова фраза, а не список класів.model.set_classes(["the person furthest to the right"])result = model.predict("street.jpg")mask = result.masks.data[0] model.set_task("panoptic")# Без власного словника паноптичне завдання використовує категорії# паноптичної сегментації COCO, на яких донавчено контрольну точку.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) # Без заданого словника завдання пози типово використовує "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)Кожне передбачення є дифузійним декодуванням на спільному бекбоні Bagel-MoT,
тому це модель можливостей, а не реального часу: затримка на зображення буде
помітно більшою, ніж у спеціалізованого детектора чи сегментатора.
dtype="auto" (типове значення) завантажує bf16 на GPU з достатнім обсягом
пам'яті й переходить до 4-бітного квантування NF4 в інших випадках, для чого
потрібен bitsandbytes. Передайте dtype="bf16", щоб примусово
використовувати повну точність на достатньо великому GPU. Параметр
noise_seed=42 під час створення задає початкове число дифузійного семплера
для відтворюваних щільних виходів; передайте noise_seed=None, щоб вимкнути
його.
Сім завдань використовують одну завантажену контрольну точку: set_task()
перемикає їх без повторного завантаження. set_classes() задає активний
словник. Виявлення, точки, поза й паноптична сегментація приймають список
класів, а сегментація виконується за описом і потребує точної фрази для
ізоляції. Кожне завдання повертає стандартний об'єкт Results із різним
заповненим корисним навантаженням: boxes для detect, points для point,
boxes і keypoints для pose, ocr для OCR, depth_map для depth,
masks для segment та panoptic (із segments_info) для panoptic.
Типи джерел, потокове передбачення та обробку результатів описано в розділі
передбачення.
Контрольні точки
| Файл | Вхід (пікс.) | Ліцензія ваг |
|---|---|---|
| Detection | ||
| SenseNovaVision7b.pt | 1024 | cc-by-nc-4.0 |
Кожен наведений вище файл уже доступний у організації LibreYOLO і завантажується під час першого використання.
Ліцензування
Перевіряйте ліцензію в репозиторії Hugging Face конкретних ваг, які завантажуєте. Кожна контрольна точка в організації LibreYOLO має ліцензію, і вона не завжди однакова для всього сімейства. Цей репозиторій є авторитетним джерелом, а наведене нижче резюме описує умови на момент останньої перевірки сторінки.
Це опис відповідних ліцензій, а не юридична консультація. Якщо відповідь має комерційне значення, самостійно прочитайте ліцензії та зверніться по юридичну консультацію.
- Оригінальна робота
- SenseNova-Vision, SenseTime (OpenSenseNova)
- Ліцензія першоджерела
- Apache-2.0 (code); CC BY-NC 4.0 (weights)
- Джерело першоджерела
- github.com/OpenSenseNova/SenseNova-Vision
- Код LibreYOLO
- MIT
- Ваги
- Apache-2.0 (code); CC BY-NC 4.0 (weights), повторно опубліковано на huggingface.co/LibreYOLO
- Тлумачення
- 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).
Цитування
@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},
}Скопійовано з блоку цитування авторів на сторінці github.com/OpenSenseNova/SenseNova-Vision#citation.