Try Trio-Spark · API Docs · Pricing · Launch Post
Trio-Spark is a Situated World Model built for fast judgment. Give it the state of an environment and 2–8 possible moves. In one pass, it returns the best next move and a probability for every choice.
Trio-Spark is currently available as a hosted API. Model weights and training code are not publicly released. This repository is its public home for API clients, integrations, evaluations, and community-built demos.
Every probability, decision, and latency shown below came from a real Trio-Spark v1.0 production run. The videos replay those recorded runs with presentation overlays.
Spark chose tactical maneuvers while a simulated quadrotor followed a moving rover through an obstacle field. A separate 500 Hz reflex controller retained collision avoidance.
65 s · 25 model calls · 75.7 m flown · 0 collisions · course completed
Run this demo · Measured evidence · Watch MP4
Spark read the visible page state, opened the requested category, selected the requested book, and stopped when the goal was visibly complete.
4.002 s · 3 model calls · 2 browser actions · autonomous DONE
Run this demo · Measured evidence · Watch MP4
Spark repeatedly chose the next manipulation skill from fresh MuJoCo state: approach, grasp, lift, carry, lower, release, and withdraw. The simulator evaluated physical success independently.
13.68 s · 13 model calls · physical success · 0 forbidden contacts
Run this demo · Measured evidence · Watch MP4
These compact runs show the same decision API in games, operations, and a GUI safety workflow:
- Falling Blocks — 16 decisions, 7 lines cleared
- 2048 — 26 decisions, 19 scoring turns
- Restaurant Rush — 6 changing operating situations
- GUI Agent Safety — policy gate plus bounded human handoff
Each directory includes a sanitized decision record and measured evidence. The videos replay captured production responses with presentation timing.
Create an API key in the Trio-Spark console, then follow the public API reference.
export TRIO_SPARK_API_KEY=tf_...
python - <<'PY'
from clients.python.trio_spark import decide
result = decide(
task="Keep the machine safe while completing the current operation.",
state={"temperature_c": 84, "load_pct": 91, "vibration": "rising"},
choices={
"continue": "Continue at the current speed",
"slow": "Reduce speed and keep observing",
"stop": "Stop the machine now",
},
session_id="machine-line:shift-42",
)
print(result["choice_id"])
print(result["probabilities"])
PYThe dependency-free Python client lives at clients/python/trio_spark.py. The request/response schema, limits, errors, and pricing are documented in the public API reference. Account management and live usage remain in the Trio-Spark console.
The evals/ harness runs the hosted production API against pinned
public dataset revisions and records accuracy, calibration, latency, billed
tokens, cost, model version, and raw responses. Start with a small smoke before
spending credits on a complete split:
python3 -m pip install -r evals/requirements.txt
python3 evals/run.py --benchmark sst2 --limit 10 --output runs/sst2-smokeSee evals/README.md for the reproducibility contract and
the exact commands used for full runs.
The product and release name is Trio-Spark v1.0. The current API model
identifier remains trio-spark-preview for compatibility.
environment signals → structured state → Trio-Spark → next move → executor
↑ │
└──── fresh feedback ─────┘
Spark makes a bounded decision. Your application defines the state, allowed moves, executor, and safety controls. The same API can therefore support software agents, games, robots, industrial systems, and other environments where the next move matters.
We welcome demos that use Trio-Spark in new environments. A useful contribution should make the model's role easy to understand and the run easy to verify.
- Build the demo against the hosted Trio-Spark API.
- Add it under
demos/<demo-name>/with setup and reproduction instructions. - Include a compact evidence file with the task, number of API calls, measured latency, outcome, and relevant environment checks.
- Include a short MP4 and a 16:9 poster under
assets/demos/when the result is visual. - State clearly which signals were sent to Spark and which controls remained deterministic.
- Open a pull request using the demo template.
Do not commit API keys, account data, raw credentials, or private endpoints. A successful demo should be a recorded real run rather than a scripted animation presented as model output.
See CONTRIBUTING.md for the complete checklist.
clients/ minimal API clients
demos/ reproducible integrations and measured evidence
assets/demos/ shareable videos, posters, and checksums
The current demos use structured signals derived from their environments: depth-derived flight telemetry, visible browser DOM state, and simulator geometry plus contacts. They do not claim direct end-to-end control from raw camera pixels.
MachineFi-authored code is licensed under Apache-2.0. The demo adapters target MIT-licensed upstream projects. See THIRD_PARTY.md for exact repositories and revisions.


