Inspiration
We wanted a nutrition companion that gives people control over both their records and where AI processes their information.
Photo logging and conversational assistance are useful, but privacy should be a practical choice. Metria combines on-device AI, encrypted local records, and optional cloud assistance in one Android app.
What it does
Metria helps users record meals, track weight, and review their progress and goals.
Users can describe a meal, speak, photograph food, or scan a nutrition label. The app prepares an editable draft with foods, portions, and visible uncertainty. Users review the draft before saving it to an encrypted vault on their phone.
Supported chat questions connect the assistant to actual saved records. For example, “How many calories were in my latest meal?” triggers a local record lookup rather than relying on conversational memory.
Users choose between:
- Local: Gemma runs on the phone after downloading and preparing the model.
- Cloud: NVIDIA Nemotron 3.5 Super VL runs on Nebius Token Factory and processes explicitly submitted content.
The selected provider is visible in the interface, and switching never silently changes where processing happens.
How we built it
We built the Android application with Kotlin and Jetpack Compose, using LiteRT-LM for local Gemma inference.
MiniLM provides local routing for supported record questions. ML Kit reads nutrition labels locally, including when cloud assistance is selected.
For cloud photo and text assistance, we integrated nvidia/Nemotron-3.5-Super-VL through Nebius Token Factory. A Docker broker keeps the provider key outside the APK and applies authentication and persistent request limits. Evaluators can run it with their own Nebius key through a temporary HTTPS tunnel.
Local and cloud providers share an assistant contract. Metria validates model output, authorizes supported tools, and executes record operations on the phone. Nutrition is calculated from food matches and quantities; the model proposes foods and portions rather than supplying authoritative calorie totals.
Challenges we ran into
Reliable integration required more than receiving a successful model response. We handled malformed structured output, ambiguous proposals, interrupted requests, and answers that could not be verified against local records.
Food recognition and food-database matching also proved to be separate problems. A descriptive name can identify something visually while failing to match a catalog entry. Metria exposes incomplete nutrition as partial, but improving those matches remains important work.
On-device inference introduced loading and performance constraints. Label extraction required handling Spanish and English nutrient names, image coordinates, and multiple serving columns without mixing their values.
Accomplishments that we're proud of
- Built a working Android app that brings voice, meal photos, label scanning, and record-grounded chat into one reviewed workflow.
- Integrated local Gemma and cloud Nemotron while keeping provider choice explicit and visible.
- Connected MiniLM routing to supported local-record lookups.
- Kept saved records encrypted on the phone and provider credentials outside the APK.
- Published an installable APK and reproducible Docker instructions so evaluators can try Nemotron with their own Nebius key.
- Passed 775 Android unit tests and 130 broker tests.
What we learned
A useful AI assistant needs clear boundaries between recognition, calculation, record access, and user confirmation.
We also learned to distinguish model failures from transport, validation, and catalog failures. Opt-in captures for fictional test data made debugging much faster.
Automated checks and physical testing provide different evidence. We tested on a Samsung SM-S928B running Android 16; broader device support remains unverified.
What's next for Metria
We want to improve food-name matching, portion review, local inference performance, accessibility, and device coverage.
We also plan to expand supported conversations across Progress and Goals. Today, those screens are available, while conversational access remains limited to implemented, validated tools.
Metria’s direction stays the same: local AI, private records, and cloud when the user chooses.
Log in or sign up for Devpost to join the conversation.