Skip to content

An adaptable, open-source context-aware inference engine designed for privacy, control, and independence from proprietary models.

License

Notifications You must be signed in to change notification settings

schmitech/orbit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1,230 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

License Python Docker Release PyPI NPM GitHub stars

ORBIT – One gateway for every model and data source.

Open Retrieval-Based Inference Toolkit

Stop rewriting your app every time you switch LLMs. ORBIT unifies 20+ AI providers with your databases, vector stores, and APIsβ€”all through one self-hosted gateway.

Ship faster. Stay portable. Keep your data private.

orbit-demo-web.mp4

See ORBIT's unified LLM workspace in action.

🎯 Why ORBIT?

The Problem: Building AI apps means choosing between vendor lock-in, complex integrations, and privacy concerns.

  • Vendor lock-in: Switching from OpenAI to Anthropic means rewriting your code
  • Complex RAG: Connecting databases, vector stores, and APIs requires custom glue code
  • Privacy concerns: Sending sensitive data to third-party APIs
  • Fragmented tools: Different SDKs, auth methods, and APIs for each provider

The Solution: ORBIT is a self-hosted, unified gateway that gives you:

βœ… Portability β€” Switch LLM providers with a config change, not code changes
βœ… Built-in RAG β€” Connect SQL databases, vector stores, and APIs through natural language
βœ… Data sovereignty β€” Keep your data on your infrastructure
βœ… One API β€” OpenAI-compatible interface that works with any provider
βœ… Production-ready β€” Rate limiting, security, monitoring, and fault tolerance built-in

Who it's for: Developers building AI applications who want flexibility, privacy, and control without the complexity of managing multiple integrations.

At a Glance


⚑ Getting Started

1. Explore the sandbox

Try ORBIT Sandbox

Browse interactive examples showcasing ORBIT's adapters, prompts, and capabilitiesβ€”no install required.

2. Run the Docker demo

docker pull schmitech/orbit:basic
docker run -d --name orbit-basic -p 5173:5173 -p 3000:3000 schmitech/orbit:basic
  • Auto-detects CPU/GPU via ORBIT_PRESET=auto (override with smollm2-1.7b-gpu or -cpu).
  • Includes ORBIT server, orbitchat UI, and an Ollama preset so you can chat instantly.
  • More options live in docker/README.md.

3. Install the latest release

  • Prereqs: Python 3.12+, Node 18+, npm, and any AI-provider keys (OpenAI, Anthropic, Cohere, Gemini, Mistral, etc.).
  • Optional deps: MongoDB, Redis, and a vector DB (Chroma, Qdrant, Pinecone, etc.).
curl -L https://github.com/schmitech/orbit/releases/download/v2.4.0/orbit-2.4.0.tar.gz -o orbit-2.4.0.tar.gz
tar -xzf orbit-2.4.0.tar.gz && cd orbit-2.4.0

cp env.example .env && ./install/setup.sh
source venv/bin/activate

./bin/orbit.sh start && cat ./logs/orbit.log
  • To use local models with Ollama, first install it: curl -fsSL https://ollama.com/install.sh | sh, then pull a model such as ollama pull granite4:1b or another of your choice.
  • Default adapters live in config/adapters/passthrough.yaml and config/adapters/multimodal.yaml; update config/ollama.yaml for model changes.
  • Visit http://localhost:3000/dashboard to monitor the ORBIT server.
dashboard.mp4

The ORBIT dashboard for adapter management and monitoring.

4. Build from source

git clone https://github.com/schmitech/orbit.git
cd orbit && cp env.example .env
./install/setup.sh && source venv/bin/activate
./bin/orbit.sh start && ./bin/orbit.sh key create
  • Bring your own API keys (OpenAI, Anthropic, Cohere, Gemini, Mistral, etc.).
  • Works great with Ollama, vLLM, llama.cpp, Redis, MongoDB, and vector DBs.
  • Check logs via tail -f ./logs/orbit.log and open http://localhost:3000/dashboard.

πŸ’¬ Clients & SDKs

  • orbit-chat CLI: pip install schmitech-orbit-client && orbit-chat --api-key <KEY>
  • React web app: npm install -g orbitchat && orbitchat --api-url http://localhost:3000 --api-key <KEY> --open
  • Embeddable widget: Drop @schmitech/chatbot-widget into any site for floating or inline chat.
  • Node SDK: npm install @schmitech/chatbot-api and stream responses in TypeScript/JavaScript apps.
  • OpenAI-compatible API: Point the official openai Python client at base_url="http://localhost:3000/v1" to reuse existing code.
orbit-cli-chat.mp4

Using the orbit-chat CLI. Run orbit-chat -h for options.

πŸ—ƒοΈ Chat with Your Data

See the tutorial for step-by-step instructions on connecting your data, performing retrieval, and watching as ORBIT converts natural language into SQL queries and API calls.

ev-analytics-example.mp4

Electric Vehicle Population Data through natural language (Data Source: data.wa.gov).

πŸ“ Math & Scientific Rendering

ORBIT's built-in adapters and clients support advanced rendering for mathematical notation (KaTeX) and interactive charts, perfect for educational and scientific applications.

quadratic.mp4

Demo of the Math Tutor adapter showcasing KaTeX and interactive graphing.

πŸ“š Resources

🧠 Need help?

πŸ“„ License

Apache 2.0 – see LICENSE.

About

An adaptable, open-source context-aware inference engine designed for privacy, control, and independence from proprietary models.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •