Views
No views yet
┌──────────────── Opal Router (:11500, model="opal") ────────────────┐
your request ───► │ classify → code/sec ─► opal-8b (Cognis merge) │
│ reasoning ─► gpt-oss:20b (OpenAI open MoE) │
│ tool-call ─► llama3.1:8b (Meta) │
│ general ─► phi4 (Microsoft) │
│ vision ─► llava │
└────────────────────────────────────────────────────────────────────┘tools=[…] array are
routed to the tool-calling specialist and the tool calls flow straight back.1# 1. pull the backends (all US-origin)
2ollama pull llama3.1:8b && ollama pull gpt-oss:20b && ollama pull phi4 && ollama pull llava
3# plus the Opal-8B weight (see the Opal-8B-GGUF repo) imported as `opal-8b`
4# 2. start the router
5python opal_router.py # serves http://localhost:11500/v1
6# 3. point any OpenAI client at it
7curl http://localhost:11500/v1/chat/completions -H "Content-Type: application/json" \
8 -d '{"model":"opal","messages":[{"role":"user","content":"Prove sqrt(2) is irrational"}]}'
9# -> classified as reasoning -> served by gpt-oss:20bOLLAMA=http://localhost:11434, PORT=11500. Routing table:
configs/routes.json (edit to change backends; a model
missing from ollama list falls back to default).opal_router.py — the stdlib router/serverconfigs/routes.json — capability → model map + backend provenance