AI News HubLIVE
In-site rewrite5 min read

Open-Source AI Platform Orbit

Orbit is an open-source AI backend that connects private data, internal tools, and models through a single OpenAI-compatible API. It supports local and cloud models, RAG, MCP tool calling, and includes production features like authentication, quotas, observability, and an admin panel.

SourceHacker News AIAuthor: r_martinez

Notifications You must be signed in to change notification settings

Fork 56

Star 327

BranchesTags

Open more actions menu

Folders and files

NameName

Last commit message

Last commit date

Latest commit

History

2,144 Commits

2,144 Commits

bin

bin

clients

clients

config

config

docker

docker

docs

docs

examples

examples

install

install

server

server

utils

utils

.gitattributes

.gitattributes

.gitignore

.gitignore

CHANGELOG.md

CHANGELOG.md

CLAUDE.md

CLAUDE.md

CODE_OF_CONDUCT.md

CODE_OF_CONDUCT.md

CONTRIBUTING.md

CONTRIBUTING.md

LICENSE

LICENSE

README.md

README.md

SECURITY.md

SECURITY.md

conformance-baseline.yml

conformance-baseline.yml

env.example

env.example

ruff.toml

ruff.toml

Repository files navigation

Connect private data and internal tools through one OpenAI-compatible API

Connect files, databases, vector stores, models, APIs, and MCP tools. Run locally or in your cloud—with authentication, observability, and governance built in.

⚡ Try Live Sandbox • Quick start • Watch the demo • Tutorial • Documentation

Explore the live sandbox instantly — no download, Docker, or setup required.

multimodal.mp4

Upload PDFs, spreadsheets, and images, then query them together with context preserved across the conversation.

👉 Try this live in your browser →

⭐ Cloning ORBIT? If it looks useful, star the repository. It helps other developers discover the project and signals that we should keep investing in new model, datasource, and agent integrations.

One backend for private AI applications

What ORBIT gives you

Connect anything Query files, SQL, NoSQL, vector stores, Elasticsearch, REST/GraphQL APIs, and MCP tools in natural language across multiple languages.

Use any model Route one API contract across local models such as Ollama, llama.cpp, and vLLM or cloud providers such as OpenAI, Anthropic, Gemini, Bedrock, and Azure.

Operate it safely Ship with API keys, RBAC, SSO, quotas, moderation, fallbacks, metrics, audit logs, and an admin panel instead of assembling them yourself.

ORBIT sits between your applications and the models, data, and tools they need. Define adapters in YAML, expose them through one OpenAI-compatible endpoint, and move from a local prototype to a governed deployment without replacing the architecture.

Where does it fit? ORBIT combines an AI gateway with retrieval and tool execution. It is a backend API rather than just a chat UI, and it includes production controls rather than leaving them to application code. See ORBIT vs. Open WebUI and ORBIT vs. LiteLLM.

ORBIT is actively maintained. See the release history, changelog, and commit history.

model-choosing.mp4

Switch to any allowed model mid-conversation, with the active adapter policy defined in config/adapters/multimodal.yaml.

🚀 Quick Start

See what ORBIT can do before you install: explore the live sandbox instantly—no download, Docker, or setup required.

Otherwise, skip the clone and config-file editing — pull a flavor image and run it. ORBIT, the orbitchat web UI, and a minimalistic document-chat setup are all inside to get you started in minutes.

Prerequisites: Docker, 4 GB of free RAM, and 3 GB of disk space.

Option 1: Local / Offline (Ollama)

docker pull schmitech/orbit-ollama:latest docker run -d --name orbit -p 5173:5173 -p 3000:3000 \ -v orbit-data:/orbit/data \ -v orbit-models:/orbit/models \ schmitech/orbit-ollama:latest

The first run downloads the local chat/vision model (gemma4:e2b, ~7.2 GB) inside the container and will take some time to complete startup depending on your internet connection speed. Once pulled, open http://localhost:5173 and start chatting — upload a PDF, a spreadsheet, or an image and ask about it. No cloud account or API key required.

Model

Chat gemma4:e2b (Ollama)

Vision gemma4:e2b (Ollama)

Embeddings nomic-embed-text (Ollama)

Option 2: OpenAI Hosted Model

export OPENAI_API_KEY=sk-...

docker pull schmitech/orbit-openai:latest docker run -d --name orbit -p 5173:5173 -p 3000:3000 \ -e OPENAI_API_KEY \ -v orbit-data:/orbit/data \ schmitech/orbit-openai:latest

Model

Chat gpt-5.4-mini (also selectable: gpt-5.4, gpt-5.4-nano)

Vision gpt-5.5

Embeddings text-embedding-3-small

Option 3: Gemini Hosted Model

export GOOGLE_API_KEY=...

docker pull schmitech/orbit-gemini:latest docker run -d --name orbit -p 5173:5173 -p 3000:3000 \ -e GOOGLE_API_KEY \ -v orbit-data:/orbit/data \ schmitech/orbit-gemini:latest

Model

Chat gemini-3.1-pro-preview (also selectable: gemini-3.6-flash)

Vision gemini-3.6-flash

Embeddings gemini-embedding-2-preview

Tip

These are just the defaults. Change the active model per adapter from the Admin Panel's adapter settings (persists across restarts, stored in the orbit-data volume), or inspect/edit the resolved YAML directly at /orbit/config-runtime/adapters/multimodal.yaml inside the running container (docker exec -it orbit sh) — note that a container restart regenerates this file from the image default, so edits there don't survive a restart on their own.

Note

-e OPENAI_API_KEY (no =value) passes through whatever that variable is already set to in your shell — export it first, don't paste the key inline as -e OPENAI_API_KEY=sk-..., which would leave it sitting in your shell history. Each cloud flavor needs exactly one credential — the same key powers chat, vision, and embeddings, so nothing silently falls back to a different provider. docker pull never needs, receives, or persists a credential; only docker run does.

Port 5173 is the chat UI, 3000 is the OpenAI-compatible API if you want to call ORBIT directly:

curl -X POST http://localhost:3000/v1/chat/completions \ -H 'Content-Type: application/json' \ -H 'X-API-Key: multimodal' \ -H 'X-Session-ID: local-test' \ -d '{"messages":[{"role":"user","content":"What can ORBIT connect to?"}]}'

You can also access the Admin Panel at http://localhost:3000/admin (default credentials: username admin, password admin123 — which can be changed inside the admin panel).

Important

These images ship with a default database and API key for first-run convenience. Rotate the default API key/admin password before exposing ORBIT beyond localhost.

For production deployments, ALWAYS use the latest stable release.

You can also follow the Docker guide, tutorial, or Windows guide.

What you can build

Goal ORBIT handles

Chat with private documents Upload PDFs, office documents, spreadsheets, images, and audio; retrieve relevant context across a conversation. Try the tutorial →

Query databases in multiple languages Generate and execute safe queries across SQL, MongoDB, Elasticsearch, and composite datasources. Try the SQL demo →

Build tool-using agents Give models scoped access to MCP servers with bounded, multi-step server-side tool loops. Read the MCP guide →

Offer one governed AI endpoint Route local and cloud models with per-key access, quotas, fallbacks, moderation, metrics, and auditability. Create your first key →

Ask database questions in multiple languages

db-query.mp4

ORBIT generates the query, runs it against the database, and charts the result in chat.

👉 Try the SQL Database query demo live →

Talk to a real-time voice assistant grounded in your data

dbchat.mp4

Speech-to-speech voice grounded in SQL databases, APIs, or data lakes — interrupt it mid-answer and it stops and responds immediately.

Let the model use internal tools

mcp-tool-demo.mp4

Connect filesystem, Slack, Postgres, GitHub, Jira, and other MCP servers without adding an agent framework.

👉 Try the MCP tool calling demo live →

Real-Time Business & Revenue Intelligence (MCP Tool Calling)

mcp-business.mp4

Multi-step agent reasoning across 9 synthetic MCP tools: CRM health, telemetry seat utilization, P1 support escalations, and churn risk simulation.

👉 Try the Business & Revenue Intelligence MCP demo live →

Operate the gateway

admin-panel.mp4

Monitor health, latency, costs, tokens, sessions, adapters, and logs behind API keys, quotas, and rate limits.

Why ORBIT?

If you need… ORBIT gives you…

More than model routing RAG, structured-data retrieval, web search, and tool execution behind the gateway.

More than a chat interface A backend that works with ORBIT Chat or any client that can call an OpenAI-compatible API.

More than a prototype framework Authentication, RBAC, SSO, quotas, moderation, circuit breakers, fallbacks, metrics, and audit logs.

Private deployment Local inference, encrypted file storage, cloud secret managers, and fully offline operation.

Less orchestration code YAML-defined adapters, datasources, prompts, provider routing, and guardrails.

Capabilities

Capability Included

Model gateway 37+ local and cloud providers, OpenAI-compatible APIs, per-key routing, model switching, retries, and fallbacks.

Retrieval Vector RAG, file and multimodal RAG, SQL, MongoDB, Elasticsearch, REST, GraphQL, web search, and multi-source answers.

Agents and protocols MCP tool calling, bounded multi-step loops, natural-language skill routing, A2A, and asynchronous RabbitMQ requests.

Media Image, video, speech, PDF, Word, Excel, PowerPoint, CSV, and markdown generation.

Security API keys, RBAC, Entra ID and Auth0 SSO, rate limits, quotas, moderation, AES-256-GCM file encryption, and cloud secret managers.

Operations Admin UI, health checks, metrics, audit logs, per-request token and estimated-cost tracking, spend analytics, circuit breakers, datasource pooling, and hot adapter reloads.

Browse all adapters · See provider configuration · Read the configuration reference

Architecture

Authenticate and route REST, OpenAI-compatible, MCP, A2A, or message-queue requests to models, private data, and tools.

Clients and documentation

Start here Resource

Learn ORBIT Tutorial · Your first chat · HTTP APIs

Configure adapters Adapter overview · Configuration guide

Connect private data Files · Vector stores · SQL

Build agents MCP tools · Auto skill routing · A2A

Run in production Authentication · Usage and cost tracking · Rate limiting · Fault tolerance

Use a client ORBIT Chat · Node.js SDK · API key and Python examples

Contributing

Contributions are welcome: new retrievers and provider integrations, deployment guides, tests, fixes, and documentation. Read CONTRIBUTING.md, pick an open issue, or start a discussion.

Maintained by Remsy Schmilinsky.

License

ORBIT is licensed under the Apache License 2.0.

Topics

Resources

Readme

Apache-2.0 license

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy

Activity

Stars

327 stars

Watchers

8 watching

Forks

56 forks

Report repository