Models, providers and routing
One OpenAI-compatible API
Any OpenAI SDK or tool works with Janus by changing the base URL and the key.
What it is
Janus speaks the OpenAI API at /v1, so any OpenAI SDK or tool works by changing the base URL and key. It covers chat, completions, embeddings, images, speech in both directions, video, Responses, Assistants, threads, files, moderation and fine-tuning paths.
Why you want it
Teams keep their existing tools and code. Switching providers or adding governance does not mean rewriting clients.
How it works
- Streams relayed without buffering; multipart uploads passed byte for byte
- Bodies up to 32 MB inspected for routing; larger ones relayed as-is
- An adapter that must rewrite an oversized body refuses with a clear 413 instead of truncating
- Generative calls are never retried, so a retry never becomes a second charge
- OpenAPI 3.1 description of all API surfaces at /openapi.json
from openai import OpenAI
client = OpenAI(
base_url="https://ai.example.com/v1", # your Janus gateway
api_key="je_…", # a Janus token, not a provider key
)
reply = client.chat.completions.create(
model="chat-default",
messages=[{"role": "user", "content": "Summarize this incident report."}],
)See it on your own network.
The Community edition is free for up to 25 people. The 30-day Business trial unlocks every Business feature.