Spaces:
Running
Running
| # Project Status & Hackathon Alignment | |
| _Hugging Face "Build Small" hackathon submission. Last updated: 2026-06-14._ | |
| ## Hackathon rules we're targeting | |
| - Model **under 32B** params, open weights β (Qwen2.5-7B-Instruct) | |
| - **Gradio app** Space β | |
| - Demo video β (TODO) | |
| - Social-media link in README β (TODO) | |
| - Zero GPU limit β (all inference via HF Inference API β no local GPU) | |
| - README track/badge tags β (added) | |
| - ~~Sponsor prize for MiniCPM builds~~ β **dropped** (see decision below) | |
| ## Key decisions (2026-06-14) | |
| 1. **Model: Qwen2.5-7B-Instruct, not MiniCPM.** MiniCPM4.1-8B is not reliably | |
| served on the HF serverless Inference API, and we chose not to run it locally | |
| on a ZeroGPU Space. We therefore **drop the MiniCPM sponsor-prize claim** and | |
| compete on the core Build Small tracks. Qwen2.5-7B is open weights and well | |
| under the 32B cap, so the submission stays valid. | |
| 2. **Gradio 5 (pinned `>=5,<6`).** The original Gradio 4.44 pin broke against the | |
| current dependency stack; Gradio 5.50 is verified working. README `sdk_version` | |
| pinned to `5.50.0` to match. | |
| 3. **Dropped generated-image artifacts; render HTML cards instead.** Diffusion | |
| models render gibberish "text" inside newspaper/document artifacts, which looked | |
| broken. Both tabs now render the structured JSON the model already returns as | |
| legible HTML timeline/world cards. `image_client.py` is retained but unused. | |
| ## Architecture | |
| - One shared text client (`model_client.py`, HF `chat_completion`) with per-tab | |
| prompt shaping (`prompts.py`). | |
| - Image artifacts via HF `text_to_image` (`image_client.py`), FLUX.1-schnell β | |
| SDXL fallback. | |
| - Graceful fallbacks everywhere β the app never crashes without a token. | |
| ## Track mapping | |
| | Tab | Track | What it does | | |
| |---|---|---| | |
| | πͺ Elsewhere | Backyard AI | Personal counterfactual + safety gate + return-to-reality | | |
| | π Reality Divergence | Thousand Token Wood | Speculative alternate history, ripple reasoning | | |
| ## Phase status | |
| | Phase | Status | | |
| |---|---| | |
| | 1 Foundation | β Done & verified (boots, HTTP 200) | | |
| | 2 Model integration | β Done (Qwen via InferenceClient) | | |
| | 3 UI & flow | β Done & verified | | |
| | 4 Safety & guardrails | β Present (risk gate + strengths/return) | | |
| | 5 Robust fallback | β Verified (401 β graceful fallback) | | |
| | 6 Testing & optimization | β Not started (timings, cold start, concurrency) | | |
| | 7 Submission prep | β³ README done; demo video + social link + deploy TODO | | |
| | VoxCPM2 narration (optional) | β `ENABLE_NARRATION=False`, not implemented | | |
| ## Remaining work | |
| - [ ] Test live inference end-to-end with a real HF token | |
| - [ ] Phase 6: measure startup/inference times, cold start, concurrency | |
| - [ ] Record demo video (both tabs, model responses, safety gate) | |
| - [ ] Add demo video + social-media links to README | |
| - [ ] Deploy to HF Space and confirm clean build | |