Приветствую!
В общем, в мире мобильного генератива случилось маленькое чудо: благодаря ggml и stable‑diffusion.cpp теперь можно запустить FLUX.1 schnell на Android‑устройстве с 8 ГБ RAM.
Запуск FLUX на 8 ГБ устройстве
С помощью чего происходит генерация:
- q2_k квантование + только clip_l для текстовых энкодеров (чтобы не тащить тяжёлый T5XXL).
- Flash Attention — экономит буферы при инференсе.
- taef1 + VAE Tiling — оптимизируют фазу декодирования.
Результат: пиковое потребление памяти для FLUX.1 при 512×512 — ≈ 4,5 ГБ, а до 1024×1024 можно докачаться до 4,9 ГБ, после чего Android OS, скорее всего, убьёт приложение.
Кстати, для 768×768 можно юзать и iq3_xxs квантование.
Память
Измерили пиковое потребление (MB) на разных разрешениях и квантованиях:
Скорость и производительность
- Galaxy A34 (8 ГБ RAM): около 8 минут на шаг для FLUX.1 schnell при 512×512.
- iPhone 16 Pro (16 ГБ RAM): 63 с на 4‑шаговую генерацию того же FLUX.1.
На мой взгляд, пока это черепашьи гонки, но прогресс очевиден.
Если у вас 16 ГБ — ожидайте ×4–5 быстрее по сравнению с A34. Проверьте сами и поделитесь результатами!
Что такое Local Diffusion?
Local Diffusion — это Flutter‑приложение, которое приносит в Android любую диффузию «из коробки», опираясь на stable‑diffusion.cpp.
Ключевые фичи
- Локальный инференс: всё на устройстве, без облаков.
- Поддержка моделей: SD1.x, SD2.x, SDXL, SD3/3.5, Flux/Flux‑schnell, SD‑Turbo, SDXL‑Turbo и другие.
- Форматы: .safetensors, .ckpt.
- Квантование на лету: q8_0, q6_k, q5_0, q5_1, q5_1k, q4_0, q4_1, q4_k, q3_k, q2_k.
- Оптимизации:
- Flash Attention
- TAESD (ускоряет декодинг)
- VAE Tiling (экономит память при VAE‑декодинге)
- Расширенные возможности:
- ControlNet (включая Scribble‑to‑Image)
- PhotoMaker (портреты по референсу)
- Img2Img, Inpainting/Outpainting
- LoRA‑адаптации
- Negative Prompts, Token Weighting
- Множество сэмплеров: Euler, Heun, DPM2, DPM++ и др.
- GPU‑ускорение (экспериментально):
- Vulkan (~2× медленнее CPU, но движется)
- OpenCL (Adreno 7xx, Q4_0/Q8_0/FP16)
Установка и сборка
- Убедись, что установлен Flutter SDK и Android‑среда.
- В корне проекта:
flutter run # debug
flutter run --release # release
flutter build apk --release
Готовый APK найдёшь в build/app/outputs/flutter-apk/app-release.apk.
Спасибо, что дочитали до конца! 🙏
Буду рад вашим комментариям🎤, лайкам🧡 и подпискам на мой канал:
Так же заходите в мою группу в VK и на канал Телеграм.