--- title: AI Time Machine sdk: gradio sdk_version: 6.17.3 python_version: 3.12 app_file: app.py fullWidth: true tags: - track:wood - sponsor:openai - sponsor:nvidia - sponsor:modal - achievement:offbrand - achievement:fieldnotes --- # AI Time Machine AI Time Machine is an immersive Gradio experience for the Build Small Hackathon. The user launches a time machine, arrives in a generated scene, meets an ordinary person from that time and place, talks with them by text or voice, and brings back a souvenir from the encounter. This is built for the **Thousand Token Wood** track: the product is a playful, AI-native encounter rather than a conventional chatbot. The custom cockpit interface, portal sequence, voice loop, scene reveal, generated portrait, narration, and souvenir flow are designed to make the app feel like a small interactive ride. ## Live Submission Links - Space: https://huggingface.co/spaces/build-small-hackathon/ai-time-machine - Demo video: PLACEHOLDER - replace with a public YouTube, Space, or hosted video link before final judging. - Social post: PLACEHOLDER - replace with the public social-media post URL before final judging. - README validator: https://build-small-hackathon-field-guide.hf.space/submit ## Team - Hugging Face: `manikandanj` ## How It Works 1. Pick a launch mode: surprise, past, or future. 2. Start the portal sequence while the app creates the destination, persona, visual scene, narration, and character context. 3. Interact with the person you meet through text or live voice. 4. Ask for a souvenir and reveal a generated artifact from the encounter. The app keeps a fixture profile for deterministic local development and a Modal-backed profile for the live hackathon experience. ## Models And 32B Rule Every enabled model is below the Build Small 32B per-model parameter cap. | Role | Model | Parameters | Runtime | | --- | --- | ---: | --- | | Language | `Qwen/Qwen3-8B` | 8B | Together AI / OpenAI-compatible API | | Speech recognition | `nvidia/nemotron-3.5-asr-streaming-0.6b` | 0.6B | Modal | | Speech synthesis | `ResembleAI/chatterbox-turbo` | about 0.5B | Modal | | Image generation | `black-forest-labs/FLUX.1-schnell` | 12B | Together AI image API | | Emergency local TTS | `hexgrad/Kokoro-82M` | 0.082B | local/dev fallback | The app enforces the cap from `config/models.yaml` during startup. ## Prize And Badge Fit - **Best Use of Codex:** Codex was used throughout implementation, review, packaging, and deployment preparation. - **Nemotron Hardware Prize:** live speech recognition uses NVIDIA Nemotron ASR. - **Best Use of Modal:** Modal serves the ASR and TTS runtime endpoints used by the Hugging Face Space. - **Off-Brand / Custom UI:** the Space uses a custom time-machine cockpit instead of default Gradio styling. - **Field Notes:** see `docs/field_notes.md` for the development write-up. ## Runtime Profiles The default repo config uses `fixture` so local checks and the Space can start without private credentials. For the live hackathon Space, set these Space variables/secrets: ```text GRADIO_ROOT_PATH=https://build-small-hackathon-ai-time-machine.hf.space TIME_MACHINE_ADAPTER_PROFILE=modal TIME_MACHINE_LLM_API_KEY= TOGETHER_API_KEY= TIME_MACHINE_IMAGE_API_KEY= TIME_MACHINE_MODAL_STT_URL= TIME_MACHINE_MODAL_TTS_URL= TIME_MACHINE_MODAL_BEARER_TOKEN= TIME_MACHINE_MODAL_TTS_MODEL_FAMILY=chatterbox_turbo TIME_MACHINE_MODAL_TTS_LATENCY_PROFILE=turbo ``` The Modal runtime is served from `scripts/modal_audio.py`. ## Local Development ```powershell .\.venv\Scripts\python.exe -m pip install -e . $env:TIME_MACHINE_ADAPTER_PROFILE="fixture" .\.venv\Scripts\python.exe app.py ``` For the live Modal-backed profile: ```powershell $env:MODAL_PROFILE="manikandanj" $env:PYTHONUTF8="1" $env:PYTHONIOENCODING="utf-8" $env:TTY_COMPATIBLE="0" .\.venv\Scripts\modal.exe serve scripts\modal_audio.py ``` Copy the printed Modal endpoint URLs into the Space secrets/variables above, then restart the Space.