Skip to content

jarvis_direct

jarvis_direct

Jarvis Direct backend — engine-level inference for local and cloud models.

Classes

JarvisDirectBackend

JarvisDirectBackend(engine_key: Optional[str] = None, telemetry: bool = False, gpu_metrics: bool = False, base_url: Optional[str] = None, api_key: Optional[str] = None)

Bases: InferenceBackend

Direct engine inference via SystemBuilder.

Works for both local models (Ollama, vLLM, etc.) and cloud models (OpenAI, Anthropic, Google) via the CloudEngine.

Source code in src/openjarvis/evals/backends/jarvis_direct.py
def __init__(
    self,
    engine_key: Optional[str] = None,
    telemetry: bool = False,
    gpu_metrics: bool = False,
    base_url: Optional[str] = None,
    api_key: Optional[str] = None,
) -> None:
    from openjarvis.system import SystemBuilder

    self._telemetry = telemetry
    self._gpu_metrics = gpu_metrics

    builder = SystemBuilder()
    if base_url:
        # Explicit endpoint targeting (--base-url): pin the eval to
        # exactly this OpenAI-compatible endpoint. Fails fast if it is
        # unreachable; never falls back to a discovered engine.
        from openjarvis.evals.backends._endpoint_util import (
            build_endpoint_engine,
        )

        engine = build_endpoint_engine(base_url, api_key, engine_key)
        builder.engine_instance(engine, key=engine_key or "openai-compat")
    elif engine_key:
        builder.engine(engine_key)
    # Propagate gpu_metrics to the runtime config so SystemBuilder
    # creates an EnergyMonitor / GpuMonitor for the InstrumentedEngine.
    if gpu_metrics:
        builder._config.telemetry.gpu_metrics = True
    self._system = builder.telemetry(telemetry).traces(telemetry).build()
Attributes
framework_commit_value property
framework_commit_value: str

OpenJarvis repo HEAD commit (for telemetry tagging).

Functions