SciRouterVet
Open my portal

Ask · methodology

How Ask works — and what it never tries to do.

The Ask surface lets pet parents type a question and get a grounded, conservative answer drawn from our editorial corpus. It is not a vet. It does not know your dog. This page is the full disclosure on how it works.

What the model sees

A small, curated corpus — not the open web.

Every Ask response is generated against the same small set of editorial articles under /learn. The model retrieves the most-overlapping article by keyword match, then summarises only what's in that article. We deliberately do not let the model roam: it cannot search the open web, read scientific papers, or invent a citation.

If your question is outside the corpus, the model says so and points you at the trial finder or the contact form.

What the model never recommends

Conservative by construction.

  • No dosing of any medication. We won't tell you how much gabapentin to give your dog — that's a vet decision against a known body weight, kidney function, and co-medications.
  • No specific treatment recommendation. We summarise the standard-of-care landscape; we don't claim "this is the right protocol for your dog."
  • No prognosis with a number attached to your dog. Published median survival ranges are general; your dog is not the median.
  • No "go to the ER" decision based on a free-text symptom description — except for the emergency intercept (below), which is keyword-triggered and bypasses the model entirely.

Emergency intercept

Bypass the model. Call your vet.

The frontend matches a small set of high-risk phrases ("can't breathe", "collapsed", "bleeding heavily", "seizure", "blood in stool/vomit/urine") before the question ever reaches the language model. When the regex fires, you see a hard-coded emergency banner with the right next step — usually "call your regular vet or the nearest 24-hour emergency hospital now." We don't try to be clever here.

Logging and human review

Every conversation is reviewed.

We log every question and every model response, de-identified. A reviewer reads a sample weekly to look for:

  • Hallucinated citations or treatment names.
  • Overconfident prognostic language.
  • Missed emergencies — questions that should have hit the intercept but didn't, so we can widen the regex.
  • Content gaps — repeated questions about a condition we don't yet have a /learn article on.

We don't share your conversation with anyone outside the SciRouter team. Logs are retained 90 days and then anonymised aggregates only.

The model

Local first. Cite the model.

The tier-1 backend is a local open-source instruction-tuned model running on CPU via llama.cpp. When it's unavailable, the system falls back to a heuristic response that pulls the matched article's summary directly. We disclose which backend served each response in the developer console; we don't surface it in the consumer UI because the answer should be the same either way.

When to skip Ask entirely

If you can call a vet, call a vet.

Ask is a first-pass orientation tool. For anything time-sensitive — an emergency, a treatment decision, a prognostic question that's keeping you up at night — your regular veterinarian or a veterinary oncologist is the right next step. Ask should make that call easier, not replace it.

Feedback + corrections

If an answer feels wrong, tell us.

Every response has a thumbs-up / thumbs-down. Negative feedback drops straight into the review queue. You can also reach us via the contact form — quote the question and the response, and we'll dig in.