Care models
Model: aug-care-model · Status: Preview · Scope: agents:care_model · Sessions: yes — the only model with sessions
A care model is an adaptive clinical pathway built around observations. Send a case summary; the care model returns, line by line, the observations it took from the case, the conditions under consideration, the observations most worth collecting next, and the next best actions — each weighted and backed by quoted evidence. Keep sending what you learn about the patient in the same session, and the picture re-ranks.
The loop
case summary / new findings ──► observations ──► conditions under consideration
▲ │
│ ▼
results of actions ◄── next best actions ◄── missing observations
(your provider scope) (emergencies and severe outcomes first)- Observe. Your text is read into observations — present or ruled out — and linked to clinical concepts. Known diagnoses and medicines are kept as context.
- Consider. The full observation set is assessed against the evidence base on every update.
- Rank what is missing. Observations not yet collected are ranked first by their power to rule out emergencies and severe outcomes, then by how much they would clarify the picture.
- Rank actions. Each missing observation becomes the action that settles it — ask, examine, measure, test — and tests that confirm or exclude a condition directly are added.
- Respect the care team.
provider_scopekeeps only actions your team can perform. - Remember. The session keeps every observation, so the next call builds on the last.
Request
{
"model": "aug-care-model",
"stream": true,
"messages": [{"role": "user", "content": "58 year old man, known T2DM on metformin. 2 days of fever 39.2, severe headache and neck stiffness, no rash. Vomited twice."}],
"augsidius": {"provider_scope": ["ask", "examine", "test"]}
}To continue the same case, send augsidius.session_id with only the new information — as text, as observations, or both:
{
"model": "aug-care-model",
"stream": true,
"messages": [{"role": "user", "content": "Photophobia present. Kernig's sign negative."}],
"augsidius": {"session_id": "cc47ad4e8fb44713a00d9bf5b6b341ec",
"observations": [{"concept_id": "c_q7w2…", "present": false}]}
}augsidius field |
Description |
|---|---|
session_id |
Omit to start a new session; the response returns its id. Sessions belong to the project of the key, and expire after 6 hours without activity. |
observations |
{"text": "…", "present": true/false} or {"concept_id": "c_…", "present": …} using ids from earlier responses. Up to 50 per call. |
provider_scope |
Any of ask, examine, measure, test. For example a community health worker: ["ask", "examine", "measure"]. |
Input up to about 3,000 tokens per call (a long case summary). Send long histories as a summary.
Response: one line per item
The result is JSONL — stream it and render each line as it arrives. Lines always come in this order:
| Order | object |
How many |
|---|---|---|
| 1 | care_model.session |
1 |
| 2 | care_model.observation |
one per observation, medicine or procedure taken from this call's text |
| 3 | care_model.condition |
up to 10, ranked |
| 4 | care_model.missing_observation |
up to 12, ranked |
| 5 | care_model.action |
up to 10, ranked |
| last | care_model.summary |
1 (in augsidius for SSE / single responses; last line for NDJSON) |
{"object":"care_model.session","session_id":"cc47ad4e8fb44713a00d9bf5b6b341ec"}
{"object":"care_model.observation","text":"neck stiffness","status":"present","category":"sign","temporality":"current","value":null,"unit":null,"concept":{"id":"c_3o53…","name":"Nuchal rigidity","kind":"examination_finding"},"codes":[]}
{"object":"care_model.observation","text":"rash","status":"absent","category":"sign",…}
{"object":"care_model.condition","rank":1,"concept":{"id":"c_8kq1…","name":"Bacterial meningitis"},"weight":1.0,"probability_share":0.41,"severity":0.9,"must_not_miss":true,"time_critical":"hours","severe_because":"must not miss","variants":[],"explained_by":["Fever","Headache","Nuchal rigidity"],"evidence":[{"claim":"Bacterial meningitis presents with Nuchal rigidity","certainty":"moderate","sources":[…]}]}
{"object":"care_model.missing_observation","rank":1,"concept":{"id":"c_q7w2…","name":"Photophobia","kind":"complaint"},"weight":1.0,"rules_out_emergency":true,"for":["Bacterial meningitis"],"evidence":[…]}
{"object":"care_model.action","rank":1,"action":"test","label":"Cerebrospinal fluid analysis","concept":{"id":"c_t5m9…","name":"Cerebrospinal fluid analysis"},"weight":1.0,"rules_out_emergency":true,"resolves":["Bacterial meningitis"],"evidence":[{"claim":"Bacterial meningitis is assessed by Cerebrospinal fluid analysis","certainty":"high","sources":[…]}]}care_model.session
| Field | Description |
|---|---|
session_id |
Use it in augsidius.session_id to continue this case. |
care_model.observation
| Field | Description |
|---|---|
text |
The words in your input. |
status |
present, absent (ruled out / negated) or possible (suspected; not used as a finding). |
category |
symptom, sign, measurement, lab, test, condition, history, risk_factor, drug, procedure, allergy. |
temporality |
current, past or family (in a relative — not used as the patient's finding). |
value, unit |
For measurements, results and doses. |
concept |
Concept, or null if not matched. |
codes |
Codings. |
care_model.condition
| Field | Description |
|---|---|
rank, weight |
Position and relative weight (top condition = 1.0). |
probability_share |
Share of likelihood among the conditions considered (0–1). A ranking aid, not a calibrated probability of disease. |
severity |
0–1. High when a serious or life-threatening outcome is associated. |
must_not_miss |
true for conditions that must be actively excluded when plausible. Show prominently. |
time_critical |
How fast harm can occur: minutes, hours, days, weeks, or null. |
severe_because |
Why it is considered severe, when known. |
variants |
Closely related forms grouped under this condition. |
explained_by |
Which of the patient's observations this condition accounts for. |
evidence |
Up to three evidence objects linking the condition to the patient's observations. |
care_model.missing_observation
| Field | Description |
|---|---|
rank, weight |
Position and relative weight. |
concept |
What to find out. |
rules_out_emergency |
true when collecting it helps exclude a must-not-miss or severe condition. These always rank first. |
for |
The conditions it bears on. |
evidence |
Why it matters for those conditions. |
care_model.action
| Field | Description |
|---|---|
rank, weight |
Position and relative weight. Emergency rule-out actions always come first. |
action |
ask, examine, measure or test. |
label |
Ready-to-show text, e.g. "Ask about Photophobia", "Cerebrospinal fluid analysis". |
concept |
What the action targets. |
rules_out_emergency |
true when the action helps exclude an emergency. |
resolves |
The conditions or observations it settles. |
evidence |
Evidence linking the action to those conditions. |
care_model.summary
| Field | Description |
|---|---|
emergencies_open |
Must-not-miss conditions not yet ruled out. Put these at the top of your UI. |
unlinked |
Text that could not be matched to a concept. |
counts |
Number of conditions, missing observations and actions returned. |
session_id, billable_calls |
Also present on the summary for convenience. |
Designing with care models
- Show the emergencies first —
emergencies_open, then actions withrules_out_emergency: true, one tap away. - Let users answer missing observations directly — Present / Ruled out buttons that post
{"concept_id": …, "present": …}back to the session. This is how the model adapts. - Record what was done — post the results of actions as new text or observations.
- Use
provider_scope— a nurse-led clinic, a tele-consult and a ward need different actions. - Keep a clinician in the loop — conditions support reasoning; they are not diagnoses.
Session endpoints (JSON)
If you prefer plain JSON over JSONL, the same sessions are available as REST resources:
| Method | Path | Description |
|---|---|---|
POST |
/v1/care-models/sessions |
Start a session → {"id": "…", "object": "care_model.session"} |
POST |
/v1/care-models/sessions/{id}/observations |
Body {"observations": [...], "provider_scope": [...]} → care_model.state with hypotheses, emergencies_open, missing, next_best_actions, memory |
Session ids work across both styles.
Preview limitations. Ranking is still being tuned: common conditions can sometimes outrank serious ones that fit the findings better, and closely related forms of one condition may appear separately. The emergency rule-out ordering of missing observations and actions is the most reliable part. Numeric thresholds are interpreted from your text (for example "temp 39.2" → fever). Please send feedback.
