The model picks the runs; the real engine runs them in your browser; code writes the result and verifies it.
An LLM maps a research question onto this project's ontology and parameters and calls the physiosim engine through five typed tools. It then answers with only which runs and metrics to report. Code writes everything else — the result text, parameter changes, labels, units, directions, warnings and caveats — from the engine receipts, and a deterministic verifier checks all of it. The model's free text is never stored, only a hash. Below you can replay a recorded session step by step and — the part that matters — re-execute every engine run on your own device and re-verify the report.
- LLM…
- Enginephysiosim in your browser
- Findings verified…
- 1Hypothesis
- 2Ontology grounding
- 3Parameter mapping
- 4Engine runs
- 5Verification
- 6Report + PROV-O
1 · Recorded sessions
Real provider runs (27 cases per provider, including clinical refusals), recorded with the agent code at the pinned commit. Featured: three completed sessions per provider with different parameters and models, plus two refusals (one in Korean). Nothing here is hard-coded: the list comes from sessions/manifest.json.
2 · Replay the trace
All steps
3 · Re-run in your browser
This downloads the Python engine (about 30 MB, from this site, cached afterwards), installs physiosim at the pinned commit, executes every run_experiment call of the trace again with the recorded arguments, regenerates the result text, and then runs physiosim.agent.verify on the recorded report against the re-computed outputs. No recorded number is used as evidence.
Per-finding status
| Finding | Metric path | Reported | Re-computed | |Δ| report vs here | |Δ| recorded tool | Status |
|---|
Tool replays
| Step | Tool | Recorded vs re-computed | max |Δ| | Time here | Time recorded |
|---|
4 · Baseline vs intervention
get_timeseries of the re-computed run).baseline intervention
5 · Result and report
Try it yourself
Run the agent on your own question with your own API key (the key stays on your machine; this site never sees it). It refuses medical-advice requests with two independent layers: a deterministic rules guard and a scope classifier.
pip install ontology-physiosim # or: pip install -e . in the repository
python -m physiosim.agent "If mitral valve resistance triples, what happens to left atrial pressure in the M1 model?" --provider anthropic
--provider is one of anthropic, openai or meta. Meta's Muse Spark through the Meta Model API uses the same OpenAI-compatible interface (https://api.meta.ai/v1, model muse-spark-1.3), so --provider meta needs no separate code path. Add --dry-run for an offline scripted run of the real engine without any API call.
The command writes report.json, trace.json and provenance.jsonld — the same three files this page replays.
Live mode
A hosted endpoint is configured for this deployment.