praxis-sim
The MuJoCo simulation of the Praxis-1 single-arm rig (a Franka arm with a Robotiq 2F-85
gripper, an exterior and a wrist camera, 15 Hz control) and its fixed evaluation suites
(droid, droid_guard, hard), and the bimanual YAM rig (two YAM arms, a top camera and a camera
per wrist, 11 tasks: yam_scene, yam_env, yam_tasks, yam_scripted), packaged on their
own: MuJoCo, Gymnasium and numpy, no torch. The model loop (praxis.sim.loop), the video writer and the live viewer stay in the
praxis package, which runs the simulation through this one.
pip install praxis-sim
# or, from a checkout of this repository (the `sim` extra of praxis pulls the package in too):
pip install -e packages/praxis-sim
Python 3.10 or newer (the praxis package itself needs 3.12). The package has no torch and
imports no core praxis module; tests/test_isolation.py checks that, and the tests run in an
environment that holds only the package:
python -m venv /tmp/praxis-sim-venv && /tmp/praxis-sim-venv/bin/pip install "./packages/praxis-sim[dev]"
MUJOCO_GL=egl /tmp/praxis-sim-venv/bin/pytest packages/praxis-sim/tests
The robot models (MuJoCo Menagerie, pinned commit) download on first use into a cache
directory and are checked by SHA-256 (praxis_sim.assets).
Gymnasium environments
praxis_sim.gym_env.PraxisSimGymEnv is one task as a Gymnasium environment: the reset seed
is the scene seed, the observation holds the two camera views (pixels/exterior,
pixels/wrist, 512 x 288 uint8), the pose of the Franka flange as
[x, y, z, roll, pitch, yaw, gripper] (agent_pos, the DROID convention) and the scene
seed; the action is the same seven values as an absolute target.
create_praxis_sim_envs(task, n_envs, ...) builds the {suite: {task_index: VectorEnv}}
layout of a suite, the same episodes as scripts/run_sim_eval.py of the praxis repository.
Comparing runs
python -m praxis_sim.compare <lerobot eval_info.json> <praxis runner output directory> pairs
the episodes of a LeRobot evaluation with those of the praxis runner by task and scene seed
and reports wins, losses, the exact McNemar p and a bootstrap interval of the mean difference.
Layout
| Module | Contents |
|---|---|
gl, assets, scene, robot, tasks, env |
The simulator: OpenGL backend, robot models, MuJoCo scene, control tick, tasks, environment |
suite*, eval_suites |
The task families and the fixed evaluation suites |
scripted, config |
The scripted pick policy and the run settings (YAML loader) |
pose |
Pose math and command helpers, copies of praxis.robot_io / praxis.single_arm (checked bit for bit by the praxis tests) |
gym_env, compare |
The Gymnasium wrapper and the LeRobot-vs-runner comparison |
yam_scene, yam_env, yam_tasks, yam_scripted |
The bimanual YAM rig: scene (with optional rig profiles), environment, tasks and the scripted oracle |
Metadata
Release files for praxis-sim 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| praxis_sim-0.1.0.tar.gz | 97.6 kB | Without provenance | Details for praxis_sim-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| praxis_sim-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for praxis_sim-0.1.0-py3-none-any.whl |
Total release size: 206.3 kB
Release files / praxis_sim-0.1.0.tar.gz
| Download URL | praxis_sim-0.1.0.tar.gz |
|---|---|
| Size | 97.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9ffcc55c367df7601fa88396ece0dfa681df0d8de9aed846df8edb7292f29b06
|
|
BLAKE2b-256 checksum How to use checksums |
8b579f67ecfcc343e1bcc83761a29b5b228602c65095863c11b0c3165b656b82
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.12
|
Release files / praxis_sim-0.1.0-py3-none-any.whl
| Download URL | praxis_sim-0.1.0-py3-none-any.whl |
|---|---|
| Size | 108.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
94cd5a1e2756cafdcd413955e159b18c78ed0afa3007795037425e4dec2f6964
|
|
BLAKE2b-256 checksum How to use checksums |
b805e5eb516a440b41c058cf6f331f9e486996e4eed504e1f0ac7c2c81f4e1c6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.12
|
Security for praxis-sim 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.