Termux-Diffusion (Python)
Official Z-Image Turbo (6.0B DiT) & Pure Native On-Device Diffusion Acceleration for Android Termux & Samsung Galaxy.
Zero PRoot. Zero Virtualization. 100% Native ARM64 Bionic libc, Khronos Vulkan 1.1+ GPU Shaders & NEON SIMD Vector Engine.
What's New in v2.1.0 — Mobile Canva Studio & SurfaceFlinger Shield
- Added Mobile Canva Studio Suite: Magic Eraser (magic_eraser), Magic Grab (magic_grab), Magic Expand (magic_expand), and Magic Layers (decompose_layers).
- Implemented SurfaceFlinger Crash Shield with GPU duty-cycle throttling and safe-mode protection.
- Added Safe Memory Purger with automatic OOM safety budget management.
- Unified GPU acceleration dispatch through ameva-runtime HAL.
🚀 Major Breakthrough: 6.0B DiT (Z-Image Turbo) Sovereign Mobile Execution
termux-diffusion v1.8.0 introduces official production support for Z-Image Turbo, empowering mobile devices to execute modern 6.0 Billion Parameter Diffusion Transformers (DiT) natively on-device.
🌟 Tri-Engine Asymmetric Architecture
- Text Encoder (CPU 4-Core): 4.0B LLM (
Qwen3-4B-Instruct-2507-Q2_K.gguf) performs dense context embedding on CPU Big/Prime cores (clip_on_cpu=True). - DiT Denoising Backbone (Vulkan GPU): 6.0B Diffusion Transformer (
z_image_turbo-Q2_K.gguf) accelerated via Khronos Vulkan compute shaders with Tiled Flash Attention (diffusion_fa=True). - Ultra-Fast VAE Decoder (CPU): 10MB Tiny AutoEncoder for FLUX.1 (
taef1.safetensors) completes latent decoding rapidly without memory spikes (vae_on_cpu=True). - Layer Streaming (
stream_layers=True): Breaks through mobile memory limits by streaming layers into Vulkan VRAM sequentially, maintaining a strict 1.0 GB VRAM footprint (max_vram="vulkan0=1") and completely eliminating Android Low Memory Killer (LMK) aborts.
📸 Sovereign Physical Verification: Galaxy S21 DiT 8-Step Output
- Verification Image: Galaxy S21 Z-Image Turbo 8-Step PNG Artifact
- Verification Prompt (Ground Truth):
"A cinematic photo of a neon cybernetic tiger walking in Seoul street at night"
- Verified Input Parameter Engineering:
steps=8(Full numerical convergence ODE solver)cfg_scale=1.0(Optimal guidance for distilled DiT architecture)sampler="euler"(1st-order Ordinary Differential Equation solver)device="vulkan"(Physical GPU acceleration)diffusion_fa=True(Tiled Flash Attention enabled)stream_layers=True(Layer residency streaming over AXI bus)max_vram="vulkan0=1"(Strict 1.0 GB VRAM ceiling, Zero-LMK protection)clip_on_cpu=True(Offloads LLM prompt embedding to CPU Big/Prime cores)vae_on_cpu=True(Prevents GPU VRAM allocation collisions during decoding)taesd="auto"(Ultra-fast 10MB FLUX.1 latent decoder)
- Optical Realism: Specular light scattering from neon signboards on wet Seoul asphalt road surfaces, razor-sharp cybernetic armor plates, and micro-texture whiskers cleanly isolated from background noise.
- Runtime Stability: 100% completion achieved with zero Out-of-Memory (LMK) aborts and zero thermal throttling termination.
🔬 Academic Research & Lab Report Reference
- Full Technical Research Report: Galaxy S21 Z-Image Turbo Vulkan Research Report
- Academic Research Paper: AMEVA Labs | Sovereign On-Device AI Research, Newsletter & Discussion
💻 Python SDK Installation & Practical User Manual
1. Installation & Provisioning
pkg update && pkg install -y python clang termux-api
pip install termux-diffusion
termux-diffusion install
2. Python API Practical Code Example
import termux_diffusion as td
# 1. Official Z-Image Turbo 6.0B DiT Synthesis via Python API
image_path = td.generate(
prompt="A cinematic photo of a neon cybernetic tiger walking in Seoul street at night",
preset="z-image-turbo",
steps=8,
cfg_scale=1.0,
sampler="euler",
device="vulkan",
diffusion_fa=True,
stream_layers=True,
max_vram="vulkan0=1",
clip_on_cpu=True,
vae_on_cpu=True,
taesd="auto",
output_path="/sdcard/Pictures/TermuxDiffusion/cyber_tiger_dit.png"
)
print(f"Generated via 6.0B DiT Tri-Engine: {image_path}")
# 2. Fast UNet Standard Inference (DreamShaper 8 LCM 6-Step)
lcm_path = td.generate(
prompt="A cinematic photo of a neon cybernetic tiger walking in Seoul street at night",
model="anime",
steps=6,
cfg_scale=1.5,
sampler="lcm",
device="vulkan",
diffusion_fa=True,
vae_on_cpu=True,
output_path="/sdcard/Pictures/TermuxDiffusion/cyber_tiger_lcm.png"
)
print(f"Generated via DreamShaper 8 LCM: {lcm_path}")
🎛️ Python API Parameter Reference
| Argument | Type | Default | Engineering Purpose |
|---|---|---|---|
prompt |
str |
Required | Text conditioning prompt |
width, height |
int |
512 |
Image dimensions (multiples of 64) |
steps |
int |
8 (DiT) / 6 (LCM) |
Numerical solver sampling iterations |
cfg_scale |
float |
1.0 (DiT) / 1.5 (LCM) |
Classifier-Free Guidance scale weight |
sampler |
str |
"euler" |
Denoising ODE solver algorithm |
device |
str |
"vulkan" |
Accelerator device ("vulkan", "cpu") |
preset |
str |
"z-image-turbo" |
Verified configuration bundle |
stream_layers |
bool |
True (DiT) |
Enables dynamic layer streaming over AXI bus |
max_vram |
str |
"vulkan0=1" |
GPU memory ceiling (1.0 GB) to avert OS LMK aborts |
diffusion_fa |
bool |
True |
Flash Attention $O(N)$ memory reduction |
clip_on_cpu |
bool |
True |
Keeps LLM text encoder on CPU cores |
vae_on_cpu |
bool |
True |
Offloads VAE decode from GPU to host CPU |
taesd |
str |
"auto" |
Tiny AutoEncoder for ultra-fast latent decoding |
output_path |
str |
None |
Path to save output PNG artifact |
🌐 Official Documentation & Ecosystem Links
- Official Architecture & API Reference
- Advanced Parameters Handbook
- GitHub Repository
- AMEVA Open-Source Foundation Portal
📄 License
Licensed under the Apache-2.0 License. Copyright (c) 2026 Eunho Kim (@uno-km).
Metadata
Release files for amv-diffusion 2.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| amv_diffusion-2.1.0.tar.gz | 170.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| amv_diffusion-2.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 323.4 kB
Release files / amv_diffusion-2.1.0.tar.gz
| Download URL | amv_diffusion-2.1.0.tar.gz |
|---|---|
| Size | 170.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
028d9971c156fe3fd965d3bdace2893ae55c6c5e8cfbff540aeb29e566cb21c0
|
|
BLAKE2b-256 checksum How to use checksums |
bc738c4b6612a17d7060cd8a05f6a43c473944e5d42eed45af6d3c955dcf114f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.17
|
Release files / amv_diffusion-2.1.0-py3-none-any.whl
| Download URL | amv_diffusion-2.1.0-py3-none-any.whl |
|---|---|
| Size | 152.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1966208adb0083307e8a77d08a643ef160bd522f10447b928402f0434d5e5aeb
|
|
BLAKE2b-256 checksum How to use checksums |
38093f907519275272d084314e602fa8deeaac405dd7eb3a7bcf9f35dc01289b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.17
|
Security for amv-diffusion 2.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.