OpenAI-compatible API backed by local models across 2 nodes
General chat: mistral-small3.2:latest or glm4:9b (fastest)
Code: codestral:22b or deepseek-coder-v2:16b
Base URL: https://api.jonbowden.com.ngrok.dev/v1
Authenticate with your API key using the Authorization: Bearer header.
from openai import OpenAI
client = OpenAI(
base_url="https://api.jonbowden.com.ngrok.dev/v1",
api_key="YOUR_API_KEY",
)
resp = client.chat.completions.create(
model="mistral-small3.2:latest",
messages=[{"role": "user", "content": "Hello"}],
)
print(resp.choices[0].message.content)
curl https://api.jonbowden.com.ngrok.dev/v1/chat/completions \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "mistral-small3.2:latest",
"messages": [{"role": "user", "content": "Hello"}]
}'
Settings → Models → Add OpenAI-compatible provider:
Base URL: https://api.jonbowden.com.ngrok.dev/v1
API Key: your provided key
GET /v1/models List available models
POST /v1/chat/completions Chat (supports streaming)
GET /chats Your chat history
GET /health Health check
Streaming & non-streaming responses
Per-key rate limiting and usage tracking
Encrypted chat history with export
13 models across 2 nodes (spark1 + spark2) via 200Gbps link