| # Field Notes: Tiny Dispatch Coach |
|
|
| ## What changed after the first prototype |
|
|
| The first version was a normal route optimizer wrapped in Gradio. That was not |
| enough for Build Small. The useful part of the product is not only route math; |
| it is turning messy human dispatch notes into constraints that a planner can |
| actually verify. |
|
|
| The current design uses OpenBMB MiniCPM5-1B-GGUF as the small local model for |
| constraint parsing. The deterministic optimizer then plans routes with capacity, |
| time windows, waiting time, lateness, and a manual baseline comparison. |
|
|
| ## Why MiniCPM5-1B |
|
|
| - It is an OpenBMB model, matching the hackathon sponsor category. |
| - It is 1.08B parameters, far below the 32B rule. |
| - The GGUF release can run locally through llama.cpp. |
| - Its model card highlights local deployment, tool use, long context, and |
| compact agent workflows, which fit this route-coaching task. |
|
|
| ## Competition fit |
|
|
| The project is intentionally small in both model size and product scope. It is |
| not a general logistics platform. It handles one common small-business workflow: |
| read the daily order sheet, interpret the dispatcher note, and produce a route |
| plan that a human can audit. |
|
|
| This directly targets the hackathon signals: |
|
|
| - Backyard AI: practical helper for a local delivery operator. |
| - Off the Grid: no cloud LLM API. |
| - Llama Champion: MiniCPM5 GGUF is available through llama.cpp, behind an |
| explicit checkbox so the public CPU Basic demo remains responsive. |
| - Sharing is Caring: the planner trace is included as `agent_trace.json`. |
|
|
| ## What the model does |
|
|
| MiniCPM5 receives dispatcher notes such as: |
|
|
| ```text |
| Start at 8:00. School and clinic stops are urgent. Fresh produce should be |
| delivered before lunch. Van capacity 18. |
| ``` |
|
|
| It returns a compact JSON constraint object: |
|
|
| ```json |
| { |
| "prefer_early_priority": true, |
| "avoid_late_penalty": 2.0, |
| "max_route_load": 18, |
| "depot_start": 480, |
| "soft_due_before": 720, |
| "boost_terms": ["school", "fresh"] |
| } |
| ``` |
|
|
| The planner treats those constraints as inputs. It does not let the language |
| model invent routes or metrics. |
|
|
| ## Privacy stance |
|
|
| The demo data is synthetic. The app stores nothing, uses no cloud LLM API, and |
| does not require user secrets. Uploaded CSVs are processed only during the |
| Gradio session. |
|
|