Kosmos-2

Kosmos-2 є моделлю Microsoft для прив'язування тексту до зображення: вона створює підпис до зображення, а потім позначає рамкою кожну іменникову групу з цього підпису. LibreYOLO надає її як детектор об'єктів із відкритим словником: передайте список класів під час передбачення.

Задачі
detection
Розміри
224 at 224 px
Встановлення
pip install libreyolo
Рівень підтримки
Суміжний рівень, починаючи з v. Окремий інтерфейс продукту з власною фабрикою та контрактом.
Першоджерело
Kosmos-2, автори: Microsoft, ліцензія MIT. Стаття, джерело
Ліцензії
Код: MIT, ваги: MIT. Комерційне використання

Встановлення

Kosmos-2 належить до рівня VLM-детекторів LibreYOLO, окремої від сімейств на основі контрольних точок частини продукту з власною фабрикою. Для неї потрібен додатковий набір залежностей vlm.

bash
pip install "libreyolo[vlm]"

Передбачення

Під час першого використання ваги завантажуються з Hugging Face і кешуються локально. LibreYOLO безпосередньо завантажує власний репозиторій Microsoft microsoft/kosmos-2-patch14-224; на відміну від Florence-2, тут не потрібне повторне вивантаження спільнотою.

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)
Відео
from libreyolo import LibreVLM model = LibreVLM("kosmos-2")model.set_classes(["boat", "person"]) # Будь-яке підтримуване бібліотекою джерело: файл, папка, URL,# індекс вебкамери, потік RTSP або список .streamsfor result in model.predict("clip.mp4", stream=True, save=True):    print(len(result.boxes))

Це сімейство завантажується через фабрику LibreVLM(), а не LibreYOLO(): сімейства VLM не оголошують завантажувача контрольних точок, тому описана на інших сторінках моделей маршрутизація за суфіксом файлу тут не застосовується. set_classes() задає словник, об'єкти з якого має знайти Kosmos-2. Налаштування зберігається для всіх наступних викликів predict()/track(), доки ви знову його не зміните. Kosmos-2 прив'язує іменникові групи, а не шукає точний збіг мітки, тому обгортка LibreYOLO приймає частковий збіг: клас із назвою "boat" також відповідає згенерованій фразі на кшталт «the boats». Кожне виявлення має однакову службову оцінку впевненості, тому фільтрація за conf або пропускає всі результати, або відкидає їх усі, а не ранжує. Параметр iou тут не діє, оскільки обгортка створює список виявлень безпосередньо з прив'язаних сутностей без етапу усунення дублікатів. chat() спричиняє NotImplementedError, оскільки Kosmos-2 використовує запит <grounding>, а не шаблон чату. CLI LibreYOLO не охоплює цей рівень: форми libreyolo predict model=... для нього немає. Типи джерел, потокове передбачення та обробку результатів описано в розділі передбачення.

Варіанти

Доступний один розмір: kosmos-2-patch14-224 із роздільною здатністю 224 px, який завантажується як LibreVLM("kosmos-2"). Цю модель створено у 2023 році, і в обгортці LibreYOLO зазначено, що вона прив'язує об'єкти грубіше, ніж новіші детектори цього рівня.

LibreYOLO не навчає, не валідує та не експортує Kosmos-2: train(), val() і export() спричиняють NotImplementedError для кожного сімейства цього рівня (див. рівень підтримки вище). Якщо потрібен вбудований власний словник, донавчіть Kosmos-2 засобами початкового проєкту й завантажте отримані ваги. Перевіряйте вихід predict() візуально замість валідації у стилі COCO, оскільки кожне виявлення має однакову службову оцінку впевненості.

Ліцензування

Перевіряйте ліцензію в репозиторії Hugging Face конкретних ваг, які завантажуєте. Кожна контрольна точка в організації LibreYOLO має ліцензію, і вона не завжди однакова для всього сімейства. Цей репозиторій є авторитетним джерелом, а наведене нижче резюме описує умови на момент останньої перевірки сторінки.

Це опис відповідних ліцензій, а не юридична консультація. Якщо відповідь має комерційне значення, самостійно прочитайте ліцензії та зверніться по юридичну консультацію.

Оригінальна робота
Kosmos-2, Microsoft
Ліцензія першоджерела
MIT
Джерело першоджерела
github.com/microsoft/unilm/tree/master/kosmos-2
Код LibreYOLO
MIT
Ваги
MIT, поширюється авторами. LibreYOLO не розміщує й не дублює ці ваги.
Тлумачення
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.

Цитування

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

Скопійовано з блоку цитування авторів на сторінці github.com/microsoft/unilm/blob/master/kosmos-2/README.md#citation.

Перевірено з LibreYOLO v1.5.0. Таблиці підтримки, контрольні точки й результати бенчмарків на цій сторінці згенеровано з випущеної бібліотеки та опублікованих ваг, а не написано вручну.