Spaces:
Running
Running
| title: Oneiros | |
| emoji: π | |
| colorFrom: purple | |
| colorTo: indigo | |
| sdk: gradio | |
| sdk_version: "4.40.0" | |
| python_version: "3.10" | |
| app_file: app.py | |
| pinned: true | |
| short_description: Map your dreams with a small model β no ChatGPT API. | |
| preload_from_hub: | |
| - repo_id: Qwen/Qwen2.5-7B-Instruct-GGUF | |
| filename: qwen2.5-7b-instruct-q4_k_m-00001-of-00002.gguf | |
| - repo_id: Qwen/Qwen2.5-7B-Instruct-GGUF | |
| filename: qwen2.5-7b-instruct-q4_k_m-00002-of-00002.gguf | |
| startup_duration_timeout: 45m | |
| # rebuild: cc5f140 force fresh build 2026-06-03 | |
| # β¦ ONEIROS | |
| **Your dreams, mapped with a small model you control β not sent to ChatGPT.** | |
| Oneiros mengubah catatan mimpi menjadi **peta SVG** plus panel ringkasan entitas, menggunakan **Qwen2.5-7B-Instruct** (GGUF) via **llama-cpp-python** β tanpa API LLM pihak ketiga. | |
| Proyek ini dibuat untuk [Build Small Hackathon](https://huggingface.co/build-small-hackathon) (Gradio Γ Hugging Face), track **An Adventure in Thousand Token Wood**. | |
| --- | |
| ## Status repositori (Day 1) | |
| | Komponen | Status | | |
| |----------|--------| | |
| | `model/` loader + extractor + normalisasi | β Day 1 | | |
| | `app.py` minimal (mimpi β JSON) | β Day 1 | | |
| | `storage/trace_logger.py` | β Day 1 | | |
| | `tests/test_extractor.py` | β (butuh GGUF lokal) | | |
| | Peta SVG (`map/`) | π² Day 2 | | |
| --- | |
| ## Deploy HF Space | |
| **Space resmi:** https://huggingface.co/spaces/build-small-hackathon/oneiros | |
| 1. Sebelum push: `./scripts/prepare_space_requirements.sh` (salin wheel Linux ke `requirements.txt`). | |
| 2. Push ke org `build-small-hackathon/oneiros`. | |
| 3. **Variables** (Settings): `N_GPU_LAYERS=0`, `N_CTX=4096`; `ONEIROS_SKIP_WARMUP=1` sampai preload selesai. | |
| 4. Preload 2 shard Q4_K_M (~15β45 menit). Cek log: `[oneiros] diagnosis` β `shard_pair_ok: True`. | |
| 5. Setelah Running: uji 1 mimpi di UI. | |
| Detail: [docs/08-deploy-hf-space.md](docs/08-deploy-hf-space.md) Β· Checklist Day 2: [docs/16-checklist-sebelum-day2.md](docs/16-checklist-sebelum-day2.md). | |
| --- | |
| ## Quick start (lokal) | |
| **Pakai `requirements-local.txt`** β jangan `requirements.txt` (itu untuk Space Linux). | |
| ```bash | |
| python -m venv .venv && source .venv/bin/activate | |
| pip install -r requirements-local.txt | |
| # Model β opsi cepat (Q2_K ~3GB) atau Q4_K_M (2 shard) | |
| hf download Qwen/Qwen2.5-7B-Instruct-GGUF qwen2.5-7b-instruct-q2_k.gguf --local-dir ./models | |
| # Atau Q4_K_M (kualitas lebih baik): | |
| # hf download Qwen/Qwen2.5-7B-Instruct-GGUF \ | |
| # qwen2.5-7b-instruct-q4_k_m-00001-of-00002.gguf \ | |
| # qwen2.5-7b-instruct-q4_k_m-00002-of-00002.gguf \ | |
| # --local-dir ./models | |
| CMAKE_ARGS="-DGGML_METAL=on" pip install llama-cpp-python --force-reinstall --no-cache-dir | |
| python scripts/verify_day1.py | |
| python scripts/smoke_model.py | |
| python tests/test_extractor.py | |
| python scripts/run_mimpi_uji.py | |
| python app.py | |
| ``` | |
| --- | |
| ## Day 1 β perintah verifikasi | |
| | Perintah | DoD | | |
| |----------|-----| | |
| | `python scripts/smoke_model.py` | Model load + 1 respons | | |
| | `python tests/test_extractor.py` | 3/3 test cases | | |
| | `python scripts/run_mimpi_uji.py` | β₯8/10 parse OK β `tests/results/mimpi_uji_log.json` | | |
| | Space Running | JSON dari 1 mimpi contoh di UI | | |
| --- | |
| ## Dokumentasi | |
| | Dokumen | Isi | | |
| |---------|-----| | |
| | [Indeks dokumentasi](docs/README.md) | Peta lengkap | | |
| | [Setup lokal](docs/07-setup-lokal.md) | Mac / Metal | | |
| | [Timeline](docs/13-timeline-hackathon.md) | Day 0β5 | | |
| **Konteks Cursor:** [`ONEIROS_CURSOR_CONTEXT.md`](ONEIROS_CURSOR_CONTEXT.md). | |
| --- | |
| ## Lisensi | |
| TBD β tentukan sebelum publish ke Hub. | |
| --- | |
| *Build Small Hackathon 2026 Β· Oneiros* | |