build-small-hackathon/aube-nova
1
1---2title: Aube Nova3emoji: π4colorFrom: blue5colorTo: green6sdk: gradio7sdk_version: 6.17.38app_file: app.py9pinned: true10tags:11 - simulation12 - colony13 - gradio14 - llm15 - generative-ai16 - text-generation17 - small-language-model18 - build-small-hackathon19 - thousand-token-wood20models:21 - openbmb/MiniCPM4.1-8B22 - openbmb/VoxCPM223---24 2526 27# π AUBE NOVA28 29### *Humanity's First Autonomous Extraterrestrial Colony*30 31[](https://huggingface.co/spaces/build-small-hackathon/aube-nova)32[](https://huggingface.co/openbmb/MiniCPM4.1-8B)33[](https://python.org)34[](LICENSE)35[](https://huggingface.co/build-small-hackathon)36[](https://www.youtube.com/watch?v=encFNZv0uVU)37 38---39 40## π¬ Demo41 42> **[βΆ Watch the demo video](https://www.youtube.com/watch?v=encFNZv0uVU)**43 44---45 46## π Social47 48> **[π£ LinkedIn post about this build](https://www.linkedin.com/feed/update/urn:li:activity:7472435029697282048/)**49 50---51 52## π₯ Team53 54| Name | Hugging Face |55|------|--------------|56| Reinaldo | [reinaldog](https://huggingface.co/reinaldog) |57 58---59 60**Aube Nova** is a living civilization simulator powered entirely by small language models.6112 colonists arrive on a distant world with nothing but their wits, their tools, and each other.62Every decision, every crisis response, and every newspaper headline is generated by [MiniCPM4.1-8B](https://huggingface.co/openbmb/MiniCPM4.1-8B) β in real time, ~80 tokens at a time.63You don't control them. You watch them survive.64 65> π *Built for the [Build Small Hackathon](https://huggingface.co/build-small-hackathon) Β· Track: Thousand Token Wood*66 67---68 69## π What It Does70 71| π§ System | π Description |72|-----------|---------------|73| π₯ **12 LLM Agents** | Each colonist acts autonomously β their weekly action is generated by MiniCPM4.1-8B (~80 tokens in/out) |74| β±οΈ **Tick Engine** | Each week resources deplete, crises erupt, breakthroughs happen, colonists age and die |75| π° **The Aube Chronicle** | A newspaper front page written by the LLM at year-end, with milestone entries for deaths, births, and discoveries |76| π **Narration** | Chronicle entries read aloud by [VoxCPM2](https://huggingface.co/openbmb/VoxCPM2); gracefully falls back to gTTS on CPU |77| π **Live Analytics** | Resource trends, population by generation, and cultural trait drift β all charted in real time |78| 𧬠**Cultural DNA** | Colonist personalities drift as conditions change β crises breed pragmatism, breakthroughs breed optimism |79| π±οΈ **Colonist Profiles** | Click any portrait or map token to see a colonist's traits, memories, notable actions, and health |80 81---82 83## β¨ Features84 85| System | Description |86|--------|-------------|87| πΊοΈ Colony Map | Sci-fi SVG map with dome, habitat module, greenhouse, reactor, and animated colonist tokens |88| π€ Colonist Profiles | Click any portrait or map token to see traits, memories, notable actions, and health |89| β‘ Resource Engine | Oxygen, food, energy, credits β balanced production vs. consumption per tick |90| π₯ Crises | Oxygen plant failure, greenhouse blight, solar storm, credit crisis |91| π‘ Breakthroughs | Permanent knowledge gains (closed-loop Oβ, hydroponic yield, reactor load balancing) |92| π° Chronicle | Newspaper-style annual dispatches + milestone entries with audio narration |93| π Analytics | Resource history, population by generation, cultural trait drift β all live |94 95---96 97## π οΈ How to Run98 99```bash100uv sync101cp .env.example .env # add HF_TOKEN if using the Inference API102uv run python app.py103```104 105Open [http://localhost:7860](http://localhost:7860).106 107**Controls:**108 109| Button | Action |110|--------|--------|111| βΆ **ADVANCE WEEK** | Tick the simulation forward one week |112| β© **FF 10 WEEKS** | Advance 10 weeks at once |113| ποΈ **FF 1 YEAR** | Fast-forward a full colony year (52 weeks with random crises/breakthroughs) |114| π₯ **INJECT CRISIS** | Trigger a random crisis |115| π‘ **BREAKTHROUGH** | Fire an explanatory breakthrough (permanent building bonus) |116| βΊ **NEW COLONY** | Reset to a fresh colony |117 118---119 120## ποΈ Architecture121 122```123app.py (Gradio UI)124βββ simulation/ β world state, colonists, resources, events, genetics125βββ llm/ β agent actions, chronicle, narration (VoxCPM2 + gTTS fallback)126βββ ui/ β SVG map, portraits, HUD, chronicle view, analytics charts127```128 129All agent decisions use **MiniCPM4.1-8B** via the Hugging Face Inference API.130Narration uses **VoxCPM2** (`openbmb/VoxCPM2`) loaded via `from_pretrained` with audio caching; gracefully falls back to gTTS on CPU-only environments.131 132---133 134## π Philosophy135 136> *"Problems are inevitable. Problems are soluble."* β David Deutsch137 138The **Breakthrough** mechanic is inspired by *The Beginning of Infinity*: the colony doesn't just survive crises β it generates permanent explanatory knowledge that makes it more resilient. Every breakthrough is a small piece of the colony's growing understanding of its world.139 140The setting does narrative work for free: when oxygen is at 12% and the Reactor is critical, you don't need an engineer to explain why it matters.141 142---143 144## π License145 146MIT147 