Skip to content

In-car Manual Assistant

Answers drivers’ questions from the owner’s manual, offline.

Industry Level Difficulty Recommended mode
Robotics & automotive 1 of 5 Beginner flat
  • Manuals are long and rarely read.
  • Cars are often offline.
  • Answers must be accurate.
  1. The manual is embedded and stored in the vehicle.
  2. Spoken questions become searches.
  3. Answers cite manual sections.
  4. Runs without connectivity.
Today With In-car Manual Assistant on SrvDB
Glovebox manuals Spoken answers
Cloud dependence Offline
Guesswork Cited sections
  1. Embed manual.
  2. Ship with firmware.
  3. Answer questions.
  4. Log unanswered ones.
  5. Update with releases.
  • Fully offline: SrvDB runs in-process and never opens a network connection.
  • Exact search (flat): every query compares against every stored vector, so results are exact and explainable.
  • Rust API: embed SrvDB directly in Rust services and devices.
  • Crash-safe persist(): after it returns, data survives a crash or power loss and reopens exactly as committed.
  • Warning-light explanations
  • Feature how-tos
  • Maintenance intervals
  • Tyre pressure
  • Charging (EVs)
  • Infotainment help

embed() is your embedding model (for example sentence-transformers, or a function that turns your records into feature vectors).

import json
import srvdb
db = srvdb.Database("./in-car-manual-assistant-db", dimension=384)
def ingest(items):
"""items: list of (id, text, metadata dict)"""
db.upsert(
ids=[i for i, _, _ in items],
embeddings=[embed(t) for _, t, _ in items],
metadatas=[json.dumps(m) for _, _, m in items],
)
db.persist() # crash-safe checkpoint
def manual_answer(question, k=5):
hits = db.search(embed(question), k)
return [(json.loads(db.get(i)), round(score, 3)) for i, score in hits]
  • Safety-critical instructions follow official procedures.
  1. Prototype: load a sample of real data with flat mode and check that searches return what an expert expects.
  2. Measure: if you move to an approximate mode, compare its results with flat on the same queries (recall).
  3. Pipeline: add continuous upsert and decide when to call persist().
  4. Harden: test restarts and crashes, add logging, review every output path with domain experts.
  5. Deploy: ship the database directory with the application or service.
Level Project What it does
1 · Beginner In-car Manual Assistant (this page) Answers drivers’ questions from the owner’s manual, offline.
2 · Intermediate Diagnostic Assistant Technicians match symptoms and trouble codes to past repairs.
3 · Advanced Scenario Miner Finds driving or robot episodes similar to a scenario of interest.
4 · Expert Robot Episodic Memory Robots remember places, objects and outcomes.
5 · Frontier Autonomous Fleet Memory Share learned experience across a fleet with database snapshots.

See also: Use cases · Live examples (coming soon)