# VOSR2 для Swift/MLX: локальное увеличение изображений на Mac

Источник: https://modelium.tech/zhurnal/vosr2-swift-mlx-super-resolution-mac/

26 сентября 2026 года появились открытый Swift/MLX-порт VOSR2 с тегом v0.1.0 и два комплекта преобразованных весов: fp16 для использования и fp32 как эталон сравнения. Это новый способ локально запускать уже существующую модель генеративного увеличения изображений на Apple Silicon, а не новая базовая модель. Авторы опубликовали код CLI и результаты сравнения с PyTorch; Modelium не выполнял собственных тестов.

VOSR2 для Swift/MLX: новый локальный путь апскейла на Mac

26 сентября 2026 года авторы Swift/MLX-порта VOSR2 открыли код и пометили его тегом `v0.1.0`; в Hugging Face в тот же день появились два набора конвертированных весов. **Это не релиз новой VOSR2**: исходная модель и её PyTorch-веса существовали раньше. Новость — в возможности использовать её через отдельный стек Swift/MLX на Apple Silicon. Наличие тега подтверждено записью GitHub, а наличие компонентов весов — списками файлов обоих HF-репозиториев. [s1](#src-s1) [s2](#src-s2) [s3](#src-s3) [s4](#src-s4)

## Что опубликовано

В `mlx-community/VOSR2-fp16` лежат `transformer_fp16.safetensors`, `vae_fp16.safetensors`, `dinov2_fp16.safetensors` и конфигурация. В `mlx-community/VOSR2-fp32` опубликованы соответствующие fp32-компоненты. По описанию порта это конверсия исходных LightningDiT, 2D VAE и DINOv2, а не новое обучение. Версия fp16 — основной вариант; fp32 служит для проверки близости вычислений к исходной реализации. Проект не предлагает универсальную команду `llama.cpp` или Ollama: это стек обработки изображений со своим Swift-пакетом и утилитой `vosr-smoke`. [s2](#src-s2) [s3](#src-s3) [s5](#src-s5)

Для проверки на Mac разработчик может собрать цель `VOSRSmoke` из исходного репозитория и выполнить `vosr-smoke keys <weightsDir>`, затем `vosr-smoke run <in.png> <out.png> <weightsDir> --scale 2`. Для пути через обёртку MLXEngine авторы описали `vosr-smoke engine <in.png> <out.png> <weightsDir> --scale 2`. Каталог весов и зависимости Swift нужно подготовить по README проекта; загрузка одного Safetensors-файла без остальных компонентов не образует полного конвейера. Этот рецепт взят из документации авторов, не проверен Modelium на устройстве. [s5](#src-s5)

## Что означают авторские замеры

Авторы сообщают о PSNR 115,5 дБ для результата fp32 против **той же PyTorch-реализации на том же входе и шуме**, 49,3 дБ для fp16 и 46,7 дБ для fp16 с int8-квантованием DiT относительно этого эталона. Это тест точности *порта*, а не оценка качества восстановления реальных фотографий или независимый бенчмарк. В README также приведены времена на M5 Max; они не являются обещанием скорости на любом Mac. Материал не выводит требования к оперативной или видеопамяти из размеров файлов весов. [s5](#src-s5) [s6](#src-s6)

VOSR2 относится к генеративному сверхразрешению: мелкие детали могут быть правдоподобными, но не исторически точными. Авторы порта отдельно предупреждают, что в уже читаемом мелком тексте модель может менять буквы. Для документов, интерфейсов, этикеток и доказательных изображений сравнивайте результат с оригиналом и не воспринимайте сгенерированный текст как восстановленный факт. [s4](#src-s4) [s5](#src-s5)

## Лицензия и границы доступности

Оба HF-репозитория помечены Apache-2.0; код порта тоже содержит Apache-2.0. Исходная карточка VOSR отдельно предупреждает, что встроенные сторонние компоненты, включая VAE и DINOv2, подчиняются своим исходным условиям; метка лицензии производного репозитория не заменяет эту проверку для коммерческого распространения полного комплекта. Оригинальный Qwen-Image, на который ссылается карточка VOSR для VAE, помечен Apache-2.0; не следует путать его с отдельно лицензируемым Qwen-Image-2.1. Код доступен с тегом, но в README порта ещё остался список публикационных шагов, частично устаревший после загрузки весов: статус интеграции в конкретное приложение проверяйте отдельно. [s2](#src-s2) [s3](#src-s3) [s4](#src-s4) [s5](#src-s5) [s7](#src-s7)

## Источники

1. [GitHub API: тег mlx-vosr-swift v0.1.0, 26.09.2026](https://api.github.com/repos/xocialize/mlx-vosr-swift/git/tags/d0bdb89d8f4a8aad471f81e2335cda11aa21e72c) — получено 2026-09-26
2. [HF: mlx-community/VOSR2-fp16, закреплённая ревизия](https://huggingface.co/mlx-community/VOSR2-fp16/tree/ffa9f3ebe24c7c2bdec932665fb3cd015a8756ea) — получено 2026-09-26
3. [HF: mlx-community/VOSR2-fp32, закреплённая ревизия](https://huggingface.co/mlx-community/VOSR2-fp32/tree/b6271fdb849de5edb9b1522e593d3b79179ef230) — получено 2026-09-26
4. [Исходная карточка VOSR и условия компонентов](https://huggingface.co/CSWRY/VOSR) — получено 2026-09-26
5. [README Swift/MLX-порта VOSR2 v0.1.0](https://github.com/xocialize/mlx-vosr-swift/blob/v0.1.0/README.md) — получено 2026-09-26
6. [PORTING-SPEC Swift/MLX-порта VOSR2 v0.1.0](https://github.com/xocialize/mlx-vosr-swift/blob/v0.1.0/PORTING-SPEC.md) — получено 2026-09-26
7. [Оригинальная карточка Qwen-Image с Apache-2.0](https://huggingface.co/Qwen/Qwen-Image) — получено 2026-09-26
