Skip to content

runner

runner

CLI runner for hybrid paradigm experiments.

::

python -m openjarvis.agents.hybrid.runner --cell minions-gaia-qwen27b-opus-3

Reads a cell definition from registry/<method>.toml (bundled with this package or pointed at by OPENJARVIS_HYBRID_REGISTRY_DIR), constructs the registered agent, loads bench tasks via OpenJarvis's existing dataset providers, runs every task, scores it, and writes <EXPERIMENTS_DIR>/<cell>/results.jsonl + summary.json.

The output schema matches hybrid-local-cloud-compute/runner.py so the existing rescore / dashboard scripts can read OpenJarvis cells without modification.

Classes

Functions

load_registry

load_registry(registry_dir: Optional[Path] = None) -> Dict[str, Dict[str, Any]]

Merge every <registry_dir>/*.toml. Cell names must be unique.

Source code in src/openjarvis/agents/hybrid/runner.py
def load_registry(registry_dir: Optional[Path] = None) -> Dict[str, Dict[str, Any]]:
    """Merge every ``<registry_dir>/*.toml``. Cell names must be unique."""
    base = registry_dir or DEFAULT_REGISTRY_DIR
    env_override = os.environ.get("OPENJARVIS_HYBRID_REGISTRY_DIR")
    if env_override:
        base = Path(env_override)
    if not base.is_dir():
        return {}
    cells: Dict[str, Dict[str, Any]] = {}
    for p in sorted(base.glob("*.toml")):
        data = tomllib.loads(p.read_text())
        for name, cell in data.get("cells", {}).items():
            if name in cells:
                raise ValueError(
                    f"duplicate cell {name!r} (already defined before {p.name})"
                )
            cells[name] = cell
    return cells