image-server-wheels / README.md
dawidope's picture
README: document 0.4.2, add the missing Linux rows, fix the stale no-Linux-build note
df047ef verified
|
Raw
History Blame Contribute Delete
6.77 kB
---
license: other
tags:
- wheels
- cuda
- pytorch
- windows
- linux
---
# image-server-wheels
Prebuilt Python 3.11 wheels.
## Contents
| File | OS | CUDA | Torch | Source | Notes |
|---|---|---|---|---|---|
| `ace_step-1.6.0-py3-none-any.whl` | any | β€” | β€” | built by us | Pure-Python, cross-platform |
| `qwen_tts-0.1.1+deapi3-py3-none-any.whl` | any | β€” | β€” | built by us | Pure-Python, patched fork (`+deapi3`) |
| `image_server_kernels-0.4.2+cu128torch2.8-cp311-cp311-win_amd64.whl` | Windows x64 | 12.8 | 2.8 | built by us | **Current.** Adds Sol-Attn sparse attention, W4A8 linear, and in-tree llama.cpp GGUF CUDA kernels (`_C_gguf`), on top of: FP8 dense + grouped GEMM, NVFP4 W4A4, INT8 W8A8 + ConvRot, fused QK-norm+RoPE. SM89 + SM120 |
| `image_server_kernels-0.3.0-cp311-cp311-win_amd64.whl` | Windows x64 | 12.8 | 2.8 | built by us | Previous build, kept as a fallback. No Sol-Attn, no W4A8, no bundled GGUF kernels |
| `image_server_kernels-0.3.0+cu129torch2.8-cp311-cp311-linux_x86_64.whl` | Linux x86_64 | 12.9 | 2.8 | built by us | Linux build is still at 0.3.0 β€” there is no Linux 0.4.2 yet |
| `block_sparse_attn-0.0.2-cp311-cp311-win_amd64.whl` | Windows x64 | 12.8 | 2.8 | built by us | Used by video pipeline |
| `block_sparse_attn-0.0.2-cp311-cp311-linux_x86_64.whl` | Linux x86_64 | 12.8 | 2.8 | built by us | Used by video pipeline |
| `q8_kernels-0.0.5-cp311-cp311-win_amd64.whl` | Windows x64 | 12.8 | 2.8 | built by us | Used by LTX video |
| `q8_kernels-0.0.5-cp311-cp311-linux_x86_64.whl` | Linux x86_64 | 12.8 | 2.8 | built by us | Used by LTX video |
| `sageattention-2.2.0+cu128torch2.8.0-cp311-cp311-win_amd64.whl` | Windows x64 | 12.8 | 2.8 | [woct0rdho/SageAttention](https://github.com/woct0rdho/SageAttention/releases/tag/v2.2.0-windows) | Mirror of upstream release |
| `sageattention-2.2.0+cu129torch2.8-cp311-cp311-linux_x86_64.whl` | Linux x86_64 | 12.9 | 2.8 | provenance unconfirmed β€” see Credits | |
| `flash_attn-2.8.2+cu128torch2.8-cp311-cp311-win_amd64.whl` | Windows x64 | 12.8 | 2.8 | [mjun0812/flash-attention-prebuild-wheels](https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/tag/v0.4.10) | Mirror of upstream release |
| `flash_attn-2.8.3+cu130torch2.10-cp311-cp311-win_amd64.whl` | Windows x64 | 13.0 | 2.10 | [mjun0812/flash-attention-prebuild-wheels](https://github.com/mjun0812/flash-attention-prebuild-wheels) | Mirror of upstream release |
| `flash_attn-2.8.3+cu128torch2.8-cp311-cp311-linux_x86_64.whl` | Linux x86_64 | 12.8 | 2.8 | [mjun0812/flash-attention-prebuild-wheels](https://github.com/mjun0812/flash-attention-prebuild-wheels/releases/tag/v0.7.16) | Mirror of upstream release |
## Direct install
```bash
BASE=https://huggingface.co/deAPI-ai/image-server-wheels/resolve/main
# Windows
pip install $BASE/image_server_kernels-0.4.2+cu128torch2.8-cp311-cp311-win_amd64.whl
pip install $BASE/q8_kernels-0.0.5-cp311-cp311-win_amd64.whl
pip install $BASE/block_sparse_attn-0.0.2-cp311-cp311-win_amd64.whl
pip install $BASE/flash_attn-2.8.2+cu128torch2.8-cp311-cp311-win_amd64.whl
pip install $BASE/sageattention-2.2.0+cu128torch2.8.0-cp311-cp311-win_amd64.whl
pip install --no-deps $BASE/ace_step-1.6.0-py3-none-any.whl
pip install --no-deps $BASE/qwen_tts-0.1.1+deapi3-py3-none-any.whl
# Linux
pip install $BASE/image_server_kernels-0.3.0+cu129torch2.8-cp311-cp311-linux_x86_64.whl
pip install $BASE/q8_kernels-0.0.5-cp311-cp311-linux_x86_64.whl
pip install $BASE/block_sparse_attn-0.0.2-cp311-cp311-linux_x86_64.whl
pip install $BASE/sageattention-2.2.0+cu129torch2.8-cp311-cp311-linux_x86_64.whl
pip install --no-deps $BASE/flash_attn-2.8.3+cu128torch2.8-cp311-cp311-linux_x86_64.whl
```
`sageattention` is required by the MiniMax-H3 video model, which imports it
unconditionally. Every other model that can use it falls back to SDPA when it is
absent, so on a box that does not serve H3 the wheel is optional.
> `image_server_kernels` is at **0.4.2 on Windows but only 0.3.0 on Linux** β€” the
> Linux build of 0.4.2 has not been made yet. Sol-Attn, W4A8 and the bundled GGUF
> kernels are therefore Windows-only for now.
## What is verified in `image_server_kernels-0.4.2`
Built and tested on Windows 11 / RTX 5090 Laptop (SM120), CUDA 12.8, torch 2.8.0+cu128.
- `scripts/smoke_test_rebuild.py` β€” ALL PASS: `fp8_dense_gemm` (per-tensor cos 0.99965,
per-channel+bias 0.99972), `dynamic_per_token_scaled_fp8_quant` 0.99965,
`fp8_dense_gemm_pre_quantized` 1.00000, `fp8_dense_gemm_sm120` 1.00000 via native
CUTLASS 3.x, `rmsnorm_forward` 0.999999.
- `scripts/validate_gguf_kernels.py` against real GGUF tensors β€” ALL PASS for
Q4_K, Q5_K, Q6_K, Q5_0, Q5_1, Q8_0 (cos 0.99984–1.00000), which covers the bf16
K-quant dequant path the in-tree patch exists for.
- `sol_attn` on real MiniMax-H3 activations (S=15,479, 5 capture points):
**2.22x vs SageAttention2 at cos 0.9805** at `tau=1.0`. Both speed and accuracy
rise with sequence length (4k β†’ 1.68x/0.965, 15.5k β†’ 2.90x/0.980 in one run),
so longer clips do better than this figure.
Not exercised on this box: `sol_attn` on Ada SM89 (compiles and links, but no Ada
GPU here), `w4a8_linear`, `nvfp4_*`, `fp8_grouped_gemm`, `w8a16_dense_gemm`.
## Credits
`flash_attn` wheels are mirrored from
[mjun0812/flash-attention-prebuild-wheels](https://github.com/mjun0812/flash-attention-prebuild-wheels)
β€” all credit for those builds goes to the upstream author.
`sageattention` is **a mirror, not our build**. The library is
[thu-ml/SageAttention](https://github.com/thu-ml/SageAttention) (Apache-2.0); the
Windows wheel is built and published by
[woct0rdho](https://github.com/woct0rdho/SageAttention/releases), and we found it
through [wildminder/AI-windows-whl](https://github.com/wildminder/AI-windows-whl),
which indexes Windows CUDA wheels. All credit for the library and the build goes to
them. The Windows file here is byte-identical to the upstream release
(`sha256:4379951403809dfcd5b1e10d35e287abf42afafb7b27615c09d6062cfbdf230a`).
> The **Linux** `sageattention-2.2.0+cu129torch2.8` wheel's provenance is not
> recorded β€” we have not confirmed whether it is our own build or a mirror. Fill
> this in before relying on the attribution.
We mirror third-party wheels so the install scripts have a single source of truth and
do not break if upstream release URLs change.
`ace_step`, `qwen_tts`, `image_server_kernels`, `block_sparse_attn` and `q8_kernels`
were built in-house.
Sol-Attn in `image_server_kernels` wraps CUDA kernels from comfy-kitchen
(Apache-2.0); see `third_party/comfy_kitchen_sol/PROVENANCE.md` in the
`image-server-kernels` repo. The bundled GGUF kernels are llama.cpp's `ggml-cuda`
(MIT), vendored per `third_party/llamacpp_gguf/PROVENANCE.md`.