Llama Champion
Off the Grid
OpenBMB
Sharing is Caring
Tiny Titan
Well-Tuned

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "The Compliment Forest", "sdk": "gradio", "declared_models": ["build-small-hackathon/compliment-forest-minicpm5-1b", "build-small-hackathon/compliment-forest-flux-lora"], "tags": ["build-small-hackathon", "gradio", "llama.cpp", "local-first", "watercolor"]}

[README]
# The Compliment Forest Type a name and a situation, then walk through a progressive watercolor path. Each clearing pairs a creature with grounded encouragement, a reflection, and a copyable tiny spell. The live Space uses the deterministic local demo backend so it remains fast and available on CPU hardware. The same application supports the published MiniCPM5-1B GGUF through a local `llama.cpp` server and FLUX.1-dev with the published watercolor LoRA by setting `CF_TEXT_BACKEND=llama_cpp` and `CF_IMAGE_BACKEND=flux`. No hosted inference API is called at runtime. ## Published artifacts - Text model: `build-small-hackathon/compliment-forest-minicpm5-1b` - Text adapter: `build-small-hackathon/compliment-forest-minicpm5-1b-lora` - Text SFT data: `build-small-hackathon/compliment-forest-sft` - Watercolor LoRA: `build-small-hackathon/compliment-forest-flux-lora` - Watercolor data: `build-small-hackathon/compliment-forest-watercolor` - Linked-model traces: `build-small-hackathon/compliment-forest-traces` This is whimsical encouragement, not therapy or a substitute for professional support. Crisis and acute-risk inputs are routed to human support instead of generating a forest.

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"Well-Tuned","confidence":0.95,"evidence":"Text adapter LoRA; Text SFT data; Watercolor LoRA published","source":"readme"},{"quest":"OpenBMB","confidence":0.95,"evidence":"published MiniCPM5-1B; declared minicpm5-1b model","source":"readme"},{"quest":"Tiny Titan","confidence":0.95,"evidence":"MiniCPM5-1B GGUF — 1B parameter model","source":"readme"},{"quest":"Llama Champion","confidence":0.92,"evidence":"MiniCPM5-1B GGUF through a local llama.cpp server","source":"readme"},{"quest":"Off the Grid","confidence":0.9,"evidence":"No hosted inference API is called at runtime","source":"readme"},{"quest":"Sharing is Caring","confidence":0.85,"evidence":"copyable tiny spell; Linked-model traces published","source":"readme"}]}


Backyard AI
Modal
OpenBMB
Sharing is Caring
Thousand Token Wood

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Roast My Repo", "sdk": "gradio", "declared_models": [], "tags": ["gradio", "region:us"]}

[README]
# 🔥 Roast My Repo > Paste a GitHub URL. Brace yourself. AI-powered code review that tells you what your friends won't. Built for the [HuggingFace Build Small Hackathon](https://huggingface.co/build-small-hackathon) — Chapter One: Backyard AI. Powered by **[MiniCPM4-8B](https://huggingface.co/openbmb/MiniCPM4-8B)** (OpenBMB) served via **[Modal](https://modal.com)**. --- ## What it does Paste any public GitHub repo URL and get: - 🔥 **The Roast** — brutal, funny, specific critique referencing actual filenames and code - 📊 **Scorecard** — rated across Code Quality, Documentation, Security, Structure, and Portfolio Value - 🚨 **Red Flags** — specific issues found in this repo, not generic advice - 📄 **Generated README** — a production-quality README you can copy and use immediately - 💼 **Hire Me Score** — would a recruiter close the tab or keep reading? --- ## Who it's for Final-year CS students and junior developers who want honest feedback on their GitHub portfolio before applying for jobs. Built because most people's repos look worse than their actual skills — and nobody tells them. --- ## Tech Stack | Layer | Technology | |---|---| | UI | Gradio 5 (custom terminal CSS) | | Inference | [MiniCPM4-8B](https://huggingface.co/openbmb/MiniCPM4-8B) via vLLM on Modal | | Serving | Modal A10G GPU · OpenAI-compatible `/v1/chat/completions` | | Repo fetching | GitHub REST API (tree + contents) | | Local dev fallback | Groq (llama-3.1-8b-instant) | --- ## Why MiniCPM4-8B? MiniCPM4-8B from ...

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"OpenBMB","confidence":0.95,"evidence":"MiniCPM4-8B (openbmb/MiniCPM4-8B) (OpenBMB)","source":"readme"},{"quest":"Modal","confidence":0.95,"evidence":"MiniCPM4-8B via vLLM on Modal, Modal A10G GPU","source":"readme"},{"quest":"Backyard AI","confidence":0.7,"evidence":"final-year CS students wanting honest feedback on GitHub portfolio before jobs","source":"readme"},{"quest":"Thousand Token Wood","confidence":0.55,"evidence":"brutal, funny critique; tells you what your friends won't","source":"readme"},{"quest":"Sharing is Caring","confidence":0.5,"evidence":"Generated README you can copy and use immediately","source":"readme"}]}


Llama Champion
Nemotron
Off the Grid
Thousand Token Wood
Tiny Titan

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Mythograph Atelier", "sdk": "gradio", "declared_models": [], "tags": ["gradio", "region:us"]}

[README]
# Mythograph Atelier Abstract art with a meaning you can explain. Mythograph Atelier is a Gradio app for Hugging Face's Build Small Hackathon. It creates an abstract painting backwards: first a small local text model asks short adaptive questions and chooses safe UI controls, then FLUX.2 Klein renders a landscape abstract artwork with a title, symbol map, and short explanation. ## Current MVP - Chat-first dynamic interview with starter chips, assistant messages, and controls that appear only when needed. - No external inference APIs: `llama.cpp` runs the text model on ZeroGPU, and FLUX.2 Klein runs afterward on ZeroGPU for image generation. - Dynamic control tray for choice cards, multi-choice cards, visual sliders, palette mood, text refinement, and create readiness. - FLUX.2 Klein image generation with Pillow as a reliable fallback. - JSONL trace logging for conversation turns, control responses, model calls, image generation, and demo sessions. - Custom Gradio shell designed for the Off-Brand badge path. ## Hackathon Fit - **Track:** An Adventure in Thousand Token Wood - **Small models only:** Nemotron-3-Nano-4B for text and FLUX.2 Klein 4B for images. - **Built on Gradio:** The app is a Gradio Blocks application. - **Off the Grid:** No cloud inference APIs are required. - **Llama Champion:** Text inference runs through `llama.cpp`. ## Run Locally For quick UI testing without model download: ```bash MYTHOGRAPH_LLM_MODE=mock python app.py ``` For the no-API llama.cpp path: ...

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"Llama Champion","confidence":0.95,"evidence":"Text inference runs through `llama.cpp`","source":"readme"},{"quest":"Nemotron","confidence":0.93,"evidence":"Nemotron-3-Nano-4B for text","source":"readme"},{"quest":"Off the Grid","confidence":0.9,"evidence":"No cloud inference APIs are required","source":"readme"},{"quest":"Tiny Titan","confidence":0.9,"evidence":"Nemotron-3-Nano-4B for text and FLUX.2 Klein 4B","source":"readme"},{"quest":"Thousand Token Wood","confidence":0.85,"evidence":"Track: An Adventure in Thousand Token Wood","source":"readme"}]}


Llama Champion
Off the Grid
Off-Brand
Thousand Token Wood
Tiny Titan

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Tiny Army", "sdk": "docker", "declared_models": [], "tags": ["docker", "region:us"]}

[README]
# ⚔ Tiny Army **HF Build Small Hackathon entry — Track 2 ("An Adventure in Thousand Token Wood").** *Tiny Army: every fighter writes its own legend — and the legend is true.* A small local LLM gives each auto-battler unit a persona and writes its first-person war diary from what it actually lived through. The twist that makes the AI **load-bearing**: a unit's experience-shaped "soul" *drives how it fights*, so the diary describes the unit's own real, learned behaviour. Two small models, both load-bearing — a 1–3B LLM for voice, a <1 MB policy net for tactics. ## Architecture - **FastAPI** serves the custom Pixi battle frontend (the deterministic combat engine + souls + the ONNX captain run in the browser). - A **mounted Gradio app** (`/app`) is the barracks: persona + war-diary generation via **llama.cpp** (local, no cloud — 🔌 Off the Grid + 🦙 Llama Champion). This is the current skeleton; see the plan in the auto-battler repo (`docs/design/hackathon-build-small.md`).

[APP_FILE] (unknown)
(no app file available)

[Assistant] {"matches":[{"quest":"Thousand Token Wood","confidence":0.97,"evidence":"Track 2 \"An Adventure in Thousand Token Wood\"","source":"readme"},{"quest":"Llama Champion","confidence":0.95,"evidence":"persona + war-diary generation via llama.cpp","source":"readme"},{"quest":"Tiny Titan","confidence":0.9,"evidence":"a 1–3B LLM for voice","source":"readme"},{"quest":"Off the Grid","confidence":0.88,"evidence":"local, no cloud — Off the Grid","source":"readme"},{"quest":"Off-Brand","confidence":0.8,"evidence":"FastAPI serves the custom Pixi battle frontend","source":"readme"}]}


Backyard AI
Off the Grid
Thousand Token Wood
Tiny Titan

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Lolaby", "sdk": "gradio", "declared_models": ["build-small-hackathon/lolaby-llama-3b", "openbmb/MiniCPM-V-4_6", "hexgrad/Kokoro-82M"], "tags": ["agentic", "backyard-ai", "build-small-hackathon", "children", "fine-tuned", "gradio", "llama-cpp", "lullaby", "on-device", "small-models", "text-to-audio"]}

[README]
# Lolaby — AI-powered lullabies > *A tiny AI that watches your child's drawings and sings them a personalised lullaby.* Built for the [Hugging Face **Build Small Hackathon 2026**](https://huggingface.co/build-small-hackathon) · **Backyard AI** track 🏡 **Try it:** [the live Space](https://huggingface.co/spaces/build-small-hackathon/lolaby) · **Demo video:** [60-second walkthrough](placeholder_demo_video_url) · **Model:** [`lolaby-llama-3b` on the Hub](https://huggingface.co/build-small-hackathon/lolaby-llama-3b) · **Field notes:** [the build journal](placeholder_blog_url) --- ## The Problem My partner's sister is a kindergarten teacher, who runs nap time for fifteen 4-year-olds on a daily basis. Every child wants the same thing at the start of nap: *"sing me a song with my name in it."* She'd love to give each child their own song, drawn from what they actually love that week (a stuffed fox, a new puppy, the rainbow). She doesn't have time, musical expertise nor a tool. **Lolaby is the tool.** The child shows Lola what they love — either by doodling on screen, or by handing the teacher a paper drawing for her to snap a photo of. The teacher types their name. A small, on-device AI watches the drawing, writes them a lullaby about it, and sings it back — in about a minute. Everything runs locally. No cloud LLM, no per-song API cost, no children's drawings or names ever leaving the device. ## How it works ![](https://postimg.cc/G44grHt7) **The drawing is optional.** No canvas draw ...

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"Backyard AI","confidence":0.97,"evidence":"kindergarten teacher runs nap time for fifteen 4-year-olds","source":"readme"},{"quest":"Off the Grid","confidence":0.95,"evidence":"Everything runs locally. No cloud LLM, no per-song API cost","source":"readme"},{"quest":"Tiny Titan","confidence":0.9,"evidence":"a small, on-device AI; lolaby-llama-3b (3B), Kokoro-82M","source":"readme"},{"quest":"Thousand Token Wood","confidence":0.85,"evidence":"watches your child's drawings and sings them a personalised lullaby","source":"readme"}]}


Llama Champion
Nemotron
Tiny Titan
Well-Tuned

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Hackathon Advisor", "sdk": "gradio", "declared_models": [], "tags": ["agent", "build-small-hackathon", "gradio", "off-the-grid", "originality", "small-models"]}

[README]
# Hackathon Advisor **Hackathon Advisor** is a text-first project advisor for the Build Small Hackathon. The user-facing experience is **The Unwritten Almanac**: a journal-style workspace that compares your idea against real Spaces in the `build-small-hackathon` organization, finds under-explored territory, scores the idea, and drafts a practical build plan. The current milestone is a deployed ZeroGPU + MiniCPM5 LoRA advisor: - Local snapshot of public `build-small-hackathon` Spaces. - Modal-built EmbeddingGemma GGUF retrieval index, with runtime query embeddings computed through llama.cpp. - Nemotron Speech Streaming voice input through NVIDIA NeMo ASR on ZeroGPU. - Jargon correction for hackathon/model terms. - MiniCPM5 tool-call planning with a published PEFT LoRA adapter, plus deterministic local rules for tests and CPU-only development. - One-turn advisor loop with overlap citations, whitespace suggestions, scoring, and plans. - Custom `gradio.Server` frontend focused on the builder's idea workflow, with submission evidence kept in API exports. See [DESIGN.md](DESIGN.md) for the full product and model plan. ## Run Locally ```bash python3.11 -m venv .venv . .venv/bin/activate pip install -r requirements.txt python app.py ``` Then open <http://127.0.0.1:7860>. ## Refresh The Project Snapshot ```bash python scripts/crawl_hf_spaces.py --org build-small-hackathon --out data/projects.json .venv/bin/modal run scripts/modal_build_project_index.py --projects data/projects.json -- ...

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"Well-Tuned","confidence":0.97,"evidence":"published PEFT LoRA adapter for MiniCPM5","source":"readme"},{"quest":"Llama Champion","confidence":0.95,"evidence":"runtime query embeddings computed through llama.cpp","source":"readme"},{"quest":"Nemotron","confidence":0.95,"evidence":"Nemotron Speech Streaming via NVIDIA NeMo ASR","source":"readme"},{"quest":"Tiny Titan","confidence":0.95,"evidence":"runs openbmb/MiniCPM5-1B, a 1B model","source":"readme"}]}


[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Trace Field Notes", "sdk": "gradio", "declared_models": [], "tags": ["gradio", "region:us"]}

[README]
# Trace Field Notes Trace Field Notes turns coding-agent session logs into qualitative field reports. Upload a Codex, Claude Code, or Pi Agent JSONL trace. The app ignores raw tool telemetry by default and analyzes only the agent's visible narrative messages: what it planned, where it got stuck, how it detoured, how it recovered, and how it claimed completion. Built for the Build Small Hackathon. The frontend is a custom React field-notebook UI (a trail map of the session) served by `gradio.Server`; it calls the Python `analyze_trace` endpoint through `@gradio/client`. Both analysis models run on the Space GPU through ZeroGPU: a quick `openbmb/MiniCPM5-1B` pass by default, and the larger `nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B-BF16` for deeper analysis. Redaction adds a PII pass with `openai/privacy-filter`. A verified deterministic codebook analyzer is the always-available recovery path and needs no model or GPU. ## Architecture - `app.py` — a `gradio.Server` (FastAPI) app. It serves `frontend/index.html`, mounts `frontend/static/`, exposes `@server.api("analyze_trace")` (queued, with `gradio_client` compatibility), and an `/agents.md` instructions endpoint. - `frontend/` — the designer's React app (in-browser Babel, no build step): `field_report.css` (the design system), `data.js` (codebook + tone labels), `components.jsx` (atoms + trail map + report sections), `app.jsx` (shell + upload, wired to the backend). - `view_model.py` — adapts an `AnalysisResult` into the JSON shap ...

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"OpenBMB","confidence":0.95,"evidence":"openbmb/MiniCPM5-1B pass by default","source":"readme"},{"quest":"Nemotron","confidence":0.95,"evidence":"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B-BF16 for deeper analysis","source":"readme"},{"quest":"Off-Brand","confidence":0.93,"evidence":"custom React field-notebook UI served by gradio.Server","source":"readme"},{"quest":"Tiny Titan","confidence":0.9,"evidence":"quick openbmb/MiniCPM5-1B pass by default","source":"readme"}]}


Backyard AI
Best Agent
Off-Brand
Sharing is Caring

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Backyard Demo Builder", "sdk": "gradio", "declared_models": ["unsloth/gemma-4-12B-it-qat-GGUF", "Qwen/Qwen2.5-7B-Instruct", "nvidia/Nemotron-3.5-Content-Safety"], "tags": ["agents", "ai-agents", "backyard-ai", "build-small-hackathon", "demo-builder", "gradio", "real-estate", "small-language-model"]}

[README]
# Backyard Demo Builder ## Chapter 1: Backyard AI *Build Small Hackathon 2026 — Chapter 1 Submission* `agent-swarm-workbench` now presents as **Backyard Demo Builder**: a Gradio app that turns one real person's workflow into a small runnable demo package before anyone pays to build full software. First backyard case: my mom, a real-estate agent. She needs a cheap way to test a customer follow-up reminder workflow before committing time and money to a full app. --- ## Watch the Demo Builder Work ``` You: "Build a real-estate follow-up CRM demo for my mom." Builder: Generates a Gradio mini-app, handoff spec, field notes, and checks Result: app.py, README.md, handoff_spec.md, field_notes.md Mom: Tests the workflow, then we scrap or scale. ``` Every Run produces a **downloadable demo package** and Validation report: files you can inspect, unzip, run, and test with the real person. --- ## Build Small Hackathon — Submission Notes | Requirement | How We Meet It | |---|---| | **Small model (≤ 32B)** | Provider catalog fetches models at runtime and only allows models whose ID/name proves ≤32B | | **Gradio app** | Custom dark-themed Gradio UI mounted on FastAPI | | **HF Space** | `app.py` + `requirements.txt` — one-command deploy | | **Demo video** | *(placeholder — [link to demo])* | | **Social post** | *(placeholder — [link to post])* | ### Bonus Badges Claimed | Badge | Why | |---|---| | **🎨 Off-Brand** | Fully custom CSS dark theme — Archivo + IBM Plex Mono, acid green CTAs, paper/ ...

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"Backyard AI","confidence":0.93,"evidence":"my mom, a real-estate agent; cheap way to test follow-up reminder workflow","source":"readme"},{"quest":"Sharing is Caring","confidence":0.85,"evidence":"downloadable demo package: files you can inspect, unzip, run, and test","source":"readme"},{"quest":"Off-Brand","confidence":0.78,"evidence":"Fully custom CSS dark theme — Archivo + IBM Plex Mono, acid green CTAs","source":"readme"},{"quest":"Best Agent","confidence":0.5,"evidence":"agent-swarm-workbench generates app, spec, field notes, and checks","source":"readme"}]}


Backyard AI
Off the Grid
Tiny Titan
Well-Tuned

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "What Changed", "sdk": "gradio", "declared_models": ["zeon01/what-changed-1b"], "tags": ["gradio", "region:us"]}

[README]
# What Changed 📋 A private, **local** tracker that turns a caregiver's daily notes about a parent with **Parkinson's disease** into a one-page **doctor report** — running entirely on a fine-tuned **1B** model ([`zeon01/what-changed-1b`](https://huggingface.co/zeon01/what-changed-1b)) via llama.cpp. Nothing leaves the device. > **Not medical advice / not a medical device.** It organizes a caregiver's own observations > to share with a clinician; it does not diagnose, predict, or recommend treatment. ## How it works 1. **Log** a day in plain words — *"froze in the doorway, pill wore off before lunch"* — and the fine-tuned 1B extracts structured ratings + event counts. Decoding is **grammar-constrained**, so the output is always valid schema JSON. 2. **Trends** are computed by **deterministic Python** (rolling averages, decline streaks, event rates) — the model never touches the math, so it can't hallucinate a trend. 3. **Report** narrates the already-computed findings in plain language to bring to the doctor. A 1.08B model is enough because it only does two narrow jobs (note→JSON, and phrasing findings); the reasoning is all deterministic. That's what makes it run locally on plain hardware. *This demo is pre-seeded with a realistic 60-day decline arc so the Trends and Report tabs are populated. Built for the Build Small Hackathon.*

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"Tiny Titan","confidence":0.97,"evidence":"A 1.08B model is enough","source":"readme"},{"quest":"Off the Grid","confidence":0.95,"evidence":"running entirely via llama.cpp. Nothing leaves the device","source":"readme"},{"quest":"Backyard AI","confidence":0.95,"evidence":"caregiver's notes about a parent with Parkinson's into a doctor report","source":"readme"},{"quest":"Well-Tuned","confidence":0.9,"evidence":"a fine-tuned 1B model zeon01/what-changed-1b","source":"readme"}]}


Field Notes
OpenBMB
Thousand Token Wood
Tiny Titan

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Dream Customs", "sdk": "gradio", "declared_models": ["openbmb/MiniCPM5-1B", "openbmb/MiniCPM-V-4.6"], "tags": ["build-small-hackathon", "dream-journal", "gradio", "minicpm"]}

[README]
# Dream Customs A Build Small Hackathon Gradio app that helps users form a playful alliance with last night's dream. ## Concept Dream Customs accepts dream declarations by text, image, or voice. It turns the dream into a gentle "customs negotiation" and returns a Today's Pact card: one practical suggestion, one weird 5-minute task, and one bedtime release phrase. ## Models - `openbmb/MiniCPM-V-4.6` for image/sketch/note understanding. - `openbmb/MiniCPM5-1B` for dream negotiation and pact generation. - A small ASR adapter may be used only for voice transcription. - The app defaults to a stable demo backend so the local Gradio flow always works. - Optional Ollama adapters are included for local MiniCPM testing. ## Run ```bash python3 -m venv .venv source .venv/bin/activate python -m pip install -r requirements.txt python app.py ``` Open `http://127.0.0.1:7860`. ## Optional Ollama Models ```bash ollama pull hf.co/openbmb/MiniCPM5-1B-GGUF:Q8_0 ollama pull openbmb/minicpm-v4.6 ``` Then switch the UI engine controls from `demo` to `ollama`. Local smoke notes from this Mac mini: - Memory/size is fine: 16 GB RAM handled the local model downloads. - `hf.co/openbmb/MiniCPM5-1B-GGUF:Q8_0` loads in Ollama, but current output was malformed for JSON prompts. - `openbmb/minicpm-v4.6` pulled successfully, but current Ollama runner returned `unable to load model`. - Because of that, the MVP keeps Ollama optional and falls back to deterministic demo behavior. ## Optional Hosted MiniCPM Routes ...

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"OpenBMB","confidence":0.97,"evidence":"openbmb/MiniCPM5-1B and openbmb/MiniCPM-V-4.6 declared models","source":"readme"},{"quest":"Tiny Titan","confidence":0.93,"evidence":"openbmb/MiniCPM5-1B for dream negotiation and pact generation","source":"readme"},{"quest":"Thousand Token Wood","confidence":0.88,"evidence":"playful alliance with last night's dream; Today's Pact card","source":"readme"},{"quest":"Field Notes","confidence":0.6,"evidence":"Local smoke notes from this Mac mini: what loaded/failed","source":"readme"}]}


Llama Champion
Off the Grid
Thousand Token Wood
Tiny Titan

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Case Zero", "sdk": "docker", "declared_models": ["Qwen/Qwen2.5-1.5B-Instruct"], "tags": ["build-small-hackathon", "detective-game", "llama-cpp", "text-generation", "tiny-titan", "tts"]}

[README]
# 🕵 Case Zero — the AI *is* the detective game **A brand-new murder mystery, written and acted by a 1.5B model, every single time.** No scripted cases. No content library. A single small local model invents the whole thing — the victim, the suspects, their secrets and motives, the timeline, the murder weapon, the evidence, and the one who did it — then **role-plays every suspect live**. They remember what you asked. They lie to your face. And when you slap down the right piece of evidence, you watch the lie **crack in real time**. > Interrogate. Investigate. Accuse. One of them is guilty. Prove it. ## ✨ The moment that sells it Search the rooms, find a clue that contradicts a suspect's alibi, **present it**, and their story falls apart on screen — stress spikes, the alibi breaks, the truth leaks. Then name the killer, cite your proof, and get a scored verdict with a "Director's Cut" walkthrough of how the crime really went down. ## 🧠 How it works | Layer | What it does | |---|---| | **Model** — Qwen2.5-1.5B-Instruct (GGUF) | The whole game. Runs in-process on the CPU through **llama.cpp** (`llama-cpp-python`) — no server, no GPU, no remote endpoint. | | **Generation** | The model authors every case as JSON; deterministic Python only wires the *structure* (who's guilty, who was where) so the mystery is always solvable. | | **Solver** | A fairness referee: single culprit, a breakable alibi, every innocent cleared, and a discoverability gate so the key clue is always findable i ...

[APP_FILE] (unknown)
(no app file available)

[Assistant] {"matches":[{"quest":"Llama Champion","confidence":0.97,"evidence":"llama.cpp (`llama-cpp-python`) — no server, no GPU","source":"readme"},{"quest":"Tiny Titan","confidence":0.97,"evidence":"Qwen2.5-1.5B-Instruct (GGUF)","source":"readme"},{"quest":"Off the Grid","confidence":0.93,"evidence":"single small local model; no server, no remote endpoint","source":"readme"},{"quest":"Thousand Token Wood","confidence":0.88,"evidence":"brand-new murder mystery, written and acted by a 1.5B model","source":"readme"}]}


Nemotron
Off the Grid
Off-Brand
Tiny Titan

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Mycelium", "sdk": "gradio", "declared_models": [], "tags": ["gradio", "region:us"]}

[README]
# Mycelium — Personal Knowledge Agent Mycelium is a local-first, AI-powered knowledge companion that helps you capture, connect, and resurface what matters. ## What it does - **Capture** anything: notes, links, images — all processed by an LLM into structured summaries with intent classification and tags - **Surface** relevant captures at the right time based on recency, intent (learn / act / reference), and semantic similarity - **Connect** captures automatically using embedding-based similarity — see what ideas are related before you forget - **Browse** your entire knowledge base with full-text search and intent/type filters ## How it works 1. You capture a note, URL, or image 2. NVIDIA Nemotron-Mini (4B) extracts the core insight, suggests tags, and classifies intent 3. A sentence-transformer embeds the summary into a vector 4. Related captures are found via cosine similarity — building a knowledge graph automatically 5. The surface engine resurfaces captures you should revisit, weighted by intent and recency ## Tech - **Backend**: FastAPI + SQLite (persistent at `/data/mind.db`) - **LLM**: `nvidia/Nemotron-Mini-4B-Instruct` via HF Transformers + ZeroGPU - **Vision**: `Qwen/Qwen2.5-VL-7B-Instruct` for image capture - **Embeddings**: `sentence-transformers/all-MiniLM-L6-v2` - **Frontend**: React + TypeScript + Tailwind CSS (served by FastAPI, Gradio at `/gradio`) ## Built with Built for the [Build Small Hackathon](https://huggingface.co/build-small-hackathon).

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"Nemotron","confidence":0.97,"evidence":"nvidia/Nemotron-Mini-4B-Instruct via HF Transformers + ZeroGPU","source":"readme"},{"quest":"Off-Brand","confidence":0.9,"evidence":"React + TypeScript + Tailwind CSS (served by FastAPI)","source":"readme"},{"quest":"Tiny Titan","confidence":0.83,"evidence":"NVIDIA Nemotron-Mini (4B) extracts the core insight","source":"readme"},{"quest":"Off the Grid","confidence":0.6,"evidence":"local-first, AI-powered knowledge companion; HF Transformers + ZeroGPU","source":"readme"}]}


[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Dental SOAP", "sdk": "gradio", "declared_models": ["Qwen/Qwen3-4B-Instruct-2507"], "tags": ["agents", "bilingual", "healthcare", "zero-gpu"]}

[README]
# Dental SOAP A doctor could not clearly explain his own crown, root canal, bite, and TMJ story to his dentist, so he built a small-model visit-prep tool that turns patient chaos into a one-page dentist handoff. Dental SOAP is not an AI dentist. It is a patient education and visit-documentation aid. It organizes patient-reported history to bring to a licensed dentist. It does not diagnose, interpret imaging, prescribe medication, or choose a dental procedure. Fixed safety rules can advise urgent in-person care. ## Why This Exists (A Real Case) The builder's own case took three months and two specialties to untangle: an extraction with an immediate sinus repair, a crown that felt high from day one, a molar adjusted five times without relief, jaw/TMJ soreness — and finally an ENT confirming the sinus infection that tied it together. Referred pain does not respect specialty boundaries; the only thing that crossed them cleanly was a written handoff a clinician could scan in under a minute. He lived that workflow manually with a frontier cloud model between real appointments. Dental SOAP is the Build Small answer: the same narrow job, done by a 4B open model inside the Space, with deterministic rules guarding safety. The `Try Ahmed's case` example **is** that case, de-identified — and the `repeated bite adjustments without lasting relief` safety rule exists because it happened to him. **Try it in 10 seconds:** click **Try Ahmed's case** — the handoff renders instantly from a valid ...

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"Tiny Titan","confidence":0.97,"evidence":"4B open model inside the Space; Qwen3-4B-Instruct-2507","source":"readme"},{"quest":"Backyard AI","confidence":0.96,"evidence":"builder's own case took three months and two specialties to untangle","source":"readme"},{"quest":"Field Notes","confidence":0.78,"evidence":"Why This Exists (A Real Case) write-up of the build motivation","source":"readme"}]}


Off the Grid
Thousand Token Wood
Tiny Titan

[System] You classify hackathon projects against fixed quest dimensions. Return exactly one strict JSON object and nothing else. The first character must be { and the last character must be }. Each match needs quest, confidence, evidence, and source (readme or app_file). Never emit markdown, prose, a top-level array, extra keys, or an unknown or rephrased quest name.

[User]
Classify this hackathon project against the quest dimensions below.
Read the two evidence segments (README and APP_FILE) and judge each quest only from them.

Quests (copy the id on the left verbatim):
- Off the Grid: Runs the model on-device with no remote inference call: weights load locally and inference happens in-process, not over a hosted API. Signals: AWARD on a local in-process load: from_pretrained / pipeline / llama_cpp / diffusers / vLLM / ONNX, GGUF weights, @spaces.GPU. DISQUALIFY (do NOT award) on ANY remote inference call, even via huggingface_hub: InferenceClient, HF Inference API/Endpoints, gradio_client to a remote Space, replicate/together/openrouter/fal/groq, a *.modal.run or other HTTP inference endpoint, or openai/anthropic/gemini/cohere clients. A remote call disqualifies regardless of which model it names.
- Well-Tuned: Uses or publishes a fine-tuned or LoRA-adapted model rather than only stock checkpoints. Signals: LoRA/PEFT adapter, fine-tuned model repo, training script, words like fine-tune, adapter, SFT, distilled.
- Off-Brand: Ships a custom interface beyond default Gradio styling, with a memorable look or voice. Signals: custom CSS/HTML/JS, gr.HTML, gr.Blocks theme/css=, gr.Server, custom components, bespoke theming.
- Llama Champion: Runs a model through the llama.cpp runtime. Signals: llama-cpp-python, from llama_cpp import Llama, GGUF file, llama.cpp, Llama( constructor.
- Sharing is Caring: Produces an output people can save, post, or compare, or publishes an agent trace to the Hub. Signals: download/export button, gr.File/gr.DownloadButton, save PNG/PDF/JSON, push_to_hub of a trace or dataset.
- Field Notes: Documents the build itself with notes, a write-up, or a blog/report link. Signals: README has a substantial build write-up, devlog, lessons learned, or a blog/report/Notion link.
- Backyard AI: Solves a concrete real-world problem for a specific, named person or persona. Signals: README frames a real user and task (caregiving, a relative, a job, a household chore), practical utility.
- Thousand Token Wood: A delightful, playful, or artistic experience that would not exist without AI. Signals: story/game/art/whimsy framing, generative characters or worlds, playful tone, creative novelty.
- OpenBMB: Uses a model published by OpenBMB (the openbmb org), such as the MiniCPM family. Signals: The model id org prefix must be exactly openbmb/ (openbmb/MiniCPM*, OpenCPM). A model from any other org is NOT OpenBMB: openai/gpt-oss, Qwen/..., meta-llama/..., google/..., nvidia/..., microsoft/..., mistralai/... do NOT count just because a model id is present.
- Nemotron: Uses an NVIDIA Nemotron model (Nemotron LLM, Parakeet, Nemotron-Speech, Canary). Signals: model repo nvidia/...nemotron..., Parakeet, nemotron-speech, Canary ASR.
- Modal: Uses Modal for training, inference, or background compute. Signals: import modal, modal.App, @app.function, Modal endpoint/volume, README cites Modal compute.
- Tiny Titan: Runs on a genuinely small model of about four billion parameters or fewer. Signals: AWARD when the model name says <=4B: 0.5B/1B/1.5B/2B/3B/4B or tiny/small/nano/mini (Qwen2.5-1.5B, MiniCPM5-1B, gemma-2b). Do NOT award for 7B/8B/12B/13B/20B/27B/35B+ models (e.g. gpt-oss-20b, Qwen2.5-7B); a version number like V-4.6 is not a parameter count.
- Best Agent: An agentic build: tool use, function calling, planning, or an autonomous multi-step loop. Signals: tool/function calling, an agent/planner loop, multiple orchestrated tools, ReAct, multi-step reasoning over tools.

Rules:
- Include a quest only when a segment gives clear, specific evidence.
- quest must be one id from the list above, copied exactly. Never invent or rephrase a quest name.
- confidence is a number between 0 and 1.
- evidence is a 3-to-12 word quote or tight paraphrase taken from the segment you cite.
- source is "readme" when the evidence is in the README segment, "app_file" when it is in the APP_FILE segment.
- At most one match per quest. Sort matches by confidence, highest first.
- If no quest has clear evidence, return an empty matches list.
- Output exactly one JSON object: {"matches":[{"quest":"...","confidence":0.0,"evidence":"...","source":"readme"}]}.
- No markdown, no code fences, no commentary, no extra keys.

METADATA: {"title": "Trollsona", "sdk": "gradio", "declared_models": [], "tags": ["gradio", "region:us"]}

[README]
# Trollsona / Your Troll Alterego **Tagline:** Summon the little menace living behind your respectable personality. **Track:** An Adventure in Thousand Token Wood **Build target:** Hugging Face Space, Gradio app, small-model constraint `<=32B`. **GitHub repo:** https://github.com/rthgit/Trollsona **Official Build Small Space:** https://huggingface.co/spaces/build-small-hackathon/Trollsona **Backup Space:** https://huggingface.co/spaces/RthItalia/Trollsona Trollsona is a playful Gradio experience that turns a short user confession into a theatrical troll alter ego. The app returns a dossier-style result card with a trollsona name, a warm roast, one useful slap, and a goblin meter. Built with a compact RthItalia model derived from `Qwen/Qwen2.5-3B-Instruct`, under `32B` parameters. The deployed Space is configured to try that model first, then a lightweight Qwen 0.5B model, then the deterministic local fallback if model loading or generation is unavailable. The official public Space currently runs the lightweight Qwen fallback on CPU, while the custom RthItalia compact 3B path is enabled automatically when CUDA is available. ## Features - Immersive Gradio UI for Hugging Face Spaces - Theatrical trollsona result card - Local Hugging Face Transformers generation path for the primary AI runtime - Secondary lightweight Transformers model fallback - Deterministic fallback generator for final resilience - Safe roast guard for non-hateful, non-identity-targeted humor - Persona dropdow ...

[APP_FILE] app.py
(no app file available)

[Assistant] {"matches":[{"quest":"Thousand Token Wood","confidence":0.97,"evidence":"Track: An Adventure in Thousand Token Wood; playful troll alter ego; goblin meter","source":"readme"},{"quest":"Tiny Titan","confidence":0.93,"evidence":"compact model derived from Qwen/Qwen2.5-3B-Instruct; lightweight Qwen 0.5B fallback","source":"readme"},{"quest":"Off the Grid","confidence":0.85,"evidence":"Local Hugging Face Transformers generation path for the primary AI runtime","source":"readme"}]}