pipeline_tag: text-to-image library_name: diffusers license: apache-2.0 tags:
- pixel-art
- game-development
- aseprite
- pico-8
- sprites
- cli
- mlx
- windows
- cuda
- apple-silicon
- local
Bilta Gilata1
Local AI pixel art. Exact palettes. No credits. No cloud prompts.
Write a prompt. Pick one of 65 game palettes. Get a crisp PNG at an exact game-ready resolution.
The gallery is the proof
Every image below was generated through the Bilta CLI. No hand-picked stock art and no external image generator.
Ancient dragon |
Medieval market |
Fishing village |
Knight versus fire |
Motorbike |
Steam locomotive |
Forest knight |
Brave knight |
Animation study |
Why Gilata1?
- Runs locally: prompts and reference images stay on your computer.
- Two native backends: MLX on Apple Silicon and PyTorch/CUDA on Windows.
- 65 bundled palettes: PICO-8, DawnBringer, AAP, Arne, NES, Game Boy, Commodore, VGA and more.
- Exact output sizes: 16, 32, 48, 64, 128 or 256 pixels.
- Six composition modes: sprite, character, scene, background, tileset and icon.
- Pixel Engine cleanup: dominant-cluster reduction preserves outlines and removes isolated noise.
- Reference guidance: provide a local PNG, JPG or WebP.
- Reproducible generations: keep the seed and recreate the composition.
- Bulk generation: load once and turn a prompt list into an asset folder.
- Offline after setup: install the model once and generate without a paid API.
- CLI and Python API: use it in a terminal, game pipeline, build script or application.
Install
Apple Silicon macOS
python3 -m pip install bilta-gilata1
bilta-gilata1 --download-model
Windows 10/11 + NVIDIA
py -m pip install "bilta-gilata1[windows]"
bilta-gilata1 --download-model
The Windows backend needs an NVIDIA CUDA GPU and a current driver. If PyTorch cannot see CUDA, select the correct Windows/Pip/CUDA command at pytorch.org.
Install from source
git clone https://github.com/Abd196-bit/bilta-gilata1.git
cd bilta-gilata1
chmod +x install.sh
./install.sh
On Windows, run install-windows.ps1 in PowerShell instead. Both installers fetch the model during setup so the machine is ready for offline generation afterward.
Create your first sprite
bilta-gilata1 "a tiny moon wizard riding a sleepy cloud" \
--mode character \
--palette pico-8 \
--size 64 \
--seed 1337 \
--output moon-wizard.png
The terminal stays clean while an ASCII character and live activity bar animate in place:
Generating image [.........=>.............] (o_o) 00:27
Generating image [========================] (^_^) 100%
Choose the right composition
Gilata1 no longer forces every prompt into a centered sprite. Choose a mode that matches the asset:
bilta-gilata1 "moonlit fishing village" --mode scene --size 128 --output village.png
bilta-gilata1 "mossy dungeon walls and floors" --mode tileset --size 64 --output dungeon.png
bilta-gilata1 "golden healing potion" --mode icon --size 32 --output potion.png
sprite is the default. Use character for full-body actors, background for playable environments, and
scene for complete illustrations. The Pixel Engine renders small targets through a smaller intermediate canvas,
locks colors before final reduction, keeps meaningful dark outline clusters, and removes isolated one-pixel noise.
Add --dither for intentional texture or --no-cleanup when you need every mapped pixel untouched.
Use a reference image
bilta-gilata1 "a forest adventurer" \
--reference sketch.png \
--palette db16 \
--size 64 \
--output adventurer.png
The reference guides composition and appearance; it is never uploaded to a paid API.
Generate a folder in bulk
Create prompts.txt with one asset per line:
a walking knight with a blue shield
a moon wizard holding a lantern
a cyberpunk fox merchant with neon potions
a steam locomotive crossing a frozen bridge
Run the batch:
bilta-gilata1 --bulk prompts.txt \
--output-dir game-assets \
--palette pico-8 \
--size 64 \
--seed 500
Gilata1 creates predictable names such as 001-a-walking-knight-with-a-blue-shield.png. Sequential seeds make the entire batch reproducible.
Python API
from bilta_gilata1 import generate
result = generate(
"a tiny moon wizard",
output="wizard.png",
palette="pico-8",
size=64,
mode="character",
seed=1337,
on_progress=print,
)
print(result.output)
GenerationResult includes the output path, master image path, seed, backend, palette, size and composition mode.
Reuse one generator
from bilta_gilata1 import Gilata1
artist = Gilata1(palette="db16", size=64, mode="character", cleanup=True)
artist.generate("a walking knight", output="knight.png", on_progress=print)
artist.generate("a moon wizard", output="wizard.png", reference="sketch.png", on_progress=print)
The CUDA pipeline remains loaded between calls.
Bulk generation from Python
from bilta_gilata1 import generate_bulk
batch = generate_bulk(
[
"a walking knight",
"a moon wizard",
"a cyberpunk fox merchant",
],
output_dir="game-assets",
palette="pico-8",
size=64,
seed=500,
continue_on_error=True,
on_progress=print,
)
print(batch.outputs)
print(batch.failures)
Palette power
List every bundled palette:
bilta-gilata1 --list-palettes
Useful starting points:
| Palette | Colors | Great for |
|---|---|---|
pico-8 |
16 | Bold retro sprites and prototypes |
db16 |
16 | Balanced fantasy and RPG art |
arne16 |
16 | General-purpose game assets |
gameboy |
4 | Tiny monochrome games |
nes |
56 | Console-era scenes and characters |
aap-64 |
64 | Detailed sprites with richer shading |
aap-splendor128 |
128 | Large scenes and backgrounds |
vga-13h |
256 | Maximum color range |
From Python:
from bilta_gilata1 import list_palettes, palette_colors
print(list_palettes())
print(palette_colors("pico-8"))
Platform matrix
| Platform | Backend | Hardware | First model download |
|---|---|---|---|
| Apple Silicon macOS | MLX / MFLUX | M1, M2, M3, M4 or newer | About 5 GB |
| Windows 10/11 | PyTorch / Diffusers | NVIDIA CUDA GPU | About 24 GB |
| Intel Mac | — | Not supported | — |
| Windows CPU-only | — | Technically impractical | — |
Set BILTA_GILATA_CACHE to keep model files on another disk or pen drive:
export BILTA_GILATA_CACHE="/path/to/large-drive/gilata-cache"
What gets installed?
The Python package contains Gilata1's CLI, API, palette engine, bulk workflow and model manager. Model weights are downloaded from their original repositories because they are several gigabytes and cannot fit inside a normal Python wheel. After that one-time download, generation is local.
License
Gilata1's original source code is licensed under Apache-2.0. Models, adapters and palette files keep their respective upstream licenses and attribution; see THIRD_PARTY_NOTICES.md.
Metadata
Release files for bilta-gilata1 1.4.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 | Actions |
|---|---|---|---|---|
| bilta_gilata1-1.4.0.tar.gz | 28.5 kB | With provenance | Details for bilta_gilata1-1.4.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| bilta_gilata1-1.4.0-py3-none-any.whl | Python 3 | none | any | Details for bilta_gilata1-1.4.0-py3-none-any.whl |
Total release size: 59.8 kB
Release files / bilta_gilata1-1.4.0.tar.gz
| Download URL | bilta_gilata1-1.4.0.tar.gz |
|---|---|
| Size | 28.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
34cbbf2b808af8a5bda7004c79b0590fde5c6cc82b19ca07b20ab800c2f80186
|
|
BLAKE2b-256 checksum How to use checksums |
ab0bfdd61c18742800331f7ca43b0cc00b9330d4169d6938f5d1d3daa0a002f1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 9, 2026.
Transparency logRelease files / bilta_gilata1-1.4.0-py3-none-any.whl
| Download URL | bilta_gilata1-1.4.0-py3-none-any.whl |
|---|---|
| Size | 31.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2e20e0c54fc1f81233e2ab8e1fee06b7a61675bec8f743d1dff626035cc433e2
|
|
BLAKE2b-256 checksum How to use checksums |
af21f6264bedcd0b4bcd4eb641b9a722a82e85e057c10b283307bc3d48083ee0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 9, 2026.
Transparency logSecurity for bilta-gilata1 1.4.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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for bilta_gilata1-1.4.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 9, 2026.
Transparency logA 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.