Skip to main content

Offline local-LLM terminal app for Jetson and edge Linux: chat with on-device models, run agent tools, and manage context safely.

Project description

open-jet

open-jet ships both:

  • the OpenJet CLI and chat TUI
  • the OpenJet Python SDK
  • the OpenJet benchmarking entrypoints

Install it with:

pip install open-jet

What Is In The Package

This package currently includes:

  • openjet.sdk for Python integrations
  • CLI entrypoints: openjet and open-jet
  • benchmark entrypoints via open-jet benchmark
  • the local/session runtime used by both the SDK and the CLI

So this is not an SDK-only wheel. It is the full OpenJet package, with the SDK exposed as a supported import surface.

Product Surfaces

OpenJet is one package with three primary surfaces:

  • CLI + chat TUI for interactive local agent use
  • Python SDK for embedded sessions and hardware profiling
  • Benchmarking for llama-bench runs and sweeps

Typical entrypoints:

open-jet
open-jet benchmark --sweep
from openjet.sdk import OpenJetSession, recommend_hardware_config

SDK Import Path

Use:

from openjet.sdk import recommend_hardware_config

or:

from openjet.sdk import OpenJetSession, create_agent

SDK Surface

The currently exported SDK surface is:

from openjet.sdk import (
    HardwareRecommendation,
    HardwareRecommendationInput,
    OpenJetSession,
    RecommendedLlamaConfig,
    RecommendedModel,
    SDKEvent,
    SDKEventKind,
    SDKResponse,
    ToolResult,
    create_agent,
    recommend_hardware_config,
)

That covers two main use cases:

  • hardware/model recommendation for local llama.cpp setups
  • embedded session/chat usage from your own Python application

Hardware Recommendation API

recommend_hardware_config() takes hardware input and returns:

  • a recommended model
  • recommended llama device settings
  • recommended GPU layer count
  • recommended context window size

Example:

from openjet.sdk import recommend_hardware_config

result = recommend_hardware_config(
    {
        "total_ram_gb": 16,
        "gpu": "cuda",
        "vram_mb": 24576,
        "label": "RTX 4090 box",
    }
)

print(result.model.label)
print(result.model.target_path)
print(result.llama.device)
print(result.llama.gpu_layers)
print(result.llama.context_window_tokens)

Typed input also works:

from openjet.sdk import HardwareRecommendationInput, recommend_hardware_config

result = recommend_hardware_config(
    HardwareRecommendationInput(
        total_ram_gb=8.0,
        gpu="cpu",
        hardware_profile="other",
        hardware_override="desktop_8",
    )
)

Session API

Use OpenJetSession when you want to embed OpenJet into another Python service, worker, or app.

Basic example:

import asyncio

from openjet.sdk import OpenJetSession


async def main() -> None:
    session = await OpenJetSession.create()
    try:
        result = await session.run("Summarize the current README")
        print(result.text)
    finally:
        await session.close()


asyncio.run(main())

The session API includes:

  • OpenJetSession.create(...)
  • session.stream(...)
  • session.run(...)
  • session.set_airgapped(...)
  • session.add_turn_context(...)
  • session.clear_turn_context(...)
  • create_agent(...)

The event/response types exposed for integrations are:

  • SDKEvent
  • SDKEventKind
  • SDKResponse
  • ToolResult

CLI

This package also installs the CLI:

openjet

or:

open-jet

The CLI and the SDK share the same underlying package and runtime code.

Notes

  • This wheel currently ships the wider OpenJet application, not just the SDK subset.
  • The SDK is exposed through openjet.sdk.
  • If you only need one narrow SDK feature, the package still installs the full declared dependency set for this distribution.

Repository

License

open-jet core is licensed under Apache-2.0.

This package covers the permissive core SDK and CLI. Any future hosted, team, or enterprise offerings may be licensed separately.

External contributions are accepted under the contributor terms in the repository's CONTRIBUTING.md and CLA.md.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

open_jet-0.3.9-py3-none-any.whl (195.0 kB view details)

Uploaded Python 3

File details

Details for the file open_jet-0.3.9-py3-none-any.whl.

File metadata

  • Download URL: open_jet-0.3.9-py3-none-any.whl
  • Upload date:
  • Size: 195.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for open_jet-0.3.9-py3-none-any.whl
Algorithm Hash digest
SHA256 5bd341835e588521603d4aef6fc25314d1f782cbf557fd838eda7060ee927273
MD5 7d579c0d4404f02d4a692d46e2f899c3
BLAKE2b-256 f41d433076349dba540c5a5cb4f786da1d9fd40ab2f2b8a5d917d8c6fca528b3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page