|
Download README.md from gatilin/bitdance_binary_tokenizer_d32c128: direct link, hf CLI and curl.
- Browser
- Download file 2.91 kB
-
https://huggingface.co/gatilin/bitdance_binary_tokenizer_d32c128/resolve/main/README.md
- Command line
-
hf download hf://gatilin/bitdance_binary_tokenizer_d32c128/README.md
-
curl -L -o README.md https://huggingface.co/gatilin/bitdance_binary_tokenizer_d32c128/resolve/main/README.md
2.91 kB
| license: apache-2.0 | |
| library_name: pytorch | |
| pipeline_tag: image-to-image | |
| tags: | |
| - image-tokenizer | |
| - binary-tokenizer | |
| - bitdance | |
| - component-extraction | |
| base_model: shallowdream204/BitDance-Tokenizer | |
| # BitDance d32c128 binary image tokenizer | |
| Standalone native encoder, sign quantizer and GAN decoder from the official BitDance tokenizer release. The safetensors file is byte-for-byte identical to `ae_d32c128.safetensors`; its original SHA-256 and pinned source revision are recorded in `extraction.json`. No generation backbone is included. | |
| This is the published **BitDance** codec. It is not asserted to be the semantic-distilled UniWeTok checkpoint merely because both describe 128-bit representations. | |
| ## Load and reconstruct | |
| ```python | |
| from huggingface_hub import snapshot_download | |
| import sys, torch | |
| folder = snapshot_download("gatilin/bitdance_binary_tokenizer_d32c128") | |
| sys.path.insert(0, folder) | |
| from component import load_model | |
| codec = load_model(folder) | |
| # RGB pixels: NCHW, [-1, 1], spatial dimensions divisible by 32. | |
| pixels = torch.linspace(-1, 1, 3*256*256).reshape(1,3,256,256) | |
| with torch.inference_mode(): | |
| signs = codec.encode(pixels) # [1,128,8,8], each value -1 or +1 | |
| reconstructed = codec.decode(signs) | |
| ``` | |
| Install `requirements.txt` and run `python validate.py` in the downloaded directory. `component.py` also provides explicitly documented byte-packing helpers for storing 128 sign bits. Their byte convention is a portable bundle helper, **not an inferred mapping to upstream AR vocabulary IDs**. | |
| ## Validation | |
| Strict native state-dict loading, official-file SHA-256 equality, 256px encode/decode, binary alphabet, exact bit roundtrip, fixed-seed bit-decoding parity, native stochastic decoding, and rectangular 256x320 encode/decode passed on CPU in float32. Exact results and measured fixture MSE are in `validation.json`. These are component correctness tests on deterministic synthetic inputs, not claims about perceptual quality or text-to-image benchmark scores. | |
| The GAN decoder injects fresh Gaussian noise even in eval mode. Set the same torch RNG seed before decoding if you need reproducible output; this native behavior is preserved. | |
| The 2^128 space is represented implicitly by 128 binary channels, not a materialized embedding table. The published model uses the original convolutional implementation in `autoencoder.py`, not the separate attention-augmented `autoencoder_uni.py`. The only native-file edit changes an absolute filesystem-helper import into a package-relative import; source and code revisions are in the provenance files. | |
| ## Source and license | |
| - Weights: https://huggingface.co/shallowdream204/BitDance-Tokenizer | |
| - Code: https://github.com/shallowdream204/BitDance | |
| - Paper: https://arxiv.org/abs/2602.14041 | |
| Apache-2.0; original notices are retained. Extraction, tests, loader and documentation added for this standalone distribution. | |