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 нужен свой extra: он подтягивает 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() задаёт активный словарь; детекция, точки, поза и паноптическая сегментация принимают список классов, а сегментация работает по описанию (referring): ей нужна именно та фраза, которая описывает выделяемый объект. Каждая задача возвращает стандартный объект 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.