Skip to content

Latest commit

 

History

History
1393 lines (997 loc) · 82 KB

USER_GUIDE.md

File metadata and controls

1393 lines (997 loc) · 82 KB

User Guide (Yorùbá)

🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇧🇦 bs · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇨🇳 zh-CN · 🇹🇼 zh-TW


🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇧🇦 bs · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇨🇳 zh-CN · 🇹🇼 zh-TW

Ìtọ́sọ́nà pípé fún ṣíṣètò àwọn olùpèsè, ṣíṣẹ̀dá àwọn combo, ṣíṣepọ̀ àwọn irinṣẹ́ CLI, àti ṣíṣe ìmúṣiṣẹ́ OmniRoute.


Àkójọ Àwọn Àkòrí


💰 Àkótán Ìdíyelé

Ìpele Olùpèsè Iye Owó Ìtúnṣe Ìpín Ó Dára Jù Fún
💳 ÌṢẸ́-ALÁBÀÁPÍN Claude Code (Pro) $20/oṣù 5h + lọ́sọ̀ọ̀sẹ̀ Àwọn tó ti ṣe alabapin
Codex (Plus/Pro) $20-200/oṣù 5h + lọ́sọ̀ọ̀sẹ̀ Àwọn olumulo OpenAI
GitHub Copilot $10-19/oṣù Lóṣooṣù Àwọn olumulo GitHub
🔑 KỌ́KỌ́RỌ́ API DeepSeek San gẹ́gẹ́ bí ìlò Kò sí Ìrònú tó wọ́pọ̀
Groq San gẹ́gẹ́ bí ìlò Kò sí Ìmújáde tó yára gan-an
xAI (Grok) San gẹ́gẹ́ bí ìlò Kò sí Ìrònú Grok 4
Mistral San gẹ́gẹ́ bí ìlò Kò sí Àwọn módelì tí a gbàlejò ní EU
Perplexity San gẹ́gẹ́ bí ìlò Kò sí Tí a fi ìṣàwárí kún
Together AI San gẹ́gẹ́ bí ìlò Kò sí Àwọn módelì orísun-ṣíṣi
Fireworks AI San gẹ́gẹ́ bí ìlò Kò sí Àwọn àwòrán FLUX tó yára
Cerebras San gẹ́gẹ́ bí ìlò Kò sí Iyára ní ìwọ̀n wafer
Cohere San gẹ́gẹ́ bí ìlò Kò sí Command R+ RAG
NVIDIA NIM San gẹ́gẹ́ bí ìlò Kò sí Àwọn módelì ilé-iṣẹ́
Baidu Qianfan San gẹ́gẹ́ bí ìlò Kò sí Àwọn módelì ERNIE
💰 OLÓWÓ-PỌ́KÚ GLM-4.7 $0.6/1M Ojoojúmọ́ 10AM Àfẹ́yìntì oníwọ̀nba
MiniMax M2.1 $0.2/1M Àkókò 5-wákàtí tó ń yí Àṣàyàn tó din owó jù
Kimi K2 $9/oṣù péré 10M token/oṣù Iye owó tó ṣeé sọ tẹ́lẹ̀
🆓 Ọ̀FẸ́ Qoder $0 Àwọn ààlà olùpèsè ló kan Ṣàyẹ̀wò àkójọ lọ́wọ́lọ́wọ́
Kiro $0 ~50 kírẹ́díìtì/oṣù Claude ọ̀fẹ́

🎯 Àwọn Ọ̀nà Lílo

Ọ̀nà 1: "Mo ní ìṣẹ́-alábàápín Claude Pro"

Ìṣòro: Ìpín máa ń dópin láìlò, àwọn ààlà ìwọ̀n lílo sì máa ń dé nígbà kíkọ kóòdù lọ́pọ̀lọpọ̀

Àkójọpọ̀: "maximize-claude"
  1. cc/claude-opus-4-7        (lo ìṣẹ́-alábàápín náà dé ẹ̀kúnrẹ́rẹ́)
  2. glm/glm-4.7               (àfẹ́yìntì olówó-pọ́kú nígbà tí ìpín bá tán)
  3. if/qwen3.8-max-preview       (àfẹ́yìntì pajawiri ọ̀fẹ́)

Iye owó oṣooṣù: $20 (ìṣẹ́-alábàápín) + ~$5 (àfẹ́yìntì) = $25 lápapọ̀
dípò $20 + kí ààlà lílo dé = ìjákulẹ̀

Ọ̀nà 2: "Mo fẹ́ kí ó jẹ́ ọ̀fẹ́ pátápátá"

Ìṣòro: Mi ò lè san owó ìṣẹ́-alábàápín, mo nílò AI tó ṣeé gbẹ́kẹ̀lé fún kíkọ kóòdù

Àkójọpọ̀: "zero-cost"
  1. if/kimi-k2.7-code          (a ṣe àkójọ rẹ̀ gẹ́gẹ́ bí ìwọlé ọ̀fẹ́; àwọn ààlà ìwọ̀n lílo lè kan)
  2. kr/qwen3-coder-next        (àfẹ́yìntì Kiro ọ̀fẹ́)

Iye owó oṣooṣù: $0
Didára: ṣàyẹ̀wò módelì náà, àwọn ààlà, àṣírí, àti SLA fún ẹrù iṣẹ́ rẹ

Ọ̀nà 3: "Mo nílò kíkọ kóòdù 24/7, láìsí ìdádúró"

Ìṣòro: Àwọn ọjọ́ ìparí iṣẹ́, mi ò lè fara da àkókò àìṣiṣẹ́

Àkójọpọ̀: "always-on"
  1. cc/claude-opus-4-7        (didára tó ga jù)
  2. cx/gpt-5.5                (ìṣẹ́-alábàápín kejì)
  3. glm/glm-4.7               (olówó-pọ́kú, ó ń tún ara rẹ̀ ṣe lojoojúmọ́)
  4. minimax/MiniMax-M2.1      (ó din owó jù, ìtúnṣe 5h)
  5. if/deepseek-v4-flash       (a ṣe àkójọ rẹ̀ gẹ́gẹ́ bí ìwọlé ọ̀fẹ́; àwọn ààlà ìwọ̀n lílo lè kan)

Àbájáde: Ìpele àfẹ́yìntì 5 ń mú agbára ìfaradà gbòòrò sí i; a kò ṣe ìdánilójú wíwà àwọn iṣẹ́ orísun
Iye owó oṣooṣù: $20-200 (àwọn ìṣẹ́-alábàápín) + $10-20 (àfẹ́yìntì)

Ọ̀nà 4: "Mo fẹ́ AI Ọ̀FẸ́ nínú OpenClaw"

Ìṣòro: Mo nílò olùrànlọ́wọ́ AI nínú àwọn ohun èlò ìfìwéránṣẹ́, lọ́fẹ̀ẹ́ pátápátá

Àkójọpọ̀: "openclaw-free"
  1. if/qwen3.8-max-preview     (a ṣe àkójọ rẹ̀ gẹ́gẹ́ bí ìwọlé ọ̀fẹ́; àwọn ààlà ìwọ̀n lílo lè kan)
  2. if/deepseek-v4-flash       (a ṣe àkójọ rẹ̀ gẹ́gẹ́ bí ìwọlé ọ̀fẹ́; àwọn ààlà ìwọ̀n lílo lè kan)
  3. if/kimi-k2.7-code          (a ṣe àkójọ rẹ̀ gẹ́gẹ́ bí ìwọlé ọ̀fẹ́; àwọn ààlà ìwọ̀n lílo lè kan)

Iye owó oṣooṣù: $0
Wọlé sí i nípasẹ̀: WhatsApp, Telegram, Slack, Discord, iMessage, Signal...

📖 Ìṣètò Olùpèsè

Láti ṣàfikún ọ̀pọ̀ ìsopọ̀ kọ́kọ́rọ́ API lẹ́ẹ̀kan náà láti inú fáìlì CSV tàbí JSON, lo Pátákó ìṣàkóso → Àwọn Olùpèsè → Gbé wọlé láti inú fáìlì. Ipò àwọn ọ̀wọ̀n ni a fi ń dá wọn mọ̀ (provider,name,apiKey,baseUrl,priority); provider gbọ́dọ̀ ti wà tẹ́lẹ̀ gẹ́gẹ́ bí olùpèsè tí a ń ṣàkóso tàbí node tó bá a mu. Wo Gbé àwọn olùpèsè wọlé láti inú fáìlì CSV tàbí JSON.

🔐 Àwọn Olùpèsè Alabapin

Claude Code (Pro/Max)

Pátákó ìṣàkóso → Àwọn Olùpèsè → So Claude Code pọ̀
→ Wọlé pẹ̀lú OAuth → Ìmúdójúìwọ̀n token aládàáṣe
→ Títọpinpin iye-ààlà wákàtí 5 + ti ọ̀sẹ̀

Àwọn àwòṣe:
  cc/claude-opus-4-7
  cc/claude-sonnet-4-6
  cc/claude-haiku-4-5-20251001

Ìmọ̀ràn Amọ̀ṣẹ́: Lo Opus fún àwọn iṣẹ́ tó díjú, Sonnet fún iyára. OmniRoute ń tọpinpin iye-ààlà fún àwòṣe kọ̀ọ̀kan!

Kò sí aṣàwákiri lórí ẹ̀rọ tó ń gbàlejò OmniRoute? Ṣiṣe claude setup-token ní ibikíbi tí a ti wọlé sí Claude Code, kí o sì lẹ token ọlọ́dún kan náà mọ́ inú taabu Token Ìṣètò. Wo Claude Code pẹ̀lú token ìṣètò.

Àwọn ipa-ọ̀nà tó bá Claude àti Claude Code mu máa ń pa ìsapá ìrònú max mọ́ fún àwọn àwòṣe Opus àti Sonnet. Àwọn àwòṣe Haiku kò gba ipele ìsapá max, nítorí náà OmniRoute máa ń sọ ìbéèrè náà kalẹ̀ sí ìnáwó ìrònú gíga kí ó tó fi ránṣẹ́ sí olùpèsè òkè.

OpenAI Codex (Plus/Pro)

Pátákó ìṣàkóso → Àwọn Olùpèsè → So Codex pọ̀
→ Wọlé pẹ̀lú OAuth (port 1455)
→ Àtúntò lẹ́yìn wákàtí 5 + lọ́sọ̀ọ̀sẹ̀

Àwọn àwòṣe:
  cx/gpt-5.5
  cx/gpt-5.4
  cx/gpt-5.3-codex
  cx/gpt-5.3-codex-spark

GitHub Copilot

Pátákó ìṣàkóso → Àwọn Olùpèsè → So GitHub pọ̀
→ OAuth nípasẹ̀ GitHub
→ Àtúntò oṣooṣù (ọjọ́ kìíní oṣù)

Àwọn àwòṣe:
  gh/gpt-5.5
  gh/gpt-5.4
  gh/claude-sonnet-4.6
  gh/claude-opus-4.7
  gh/gemini-3.1-pro-preview

💰 Àwọn Olùpèsè Olówó Pọ́ọ́kú

GLM-4.7 (Àtúntò ojoojúmọ́, $0.6/1M)

  1. Forúkọsílẹ̀: Zhipu AI
  2. Gba kọ́kọ́rọ́ API láti Coding Plan
  3. Pátákó ìṣàkóso → Ṣàfikún Kọ́kọ́rọ́ API: Olùpèsè: glm, Kọ́kọ́rọ́ API: your-key

Lò ó: glm/glm-4.7 — Ìmọ̀ràn Amọ̀ṣẹ́: Coding Plan ń fúnni ní iye-ààlà 3× ní 1/7 iye owó! Ó máa ń tún ara rẹ̀ tò ní 10:00 àárọ̀ ojoojúmọ́.

MiniMax M2.1 (Àtúntò wákàtí 5, $0.20/1M)

  1. Forúkọsílẹ̀: MiniMax
  2. Gba kọ́kọ́rọ́ API → Pátákó ìṣàkóso → Ṣàfikún Kọ́kọ́rọ́ API

Lò ó: minimax/MiniMax-M2.1 — Ìmọ̀ràn Amọ̀ṣẹ́: Èyí ni àṣàyàn tó din owó jù fún àyíká ọ̀rọ̀ gígùn (token mílíọ̀nù 1)!

Kimi K2 ($9/oṣù láìyípadà)

  1. Di alabapin: Moonshot AI
  2. Gba kọ́kọ́rọ́ API → Pátákó ìṣàkóso → Ṣàfikún Kọ́kọ́rọ́ API

Lò ó: kimi/kimi-k2.5 — Ìmọ̀ràn Amọ̀ṣẹ́: $9/oṣù láìyípadà fún token mílíọ̀nù 10 = iye owó gidi $0.90/1M!

Baidu Qianfan / ERNIE

  1. Forúkọsílẹ̀: Baidu AI Cloud Qianfan
  2. Ṣẹ̀dá kọ́kọ́rọ́ API Qianfan → Pátákó ìṣàkóso → Ṣàfikún Kọ́kọ́rọ́ API: Olùpèsè: qianfan

Lò ó: qianfan/ernie-5.1, qianfan/ernie-x1.1, tàbí ID àwòṣe Qianfan mìíràn tó bá OpenAI mu.

🆓 Àwọn Olùpèsè Ọ̀FẸ́

Àwọn olùpèsè ọ̀fẹ́ tí kò nílò ìfàṣẹ̀sí ní bọ́tìnì ìtan-an/pípa lẹ́gbẹ̀ẹ́ Kò nílò ìfàṣẹ̀sí lójú-ìwé olùpèsè wọn. Pípa á máa mú olùpèsè náà ṣiṣẹ́ mọ́, yóò yọ ọ́ kúrò nínú àwọn ìríran olùpèsè tí a ti ṣètò/ṣókí, yóò sì yọ àwọn àwòṣe rẹ̀ kúrò ní /v1/models.

Qoder (Àwòṣe Ọ̀FẸ́ 9)

Pátákó ìṣàkóso → So Qoder pọ̀ → Wọlé pẹ̀lú OAuth → Ìráyè sinmi lórí àwọn ààlà olùpèsè lọ́wọ́lọ́wọ́

Àwọn àwòṣe: if/qwen3.8-max-preview, if/qwen3.7-max, if/qwen3.7-plus, if/kimi-k3, if/kimi-k2.7-code, if/glm-5.2, if/deepseek-v4-pro, if/deepseek-v4-flash, if/minimax-m3

Kiro (Claude Ọ̀FẸ́)

Pátákó ìṣàkóso → So Kiro pọ̀ → AWS Builder ID tàbí Google/GitHub → ~50 kírẹ́díìtì/oṣù

Àwọn àwòṣe: kr/claude-sonnet-4.5, kr/claude-haiku-4.5

🎨 Àwọn Àkójọpọ̀

O lè tún ìtòlẹ́sẹẹsẹ àwọn káàdì àkójọpọ̀ ṣe ní tààrà nínú Dashboard → Combos nípa fífa ohun ìmú káàdì kọ̀ọ̀kan. A máa ń fi ìtòlẹ́sẹẹsẹ náà pamọ́ sínú SQLite, a sì máa ń dá a padà nígbà tí a bá tún kojọpọ̀.

Àpẹẹrẹ 1: Mú Ìforúkọsílẹ̀ Ga Jù → Àfẹ́yìntì Olówó Pọ́ọ́kú

Dashboard → Combos → Create New

Orúkọ: premium-coding
Àwọn Mọ́dẹ́lì:
  1. cc/claude-opus-4-7 (Ìforúkọsílẹ̀ àkọ́kọ́)
  2. glm/glm-4.7 (Àfẹ́yìntì olówó pọ́ọ́kú, $0.6/1M)
  3. minimax/MiniMax-M2.7 (Àṣàyàn ìkẹyìn tó rọrùn jù, $0.3/1M)

Lò nínú CLI: premium-coding

Àpẹẹrẹ 2: Ọ̀fẹ́-Nìkan (Kò Ná Ohunkóhun)

Orúkọ: free-combo
Àwọn Mọ́dẹ́lì:
  1. if/kimi-k2.7-code (a ṣe àkọsílẹ̀ rẹ̀ pé ó ní ààyè ọ̀fẹ́; àwọn ààlà olùpèsè lè wúlò)
  2. kr/qwen3-coder-next (Àfẹ́yìntì ọ̀fẹ́ Kiro)

Iye owó: a ṣe àkọsílẹ̀ rẹ̀ lọ́wọ́lọ́wọ́ bí $0; àwọn òfin àti wíwà-lárọ̀ọ́wọ́tó lè yí padà

🔧 Ìṣọ̀kan CLI

Cursor IDE

Lílo Cursor gẹ́gẹ́ bí oníbàárà OmniRoute (darí ìfọ̀rọ̀wérọ̀ Cursor gba OmniRoute kọjá):

Settings → Models → Advanced:
  OpenAI API Base URL: http://localhost:20128/v1
  OpenAI API Key: [láti dashboard omniroute]
  Model: cc/claude-opus-4-7

Lílo OmniRoute gẹ́gẹ́ bí olùpèsè Cursor (OmniRoute ń pe Cursor tó wà lókè): ó dára láti lo Dashboard → Providers → Cursor → Login with Cursor. Nínú Docker, wo docs/providers/CURSOR-DOCKER.md.

Claude Code

Ṣàtúnṣe ~/.claude/settings.json:

{
  "env": {
    "ANTHROPIC_BASE_URL": "http://localhost:20128",
    "ANTHROPIC_AUTH_TOKEN": "your-omniroute-api-key"
  }
}

Lo endpoint gbòǹgbò tó bá Claude mu níbí. Má ṣe fi /v1 kún ANTHROPIC_BASE_URL.

Codex CLI

export OPENAI_BASE_URL="http://localhost:20128"
export OPENAI_API_KEY="your-omniroute-api-key"
codex "your prompt"

OpenClaw

Ṣàtúnṣe ~/.openclaw/openclaw.json:

{
  "agents": {
    "defaults": {
      "model": { "primary": "omniroute/if/kimi-k2.7-code" }
    }
  },
  "models": {
    "providers": {
      "omniroute": {
        "baseUrl": "http://localhost:20128/v1",
        "apiKey": "your-omniroute-api-key",
        "api": "openai-completions",
        "models": [{ "id": "if/kimi-k2.7-code", "name": "Kimi K2.7 Code" }]
      }
    }
  }
}

Tàbí lo Dashboard: CLI Tools → OpenClaw → Auto-config

Cline / Continue / RooCode

Olùpèsè: OpenAI Compatible
URL Ìpìlẹ̀: http://localhost:20128/v1
Kọ́kọ́rọ́ API: [láti dashboard]
Mọ́dẹ́lì: cc/claude-opus-4-7

🚀 Ìmúṣiṣẹ́

Fífi npm sí gbogbo ètò (A Dámọ̀ràn)

npm install -g omniroute

# Ṣẹ̀dá àpò ìṣètò
mkdir -p ~/.omniroute

# Ṣẹ̀dá fáìlì .env (wo .env.example)
cp .env.example ~/.omniroute/.env

# Bẹ̀rẹ̀ olupin
omniroute
# Tàbí pẹ̀lú port àkànṣe:
omniroute --port 3000

CLI máa ń kojọpọ̀ .env láti ~/.omniroute/.env tàbí ./.env láìfọwọ́yí.

Ipò tray

Bẹ̀rẹ̀ OmniRoute nínú tray ètò:

omniroute serve --tray

Àṣẹ náà máa padà lẹ́yìn tí olupin àti tray bá ti ṣetán.

Olupin náà máa tẹ̀síwájú láìsí terminal.

Ipò tray ń ṣe àtìlẹ́yìn fún macOS, Windows, àti àwọn session Linux aláwòrán. Ipò tray kì í ṣí dashboard láìfọwọ́yí.

Lo àkójọ aṣàyàn tray fún àwọn ìgbésẹ̀ wọ̀nyí:

  • Ṣí dashboard.
  • Ṣí /dashboard/logs.
  • Yí ìbẹ̀rẹ̀-láìfọwọ́yí padà.
  • Dá OmniRoute dúró.

Má ṣe darapọ̀ --tray mọ́ àwọn aṣàyàn wọ̀nyí:

  • --daemon
  • --log
  • --no-recovery

Àwọn ipò wọ̀nyí nílò ìṣàkóso process tó yàtọ̀.

Mú ìbẹ̀rẹ̀ ṣiṣẹ́ ní ìwọlé ẹ̀rọ tó kàn:

omniroute autostart enable

Ìbẹ̀rẹ̀-láìfọwọ́yí máa ń lo ipò tray lórí macOS, Windows, àti àwọn session Linux aláwòrán. Linux tí kò ní ìfihàn máa ń lo iṣẹ́ onílò systemd tó ti wà tẹ́lẹ̀.

Mú ìbẹ̀rẹ̀ nígbà ìwọlé kúrò:

omniroute autostart disable

Yíyọ Kúrò

Nígbà tí o kò bá nílò OmniRoute mọ́, a pèsè script kíákíá méjì fún yíyọ ọ́ kúrò lọ́nà mímọ́:

Àṣẹ Ìgbésẹ̀
npm run uninstall Yọ app ètò náà kúrò ṣùgbọ́n ó pa DB àti àwọn ìṣètò rẹ mọ́ sínú ~/.omniroute.
npm run uninstall:full Yọ app náà kúrò, Ó SÌ pa gbogbo ìṣètò, kọ́kọ́rọ́, àti database rẹ́ pátápátá.

Àkíyèsí: Láti ṣiṣẹ́ àwọn àṣẹ wọ̀nyí, lọ sí àpò iṣẹ́-àkànṣe OmniRoute (tí o bá ṣe clone rẹ̀), kí o sì ṣiṣẹ́ wọn. Ní ọ̀nà míì, tí o bá fi sí gbogbo ètò, o lè ṣiṣẹ́ npm uninstall -g omniroute nìkan.

Ìmúṣiṣẹ́ VPS

git clone https://github.com/diegosouzapw/OmniRoute.git
cd OmniRoute && npm install && npm run build

export JWT_SECRET="your-secure-secret-change-this"
export INITIAL_PASSWORD="your-password"
export DATA_DIR="/var/lib/omniroute"
export PORT="20128"
export HOSTNAME="0.0.0.0"
export NODE_ENV="production"
export NEXT_PUBLIC_BASE_URL="http://localhost:20128"
export API_KEY_SECRET="endpoint-proxy-api-key-secret"

npm run start
# Tàbí: pm2 start npm --name omniroute -- start

Ìmúṣiṣẹ́ PM2 (Memory Kékeré)

Fún àwọn olupin tó ní RAM tó ní ààlà, lo aṣàyàn ààlà memory:

# Pẹ̀lú ààlà 512MB (àkọ́ṣe)
pm2 start npm --name omniroute -- start

# Tàbí pẹ̀lú ààlà memory àkànṣe
OMNIROUTE_MEMORY_MB=512 pm2 start npm --name omniroute -- start

# Tàbí nípa lílo ecosystem.config.js
pm2 start ecosystem.config.js

Ṣẹ̀dá ecosystem.config.js:

module.exports = {
  apps: [
    {
      name: "omniroute",
      script: "npm",
      args: "start",
      env: {
        NODE_ENV: "production",
        OMNIROUTE_MEMORY_MB: "512",
        JWT_SECRET: "your-secret",
        INITIAL_PASSWORD: "your-password",
      },
      node_args: "--max-old-space-size=512",
      max_memory_restart: "300M",
    },
  ],
};

Docker

# Kọ image (àkọ́ṣe = runner-cli pẹ̀lú codex/claude/droid tí a ti fi sí tẹ́lẹ̀)
docker build -t omniroute:cli .

# Ipò tó ṣeé gbé kiri (a dámọ̀ràn)
docker run -d --name omniroute -p 20128:20128 --env-file ./.env -v omniroute-data:/app/data omniroute:cli

Fún ipò tó darapọ̀ mọ́ host pẹ̀lú àwọn binary CLI, wo apá Docker nínú docs pàtàkì.

Void Linux (xbps-src)

Àwọn olumulo Void Linux lè ṣe àkójọpọ̀ package OmniRoute kí wọ́n sì fi sí ẹ̀rọ wọn lọ́nà abinibi nípa lílo ìlànà àkójọpọ̀ agbelebu xbps-src. Èyí ń ṣe àkójọpọ̀ standalone Node.js àti àwọn binding abinibi better-sqlite3 tí a nílò láìfọwọ́ṣe.

Wo template xbps-src
# Fáìlì template fún 'omniroute'
pkgname=omniroute
version=3.8.0
revision=1
hostmakedepends="nodejs python3 make"
depends="openssl"
short_desc="Ẹnu-ọ̀nà AI àgbáyé pẹ̀lú ìdarí ọlọ́gbọ́n fún ọ̀pọ̀ olùpèsè LLM"
maintainer="zenobit <zenobit@disroot.org>"
license="MIT"
homepage="https://github.com/diegosouzapw/OmniRoute"
distfiles="https://github.com/diegosouzapw/OmniRoute/archive/refs/tags/v${version}.tar.gz"
checksum=009400afee90a9f32599d8fe734145cfd84098140b7287990183dde45ae2245b
system_accounts="_omniroute"
omniroute_homedir="/var/lib/omniroute"
export NODE_ENV=production
export npm_config_engine_strict=false
export npm_config_loglevel=error
export npm_config_fund=false
export npm_config_audit=false

do_build() {
	# Ṣe ìdánimọ̀ faaji CPU àfojúsùn fún node-gyp
	local _gyp_arch
	case "$XBPS_TARGET_MACHINE" in
		aarch64*) _gyp_arch=arm64 ;;
		armv7*|armv6*) _gyp_arch=arm ;;
		i686*) _gyp_arch=ia32 ;;
		*) _gyp_arch=x64 ;;
	esac

	# 1) Fi gbogbo deps sílẹ̀ – fo àwọn script
	NODE_ENV=development npm ci --ignore-scripts

	# 2) Kọ́ bundle standalone Next.js
	npm run build

	# 3) Da àwọn ohun èlò static sínú standalone
	cp -r .next/static .next/standalone/.next/static
	[ -d public ] && cp -r public .next/standalone/public || true

	# 4) Ṣàkójọpọ̀ binding abinibi better-sqlite3
	local _node_gyp=/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
	(cd node_modules/better-sqlite3 && node "$_node_gyp" rebuild --arch="$_gyp_arch")

	# 5) Fi binding tí a ṣàkójọpọ̀ sínú bundle standalone
	local _bs3_release=.next/standalone/node_modules/better-sqlite3/build/Release
	mkdir -p "$_bs3_release"
	cp node_modules/better-sqlite3/build/Release/better_sqlite3.node "$_bs3_release/"

	# 6) Yọ àwọn bundle sharp tí ó jẹ́ ti faaji pàtó kúrò
	rm -rf .next/standalone/node_modules/@img

	# 7) Da àwọn deps runtime pino tí ìṣàyẹ̀wò static Next.js kò fi sí:
	for _mod in pino-abstract-transport split2 process-warning; do
		cp -r "node_modules/$_mod" .next/standalone/node_modules/
	done
}

do_check() {
	npm run test:unit
}

do_install() {
	vmkdir usr/lib/omniroute/.next
	vcopy .next/standalone/. usr/lib/omniroute/.next/standalone

	# Dènà kí hook lẹ́yìn ìfiṣílẹ̀ má ba à yọ àwọn directory app router Next.js tí ó ṣófo
	for _d in \
		.next/standalone/.next/server/app/dashboard \
		.next/standalone/.next/server/app/dashboard/settings \
		.next/standalone/.next/server/app/dashboard/providers; do
		touch "${DESTDIR}/usr/lib/omniroute/${_d}/.keep"
	done

	cat > "${WRKDIR}/omniroute" <<'EOF'
#!/bin/sh
export PORT="${PORT:-20128}"
export DATA_DIR="${DATA_DIR:-${XDG_DATA_HOME:-${HOME}/.local/share}/omniroute}"
export APP_LOG_TO_FILE="${APP_LOG_TO_FILE:-false}"
mkdir -p "${DATA_DIR}"
exec node /usr/lib/omniroute/.next/standalone/server.js "$@"
EOF
	vbin "${WRKDIR}/omniroute"
}

post_install() {
	vlicense LICENSE
}

Àwọn Àyípadà Àyíká

Àyípadà Àkọ́ṣe Àpèjúwe
JWT_SECRET omniroute-default-secret-change-me Àṣírí ìfọwọ́sí JWT (yí i padà ní ìṣelọpọ)
INITIAL_PASSWORD CHANGEME Ọ̀rọ̀ aṣínà fún ìwọlé àkọ́kọ́
DATA_DIR ~/.omniroute Àpò-ọ̀nà dátà (db, lílò, àwọn àkọsílẹ̀)
PORT àkọ́ṣe framework Port iṣẹ́ (20128 nínú àwọn àpẹẹrẹ)
HOSTNAME àkọ́ṣe framework Host ìsopọ̀ (Docker máa ń lo 0.0.0.0 gẹ́gẹ́ bí àkọ́ṣe)
NODE_ENV àkọ́ṣe runtime Ṣètò sí production fún ìmúṣiṣẹ́
NEXT_PUBLIC_BASE_URL http://localhost:20128 URL ìpìlẹ̀ gbogbogbò tí a fi hàn sí dashboard tí server sì lè ráyè sí (ó rọ́pò BASE_URL àtijọ́)
NEXT_PUBLIC_CLOUD_URL https://omniroute.dev URL ìpìlẹ̀ endpoint fún ìṣiṣẹ́pọ̀ cloud (ó rọ́pò CLOUD_URL àtijọ́)
API_KEY_SECRET endpoint-proxy-api-key-secret Àṣírí HMAC fún àwọn kọ́kọ́rọ́ API tí a ṣẹ̀dá
REQUIRE_API_KEY false Fi ipa mú lílo kọ́kọ́rọ́ API Bearer lórí /v1/*
ALLOW_API_KEY_REVEAL false Gba àwọn olùlò dashboard tí a ti jẹ́rìí sí láyè láti fi gbogbo iye kọ́kọ́rọ́ API tí a tọ́jú hàn nígbà ìbéèrè
PROVIDER_LIMITS_SYNC_INTERVAL_MINUTES 70 Àkókò ìmúdójúìwọ̀n ní ẹ̀gbẹ́ server fún dátà Provider Limits tí a fi pamọ́ sínú cache; àwọn bọ́tìnì ìmúdójúìwọ̀n UI ṣì ń fa ìṣiṣẹ́pọ̀ afọwọ́ṣe
DISABLE_SQLITE_AUTO_BACKUP false Pa àwọn snapshot SQLite aládàáṣiṣẹ́ ṣáájú kíkọ/import/restore; àwọn backup afọwọ́ṣe ṣì ń ṣiṣẹ́
APP_LOG_TO_FILE true Mú àbájáde àkọsílẹ̀ ohun èlò àti àyẹ̀wò lọ sí disk
AUTH_COOKIE_SECURE false Fi ipa mú cookie ìjẹ́rìí Secure (lẹ́yìn HTTPS reverse proxy)
CLOUDFLARED_BIN kò ṣètò Lo binary cloudflared tó ti wà dípò gbígbàsílẹ̀ tí a ń ṣàkóso
CLOUDFLARED_PROTOCOL http2 Ọ̀nà ìgbékalẹ̀ fún àwọn Quick Tunnels tí a ń ṣàkóso (http2, quic, tàbí auto)
OMNIROUTE_MEMORY_MB 512 Òpin heap Node.js ní MB
PROMPT_CACHE_MAX_SIZE 50 Iye tó pọ̀ jù fún àwọn àkọọ́lẹ̀ prompt cache
SEMANTIC_CACHE_MAX_SIZE 100 Iye tó pọ̀ jù fún àwọn àkọọ́lẹ̀ semantic cache

Fún àlàyé kíkún nípa àwọn àyípadà ayíká, wo README.


📊 Àwọn Awoṣe Tó Wà Lọ́wọ́

Wo gbogbo àwọn awoṣe tó wà lọ́wọ́

Àkópọ̀ tó wà ní isàlẹ̀ ni a kó papọ̀ láti inu open-sse/config/providerRegistry.ts fún v3.8.0. Àwọn kàtálógù awọ̀nàmáàmá (Gemini, OpenRouter, àti bẹ́ẹ̀bẹ́ẹ̀ lọ) ni wọ́n ń ṣe àmúṣẹ́pọ̀ lọ́nà aláṣẹ́ṣe — fún kàtálógù tó ń ṣiṣẹ́ ní kikun, ṣí Pátákó Ìṣàkóso → Àwọn Olùpèsè → [olùpèsè] → Àwọn Awoṣe Tó Wà Lọ́wọ́ tàbí pe GET /api/models/catalog.

Bí àkópọ̀ àtòbáwá ti olùpèsè kan bá ti yí padà, lo Gba wọlé láti /models lórí ojú-ìwé yẹn (tàbí mú Àmúṣẹ́pọ̀ Aláṣẹ́ṣe ṣiṣẹ́) láti fa kàtálógù orísun òkè tó ń ṣiṣẹ́. A fìdí èyí múlẹ̀ ní v3.8.50 fún LLM7.io (gemini-3.1-flash-lite) àti UncloseAI (solidrust/Hermes-3-Llama-3.1-8B-AWQ); ìwọ̀le aláìlórúkọ ti Pollinations ṣì wà lábẹ́ ààlà orísun òkè nígbà àyẹ̀wó kannáà náà.

Claude Code (cc/) — OAuth Pro/Max: cc/claude-opus-4-8, cc/claude-opus-4-7, cc/claude-opus-4-6, cc/claude-opus-4-5-20251101, cc/claude-sonnet-4-6, cc/claude-sonnet-4-5-20250929, cc/claude-haiku-4-5-20251001

Codex (cx/) — OAuth Plus/Pro: cx/gpt-5.5 (+ àwọn ipele ìsapá: gpt-5.5-xhigh, gpt-5.5-high, gpt-5.5-medium, gpt-5.5-low), cx/gpt-5.4, cx/gpt-5.4-mini, cx/gpt-5.3-codex, cx/gpt-5.3-codex-spark

GitHub Copilot (gh/) — OAuth: gh/gpt-5.5, gh/gpt-5.4, gh/gpt-5.4-mini, gh/gpt-5-mini, gh/gpt-5.3-codex, gh/claude-opus-4.7, gh/claude-opus-4.6, gh/claude-opus-4-5-20251101, gh/claude-sonnet-4.6, gh/claude-sonnet-4.5, gh/claude-haiku-4.5, gh/gemini-3.1-pro-preview, gh/gemini-3-flash-preview, gh/oswe-vscode-prime

Kiro (kr/) — OAuth lọ́fẹ̀ẹ́: lo kàtálógù tó ń ṣiṣẹ́ tí wọ́n fi hàn lábẹ́ Pátákó Ìṣàkóso → Àwọn Olùpèsè → Kiro → Àwọn Awoṣe Tó Wà Lọ́wọ́. Èyí tó wà lọ́wọ́ dá lórí àkáǹtì àti ètò rẹ̀.

Qoder (if/) — OAuth lọ́fẹ̀ẹ́: if/qwen3.8-max-preview, if/qwen3.7-max, if/qwen3.7-plus, if/kimi-k3, if/kimi-k2.7-code, if/glm-5.2, if/deepseek-v4-pro, if/deepseek-v4-flash, if/minimax-m3

GLM (glm/, glm-cn/, zai/, glmt/) — $0.2–0.6/1M: glm/glm-5.1, glm/glm-5, glm/glm-5-turbo, glm/glm-4.7, glm/glm-4.7-flash, glm/glm-4.6, glm/glm-4.6v, glm/glm-4.5, glm/glm-4.5v, glm/glm-4.5-air

MiniMax (minimax/, minimax-cn/) — $0.2/1M: minimax/MiniMax-M2.7, minimax/MiniMax-M2.7-highspeed, minimax/MiniMax-M2.5, minimax/MiniMax-M2.5-highspeed

Kimi (kimi/, kimi-coding/, kimi-coding-apikey/) — $9/fún oṣù lọ́nà tó dúró tàbí gẹ́gẹ́ bí ìlò ṣe lọ: kimi/kimi-k2.6, kimi/kimi-k2.5

DeepSeek (ds/) — Kọ́kọ́rọ̀ API: ds/deepseek-v4-pro, ds/deepseek-v4-flash

Groq (groq/) — Ó yára gan-an: groq/llama-3.3-70b-versatile, groq/meta-llama/llama-4-maverick-17b-128e-instruct, groq/qwen/qwen3-32b, groq/openai/gpt-oss-120b

xAI (xai/) — Grok àbíbí: xai/grok-4.3, xai/grok-4.20-multi-agent-0309, xai/grok-4.20-0309-reasoning, xai/grok-4.20-0309-non-reasoning

Mistral (mistral/) — Tí wọ́n gbé ní EU: mistral/mistral-large-latest, mistral/mistral-medium-3-5, mistral/mistral-small-latest, mistral/devstral-latest, mistral/codestral-latest

Perplexity (pplx/) — Tí ìwádìí ṣe àtìlẹ́yìn fún: pplx/sonar-deep-research, pplx/sonar-reasoning-pro, pplx/sonar-pro, pplx/sonar

Together AI (together/) — Orísun ṣíṣí: together/meta-llama/Llama-3.3-70B-Instruct-Turbo-Free (lọ́fẹ̀ẹ́), together/meta-llama/Llama-Vision-Free, together/deepseek-ai/DeepSeek-R1-Distill-Llama-70B-Free, together/deepseek-ai/DeepSeek-R1, together/Qwen/Qwen3-235B-A22B, together/meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8

Fireworks AI (fireworks/) — Ìtumọ̀ tó yára: fireworks/accounts/fireworks/models/kimi-k2p6, fireworks/accounts/fireworks/models/minimax-m2p7, fireworks/accounts/fireworks/models/qwen3p6-plus, fireworks/accounts/fireworks/models/glm-5p1, fireworks/accounts/fireworks/models/deepseek-v4-pro

Cerebras (cerebras/) — Ní ìwọ̀n wafer: cerebras/zai-glm-4.7, cerebras/gpt-oss-120b

Cohere (cohere/) — Tó dojukọ lórí RAG: cohere/command-a-reasoning-08-2025, cohere/command-a-vision-07-2025, cohere/command-a-03-2025, cohere/command-r-08-2024

NVIDIA NIM (nvidia/) — Fún àwọn ilé-iṣẹ́: nvidia/z-ai/glm-5.1, nvidia/minimaxai/minimax-m2.7, nvidia/google/gemma-4-31b-it, nvidia/mistralai/mistral-small-4-119b-2603, nvidia/mistralai/mistral-large-3-675b-instruct-2512, nvidia/qwen/qwen3.5-397b-a17b, nvidia/deepseek-ai/deepseek-v4-pro, nvidia/openai/gpt-oss-120b, nvidia/nvidia/nemotron-3.5-super-vl-120b-a12b

Baidu Qianfan (qianfan/) — ERNIE: qianfan/ernie-5.1, qianfan/ernie-5.0-thinking-latest, qianfan/ernie-x1.1

Ollama Cloud (ollama-cloud/): ollama-cloud/deepseek-v4-pro, ollama-cloud/deepseek-v4-flash, ollama-cloud/kimi-k2.6, ollama-cloud/glm-5.1, ollama-cloud/minimax-m2.7, ollama-cloud/gemma4:31b, ollama-cloud/qwen3.5:397b

Gemini (Google Cloud gemini/): Wọ́n ń ṣe àmúṣẹ́pọ̀ rẹ̀ láàyè fún kọ́kọ́rọ̀ API kọ̀ọ̀kan láti ọ̀dọ̀ Google — kò sí àkópọ̀ tó dúró. So kọ́kọ́rọ̀ kan pọ̀ nínú Pátákó Ìṣàkóso → Àwọn Olùpèsè lẹ́yìn náà lo Àwọn Awoṣe Tó Wà Lọ́wọ́ láti gbe kàtálógù lọ́wọ́lọ́wọ́ wọlé (fún àpẹẹrẹ gemini/gemini-3-pro, gemini/gemini-3-flash).

Àwọn olùpèsè mìíràn tó bá a mu (tí a yan): cohere, databricks, snowflake, together, vertex, alibaba, alibaba-cn, bedrock (nípasẹ̀ aws-bedrock), azure-ai, openrouter (kàtálógù tó ń gbe kọjá), siliconflow, hyperbolic, huggingface, featherless-ai, cloudflare-ai, scaleway, deepinfra, vercel-ai-gateway, bazaarlink, friendliai, nous-research, reka, volcengine, ai21, gigachat. Ọ̀kọ̀ọ̀kan wọn ń ṣàkóso àkópọ̀ awoṣe tirẹ̀ nínú providerRegistry.ts, ó sì ṣeé ṣe láti ṣe àmúṣẹ́pọ̀ rẹ̀ láìfọwọ́wọ́ nígbà tí olùpèsè náà bá fi òpin-ìsopọ̀ /models hàn.

Àkíyèsí nípa àwọn ID awoṣe: OmniRoute ń lo àwọn ID àbíbí ti olùpèsè kọ̀ọ̀kan (claude-opus-4-8, gpt-5.5, glm-5.1, MiniMax-M2.7, kimi-k2.5, grok-4.20-0309-reasoning). Àwọn ID kan ní àwọn ẹ̀yà tó kó àmì-ojúpo nítorí bẹ́ẹ̀ ni API orísun òkè ṣe ń retí wọn. Bí awoṣe kan kò bá sí nínú àkópọ̀ òkè, ṣe omniroute models --search <term> tàbí pe GET /api/models/catalog láti fìdí bó ṣe wà lọ́wọ́ múlẹ̀.


🧩 To ti ni ilọsiwaju Awọn ẹya ara ẹrọ

Awọn awoṣe aṣa

Ṣafikun ID awoṣe eyikeyi si olupese eyikeyi laisi iduro fun imudojuiwọn app kan:

# Via API
curl -X POST http://localhost:20128/api/provider-models \
  -H "Content-Type: application/json" \
  -d '{"provider": "openai", "modelId": "gpt-5.2", "modelName": "GPT-5.2"}'

# List: curl http://localhost:20128/api/provider-models?provider=openai
# Remove: curl -X DELETE "http://localhost:20128/api/provider-models?provider=openai&model=gpt-5.2"

Tabi lo Dasibodu:** Awọn olupese → [Olupese] → Aṣa Awọn awoṣe** .

Awọn akọsilẹ:

  • OpenRouter ati awọn olupese OpenAI/Anthropic-compatible ni iṣakoso lati** Awọn awoṣe to wa** nikan. Ṣafikun afọwọṣe, gbe wọle, ati imuṣiṣẹpọ adaṣe gbogbo ilẹ ni atokọ awoṣe to wa kanna, nitorinaa ko si apakan Awọn awoṣe Aṣa ọtọtọ fun awọn olupese wọnyẹn.
  • Awọn** Awọn awoṣe aṣa** apakan ti pinnu fun awọn olupese ti ko ṣe afihan awọn agbewọle agbewọle ti o wa ti iṣakoso.

Aṣa OpenAI-ibaramu Awọn olupese

Eyikeyi ẹnu-ọna ti o sọrọ OpenAI API (aṣoju ti ara ẹni ti gbalejo, vLLM, alaropo ẹni-kẹta) le ṣe afikun bi ipade olupese tirẹ:

  1. Awọn olupese → Fi OpenAI Ibaramu .
  2. Oruko : aami ifihan fun ipade.
  3. Apejuwe : orukọ afisona. Awọn alabara pe awọn awoṣe bi <prefix>/<model>, nitorinaa ipade kan pẹlu ìpele mygw yoo ṣiṣẹ mygw/gpt-4o-mini. Ti a beere; ko si ihamọ ohun kikọ.
  4. API Iru : idile ipari ti ẹnu-ọna naa n ṣiṣẹ (Awọn ipari iwiregbe, Awọn idahun, Awọn ifibọ, ohun, awọn aworan).
  5. Ipilẹ URL : root API, to ati pẹlu /v1 (fun apẹẹrẹ https://gateway.example.com/v1), kii ṣe ọna /chat/completions kikun. Awọn ẹnu-ọna pẹlu awọn ọna ti kii ṣe deede ṣeto wọn labẹ** To ti ni ilọsiwaju Eto** (iwiregbe ona, awọn awoṣe ona).
  6. Awọn** Bọtini API (fun Ṣayẹwo)** aaye nikan ṣe idanwo asopọ. Lẹhin ṣiṣẹda ipade, ṣii ki o lo** Fi Asopọmọra kun** lati tọju bọtini ti awọn ibeere yoo lo.

Ipade naa gba id inu ti fọọmu openai-compatible-<apiType>-<uuid>; o ko nilo lati tẹ sii, ìpele ni orukọ gbogbo eniyan.

Ifipamọ awọn ami-iṣaaju

Apejuwe ko le jẹ id tabi inagijẹ ti olupese ti a ṣe sinu (fun apẹẹrẹ openai, cf), tabi id ti olupese ti fẹyìntì. Olupin awoṣe ṣe ayẹwo awọn ids ti a ṣe sinu ati awọn inagijẹ ṣaaju awọn apa aṣa, nitorinaa ipade kan ti o lo ọkan ninu awọn asọtẹlẹ yẹn kii yoo gba ijabọ rara: <prefix>/model yoo lọ si olupese ti a ṣe sinu dipo, tabi kuna ni pipade ti olupese yẹn ba ti fẹhinti. Ṣiṣẹda tabi ṣatunkọ oju ipade pẹlu iru ìpele kan ni a kọ pẹlu:

prefix: "<prefix>" is a reserved provider prefix — choose a different prefix (reserved ids/aliases cannot be used for custom nodes because requests like <prefix>/model route to a built-in provider or fail closed when retired)

Yan ìpele kan pato (mygw, acme-proxy). Ti awọn ibeere si ipade aṣa ba kuna pẹlu aṣiṣe ti o lorukọ olupese ti a ṣe sinu tabi awọn iwe-ẹri rẹ, ṣayẹwo boya ìpele node ti wa ni ipamọ: awọn apa ti o fipamọ ṣaaju ki ofin yii wa tun wa ni ipamọ, ṣugbọn awọn ipa-ọna iṣaaju wọn si olupese ti a ṣe sinu. Ṣatunkọ ipade naa ki o fun ni ìpele titun kan.

Fun-asopọ awọn aṣayan ẹnu-ọna

Awọn bọtini wọnyi lọ sinu providerSpecificData asopọ (fun apẹẹrẹ nipasẹ PUT /api/providers/{id}):

  • toolNameMaxLength (odidi, 1-1024) - fun awọn ọna asopọ ibaramu ọna kika iwiregbe OpenAI eyiti ẹnu-ọna kọ awọn orukọ irinṣẹ gigun. Awọn orukọ gigun ni a firanṣẹ bi awọn inagijẹ kukuru ati mu pada ni idahun.
  • quotaEndpoint — aaye ipari quota/credits ẹnu-ọna, ka fun rinhoho ipin ipin dasibodu ati afisona-kito. Ṣiṣẹ lori mejeeji OpenAI- ati Anthropic-ibaramu awọn isopọ; apẹrẹ kikun ti wa ni akọsilẹ ni open-sse/services/usage/openaiCompatible.ts.
{
  "toolNameMaxLength": 64,
  "quotaEndpoint": {
    "url": "https://gateway.example.com/key/info",
    "auth": "bearer",
    "quotas": {
      "budget": { "used": "$.info.spend", "total": "$.info.max_budget", "currency": "USD" }
    }
  }
}

Chaining OmniRoute ẹlẹgbẹ

Ona-ọna OmniRoute miiran le ṣe afikun bi a** Aṣa OpenAI-ibaramu** olupese. Lo /v1 ipilẹ URL ẹlẹgbẹ ati igbẹhin, bọtini API ti o kere ju ti o ti gbejade nipasẹ ẹlẹgbẹ yẹn.

Fun awọn ẹwọn ilọtun-pada tabi awọn ẹwọn hop-pupọ, jẹ ki ẹṣọ lupu ijade ṣiṣẹ ni gbogbo ẹnu-ọna:

# gateway-a
OMNIROUTE_INSTANCE_ID=gateway-a
OMNIROUTE_PEER_URLS=http://gateway-b:20128/v1
OMNIROUTE_PEER_MAX_HOPS=4
# gateway-b
OMNIROUTE_INSTANCE_ID=gateway-b
OMNIROUTE_PEER_URLS=http://gateway-a:20128/v1
OMNIROUTE_PEER_MAX_HOPS=4

Awọn ibeere nikan ti a firanṣẹ si atokọ ti a gba laaye ni gbangba URL gba akọsori X-OmniRoute-Peer-Trace naa. Ẹnu-ọna kan kọ apẹẹrẹ ID ti o tun ṣe tabi isuna hop ti o rẹ pẹlu HTTP 508 Loop Detected; awọn olupese oke lasan gba ko si metadata ẹlẹgbẹ.

Pipin ẹlẹgbẹ kii ṣe ẹda data tabi ikuna agbalejo. Ẹnu-ọna kọọkan tọju ipo SQLite ominira, awọn caches, awọn iṣiro oṣuwọn, ati awọn akoko. Lo aṣoju iyipada ti ilera ti a ṣayẹwo tabi ikuna alabara fun active/passive tabi wiwa active/active, ati pe ko gbe data data SQLite kan sinu awọn apẹẹrẹ OmniRoute ṣiṣiṣẹ lọpọlọpọ.

Awọn ipa ọna Olupese igbẹhin

Awọn ibeere ipa ọna taara si olupese kan pato pẹlu afọwọsi awoṣe:

POST http://localhost:20128/v1/providers/openai/chat/completions
POST http://localhost:20128/v1/providers/openai/embeddings
POST http://localhost:20128/v1/providers/fireworks/images/generations

Ipilẹṣẹ olupese ti wa ni afikun laifọwọyi ti o ba sonu. Awọn awoṣe ti ko baamu pada 400.

Iṣeto Aṣoju nẹtiwọki

# Set global proxy
curl -X PUT http://localhost:20128/api/settings/proxy \
  -d '{"global": {"type":"http","host":"proxy.example.com","port":"8080"}}'

# Per-provider proxy
curl -X PUT http://localhost:20128/api/settings/proxy \
  -d '{"providers": {"openai": {"type":"socks5","host":"proxy.example.com","port":"1080"}}}'

# Test proxy
curl -X POST http://localhost:20128/api/settings/proxy/test \
  -d '{"proxy":{"type":"socks5","host":"proxy.example.com","port":"1080"}}'

Iṣaaju: Bọtini-pato → Konbo-pato → Olupese-pato → Agbaye → Ayika.

Awoṣe Catalog API

curl http://localhost:20128/api/models/catalog

Dapada awọn awoṣe akojọpọ nipasẹ olupese pẹlu awọn oriṣi (chat, embedding, image).

Awọsanma Sync

  • Awọn olupese amuṣiṣẹpọ, awọn akojọpọ, ati awọn eto kọja awọn ẹrọ
  • Imuṣiṣẹpọ abẹlẹ aifọwọyi pẹlu akoko-akoko + kuna-sare
  • Ṣe ayanfẹ NEXT_PUBLIC_BASE_URL/NEXT_PUBLIC_CLOUD_URL -ẹgbẹ olupin ni iṣelọpọ

Cloudflare Quick Eefin

  • Wa ninu** Dasibodu → Endpoints** fun Docker ati awọn imuṣiṣẹ ti ara ẹni miiran
  • Ṣẹda https://*.trycloudflare.com URL fun igba diẹ ti o siwaju si OpenAI-ibaramu /v1 lọwọlọwọ rẹ
  • Akọkọ jeki fifi cloudflared sori ẹrọ nikan nigbati o nilo; nigbamii tun bẹrẹ tun lo alakomeji iṣakoso kanna
  • Awọn Tunnels iyara kii ṣe atunṣe-laifọwọyi lẹhin OmniRoute tabi atunbere eiyan; tun mu wọn ṣiṣẹ lati dasibodu nigbati o nilo
  • Tunnel URLs jẹ ephemeral ati yi pada ni gbogbo igba ti o ba stop/start oju eefin naa
  • Aiyipada Awọn Tunnel Iyara ti iṣakoso si gbigbe HTTP/2 lati yago fun awọn ikilọ ifipamọ QUIC UDP alariwo ni awọn apoti ti o ni ihamọ
  • Ṣeto CLOUDFLARED_PROTOCOL=quic tabi auto ti o ba fẹ lati bori yiyan irinna ti iṣakoso
  • Ṣeto CLOUDFLARED_BIN ti o ba fẹran lilo alakomeji cloudflared ti a ti fi sii tẹlẹ dipo igbasilẹ iṣakoso
  • Cloudflare Eefin iyara, Tailscale Funnel, ati awọn panẹli eefin ngrok le ṣe afihan tabi farapamọ sinu** Eto → Irisi** . Ìbòmọ́lẹ̀ pánẹ́ẹ̀lì kan kò dá eefin tí ń ṣiṣẹ́ dúró.

Imọye Ẹnu-ọna LLM (Ipele 9)

  • Kaṣe atunmọ - Awọn caches aifọwọyi ti kii ṣe ṣiṣanwọle, awọn idahun = 0 otutu (fori pẹlu X-OmniRoute-No-Cache: true)
  • Beere Idempotency - Ṣe iyasọtọ awọn ibeere laarin 5s nipasẹ Idempotency-Key tabi akọsori X-Request-Id
  • Ilọsiwaju Àtòjọ - Jade-ni awọn iṣẹlẹ SSE event: progress nipasẹ akọsori X-OmniRoute-Progress: true

Ibi isereile onitumọ

Wiwọle nipasẹ** Dasibodu → Onitumọ** . Ṣatunkọ ati wo bi OmniRoute ṣe tumọ awọn ibeere API laarin awọn olupese.

Ipo Idi
Ibi isereile Yan awọn ọna kika source/target, lẹẹmọ ibeere kan, ki o wo iṣẹjade ti a tumọ lesekese
Oluyanju iwiregbe Firanṣẹ awọn ifiranṣẹ iwiregbe laaye nipasẹ aṣoju ki o ṣayẹwo ọmọ request/response ni kikun
Idanwo ibujoko Ṣiṣe awọn idanwo ipele kọja awọn akojọpọ ọna kika pupọ lati jẹrisi atunse itumọ
Live Monitor Wo awọn itumọ akoko gidi bi awọn ibeere ṣe nṣan nipasẹ aṣoju

Lo awọn igba:

  • Ṣatunkọ idi ti apapọ client/provider kan pato kuna
  • Daju pe awọn afi ero, awọn ipe irinṣẹ, ati awọn eto eto ni itumọ ti tọ
  • Ṣe afiwe awọn iyatọ ọna kika laarin OpenAI, Claude, Gemini, ati Awọn idahun awọn ọna kika API

Awọn ilana ipa ọna

Tunto nipasẹ** Dasibodu → Eto → afisona** . Dasibodu naa ṣafihan awọn ilana mẹfa ti a lo julọ; combos ati awọn olulana-laifọwọyi fipa atilẹyin kan anfani ṣeto.

Awọn ilana ti o han Dasibodu (iṣalaye ipele-iroyin):

Ilana Apejuwe
Kun First Nlo awọn akọọlẹ ni aṣẹ pataki - akọọlẹ akọkọ n ṣakoso gbogbo awọn ibeere titi ko si
Yika Robin Awọn iyipo nipasẹ gbogbo awọn akọọlẹ pẹlu opin alalepo atunto (aiyipada: awọn ipe 3 fun akọọlẹ kan)
P2C (Agbara ti Aṣayan Meji) Yan awọn akọọlẹ laileto 2 ati awọn ipa-ọna si ọkan ti o ni ilera - awọn iwọntunwọnsi fifuye pẹlu akiyesi ilera
Laileto Laileto yan iroyin kan fun ibeere kọọkan nipa lilo Fisher-Yates Daarapọmọra
Ti o kere julọ Lo Awọn ipa ọna si akọọlẹ pẹlu akọbi lastUsedAt timestamp, pinpin ijabọ boṣeyẹ
Iṣapeye idiyele Awọn ipa ọna si akọọlẹ pẹlu iye ayo to kere julọ, iṣapeye fun awọn olupese ti o kere julọ

To ti ni ilọsiwaju konbo ati auto ogbon (ṣe atunto fun konbo tabi nipasẹ awọn ami-iṣaaju auto/* — wo AUTO-COMBO.md ):

  • priority - ti o muna ibere, kò yika-robins
  • weighted - ijabọ ipin nipasẹ awọn iwuwo awoṣe kọọkan
  • fill-first - imugbẹ akọkọ awoṣe titi awọn ifilelẹ lọ lu
  • round-robin / strict-random / random
  • p2c (Agbara ti Aṣayan Meji)
  • least-used ati cost-optimized
  • auto - Dimegilio-ìṣó kọja gbogbo awọn oludije
  • lkgp (Olupese to dara ti a mọ kẹhin) - awọn pinni si olupese aṣeyọri ti o kẹhin, lẹhinna ṣubu pada si awọn ofin
  • context-optimized - mu awoṣe pẹlu ferese ọrọ-ọrọ ọfẹ ti o tobi julọ
  • context-relay - awọn ẹwọn awọn awoṣe ọrọ-gun-gun fun awọn titan-tẹle

Akọsori Ikoni Alalepo Ita

Fun ijora igba ita (fun apẹẹrẹ, awọn aṣoju Claude Code/Codex lẹhin awọn aṣoju yiyipada), firanṣẹ:

X-Session-Id: your-session-key

OmniRoute tun gba x_session_id o si da bọtini igba ti o munadoko pada ni X-OmniRoute-Session-Id.

Ti o ba lo Nginx ati firanṣẹ awọn akọle fọọmu abẹlẹ, mu ṣiṣẹ:

underscores_in_headers on;

Wildcard awoṣe Aliases

Ṣẹda awọn awoṣe kaadi igbẹ lati yi awọn orukọ awoṣe pada:

Pattern: claude-sonnet-*     →  Target: cc/claude-sonnet-4-6
Pattern: gpt-*               →  Target: gh/gpt-5.3-codex

Wildcards ṣe atilẹyin * (awọn ohun kikọ eyikeyi) ati ? (ohun kikọ kan).

Awọn ẹwọn Fallback

Ṣetumo awọn ẹwọn isubu agbaye ti o waye lori gbogbo awọn ibeere:

Chain: production-fallback
  1. cc/claude-opus-4-7
  2. gh/gpt-5.3-codex
  3. glm/glm-4.7

Awọn akojọpọ Olupese ti o wọpọ & Awọn Ilana ipa-ọna

Eyi ni awọn apẹẹrẹ apẹẹrẹ fun apapọ ọpọlọpọ awọn olupese ati ipa ọna laarin wọn ni OmniRoute:

1. Aṣoju Ifaminsi Konbo: Idiye ipari-giga pẹlu Cost/Speed Fallback

Apẹrẹ fun awọn aṣoju ifaminsi (OpenCode, koodu Claude, Cursor, Cline). Awọn ipa ọna ni ibẹrẹ si awọn awoṣe ero iwaju, ja bo pada si awọn awoṣe ifaminsi iyara lori irẹwẹsi ipin tabi awọn aṣiṣe.

  • Dasibodu Combos → Konbo Tuntun → Oruko: agent-coding → Strategy: Priority
  • Awọn awoṣe :
    1. claude/claude-sonnet-4-6 (Aṣoju ifaminsi akọkọ)
    2. openai/gpt-4o (ifasẹhin agbara giga giga)
    3. deepseek/deepseek-v4-flash (Ṣiṣe-giga, ipadabọ ti o munadoko)
# Example via API
curl -X POST http://localhost:20128/api/combos \
  -H "Authorization: Bearer $OMNIROUTE_MANAGE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "agent-coding",
    "strategy": "priority",
    "models": [
      { "model": "claude/claude-sonnet-4-6" },
      { "model": "openai/gpt-4o" },
      { "model": "deepseek/deepseek-v4-flash" }
    ]
  }'

2. Free-Tier Auto Failover Konbo

Awọn ẹwọn ọpọ-ọfẹ ati awọn olupese ti ko ni bọtini lati mu akoko iṣẹ pọ si laisi awọn idiyele API.

  • Ilana : Least Used tabi Round Robin (npin fifuye kọja awọn ipin)
  • Awọn awoṣe :
    1. groq/llama-3.3-70b-versatile
    2. gemini/gemini-2.5-flash
    3. cerebras/gpt-oss-120b
# Example via CLI
omniroute combo create free-stack \
  --models "groq/llama-3.3-70b-versatile,gemini/gemini-2.5-flash,cerebras/gpt-oss-120b" \
  --strategy round-robin

3. Multimodal / Vision & Pipeline Text

Sisopọ awọn awoṣe iran amọja pẹlu iran ọrọ iyara-giga fun ṣiṣan iṣẹ ti o kan oye aworan ati iran koodu.

  • Àpẹẹrẹ : Akopọ Priority kan ti o ṣe atokọ awọn awoṣe ti o lagbara iran ni akọkọ ati awoṣe text/code giga-giga ti o kẹhin.
  • Awọn awoṣe :
    1. gemini/gemini-2.5-pro (oye image/multimodal ti o lagbara)
    2. openai/gpt-4o (iran iwọntunwọnsi ati lilo irinṣẹ)
    3. deepseek/deepseek-v4-flash ( iran Text/code )

Resilience & Circuit Breakers

Tunto nipasẹ** Dasibodu → Eto → Resilience** .

OmniRoute ṣe imuse resilience ipele olupese pẹlu awọn paati marun:

  1. Bere isinyi & Pacing - Ṣiṣeto ipele eto eto:

    • Awọn ibeere fun Iṣẹju kan (RPM) - Awọn ibeere to pọju fun iṣẹju kan fun akọọlẹ kan
    • Min Time Laarin awọn ibeere - Aafo ti o kere julọ ni awọn iṣẹju-aaya laarin awọn ibeere
    • Max Awọn ibeere igbakanna - Awọn ibeere igbakana ti o pọju fun akọọlẹ kan
  2. Itutu Asopọmọra - Iṣeto ni iru-auth fun asopọ ẹyọkan lẹhin awọn ikuna atunyan:

    • Mimọ Cooldown - Ferese itutu agbaiye aiyipada fun awọn ikuna oke ti o ṣee tun gbiyanju
    • Lo Awọn Italolobo Tun gbiyanju ni oke - Bọla fun Retry-After aṣẹ tabi tun awọn amọran to nigba ti a pese
    • Max Backoff Igbesẹ - Ipele ẹhin ipari ti o pọju fun awọn ikuna ti o leralera
  3. Olupese Circuit Fifọ - Tọpinpin awọn ikuna olupese lati opin-si-opin, samisi olupese ti o bajẹ ni iloro ikilọ ti atunto, ati ṣi ẹrọ fifọ nigbati o ba de opin ikuna atunto:

    • Ibalẹ Ibalẹ - Awọn ikuna olupese itẹlera ṣaaju titẹ DEGRADED
    • Ipari Ikuna - Awọn ikuna olupese itẹlera ṣaaju titẹ OPEN
    • Tun Aago Iṣeto - Window akoko ṣaaju idanwo olupese lẹẹkansi
    • CLOSED (ni ilera) - Awọn ibeere ṣan ni deede
    • DEGRADED - Awọn ibeere ṣi nṣàn lakoko ti o ti tọpinpin awọn ikuna ti o ga
    • OPEN - Olupese ti ni idinamọ fun igba diẹ lẹhin awọn ikuna leralera
    • HALF_OPEN - Idanwo ti olupese ba ti gba pada

    Awọn opin oṣuwọn 429 ti asopọ-dopin duro ni** Itutu Asopọmọra** ati ki o ma ṣe ka si olupilẹṣẹ olupese.

    Ipo asiko isise fifọ olupese yoo han lori** Dasibodu → Health** nikan.

  4. Duro Fun Itutu - Ti gbogbo asopọ oludije ti n tutu tẹlẹ, OmniRoute le duro fun itutu agbaiye akọkọ ati tun gbiyanju ibeere alabara kanna ni adaṣe.

  5. Oṣuwọn Ifilelẹ Aifọwọyi-iwari - Nigbati awọn olupese oke ba pada awọn window iduro ti o fojuhan, awọn amọran wọnyẹn bori itutu asopọ agbegbe nigbati eto naa ba ṣiṣẹ.

Imọran Pro: Lo awọn** Ilera** oju-iwe lati ṣayẹwo ati tunto awọn fifọ olupese laaye lẹhin ijade kan. Oju-iwe Resilience nikan yi iṣeto ni pada.


Si ilẹ okeere / gbe wọle aaye data

Ṣakoso awọn afẹyinti database ni** Dasibodu → Eto → Eto & Ibi ipamọ** .

Iṣe Apejuwe
Gbejade aaye data Ṣe igbasilẹ aaye data SQLite lọwọlọwọ bi faili .sqlite kan
Jade Gbogbo (.tar.gz) Ṣe igbasilẹ iwe ipamọ afẹyinti ni kikun pẹlu: aaye data, awọn eto, awọn akojọpọ, awọn asopọ olupese (ko si awọn iwe-ẹri), metadata bọtini API
Gbe aaye data wọle Ṣe igbasilẹ faili .sqlite kan lati rọpo aaye data lọwọlọwọ. Atilẹyin agbewọle-ṣaaju ti ṣẹda laifọwọyi ayafi ti DISABLE_SQLITE_AUTO_BACKUP=true
# API: Export database
curl -o backup.sqlite http://localhost:20128/api/db-backups/export

# API: Export all (full archive)
curl -o backup.tar.gz http://localhost:20128/api/db-backups/exportAll

# API: Import database
curl -X POST http://localhost:20128/api/db-backups/import \
  -F "file=@backup.sqlite"

Ifọwọsi agbewọle: Faili ti a ko wọle jẹ ifọwọsi fun iduroṣinṣin (ṣayẹwo SQLite pragma), awọn tabili ti a beere (provider_connections, provider_nodes, combos, api_keys), ati iwọn (max 100MB).

Lo Awọn ọran:

  • Gbe OmniRoute laarin awọn ẹrọ
  • Ṣẹda awọn afẹyinti ita fun imularada ajalu
  • Pin awọn atunto laarin awọn ọmọ ẹgbẹ ẹgbẹ (jade gbogbo ibi ipamọ → si ilẹ okeere)

Dasibodu Eto

Oju-iwe eto ti ṣeto sinu** 7 awọn taabu** fun irọrun lilọ kiri:

Taabu Awọn akoonu
Gbogboogbo Awọn irinṣẹ ibi ipamọ eto, ihuwasi aiyipada, hihan oju eefin Endpoint
Ifarahan Awọn idari akori (light/dark/system), hihan ẹgbẹ ẹgbẹ, awọn iyipada nronu fun awọn kaadi eefin Cloudflare/Tailscale/ngrok
AI Isuna ero (passthrough / auto-strip / custom / adaptive — wo THINKING_BUDGET.md ), eto eto agbaye, awọn iṣiro kaṣe kiakia
Aabo awọn eto Login/Password, Iṣakoso Wiwọle IP, API auth fun /models, Idilọwọ Olupese, oluso abẹrẹ kiakia
Ipa ọna Ilana ipa-ọna agbaye (Fikun akọkọ / Yika Robin / P2C / ID / Lilo ti o kere ju / Iṣapeye idiyele), inagijẹ awoṣe kaadi, awọn ẹwọn isubu, awọn abawọn konbo
Resilience Beere isinyi, itutu asopọ asopọ, atunto fifọ olupese, ati ihuwasi idaduro-duro
To ti ni ilọsiwaju Iṣeto-aṣoju agbaye (HTTP/SOCKS5), aṣoju aṣoju-olupese dojukọ

Gbogboogbo ko ṣe ẹda-iwe kika-nikan ati awọn akọsilẹ kaṣe mọ. Idaduro aaye data ati awọn eto iṣapeye ti wa ni idaduro nipasẹ /api/settings/database; imukuro kaṣe afọwọṣe nlo DELETE /api/cache. Ibeere ati awọn bọtini awọn ila iwe aṣoju jẹ iṣakoso nipasẹ CALL_LOGS_TABLE_MAX_ROWS ati PROXY_LOGS_TABLE_MAX_ROWS.


Awọn idiyele & Isakoso isuna

Wiwọle nipasẹ** Dasibodu → Awọn idiyele** .

Taabu Idi
Isuna Ṣeto awọn opin inawo fun bọtini API pẹlu awọn eto isuna daily/weekly/monthly ati ipasẹ akoko gidi
Ifowoleri Wo ati ṣatunkọ awọn titẹ sii idiyele awoṣe - idiyele fun awọn ami ami input/output 1K fun olupese
# API: Set a budget
curl -X POST http://localhost:20128/api/usage/budget \
  -H "Content-Type: application/json" \
  -d '{"keyId": "key-123", "limit": 50.00, "period": "monthly"}'

# API: Get current budget status
curl http://localhost:20128/api/usage/budget

Titele iye owo: Gbogbo ibeere ṣe igbasilẹ lilo ami ami ati ṣe iṣiro idiyele nipa lilo tabili idiyele. Wo breakdowns ni** Dasibodu → Lilo** nipasẹ olupese, awoṣe, ati bọtini API.


Igbasilẹ ohun

OmniRoute ṣe atilẹyin iwe-igbasilẹ ohun nipasẹ aaye ipari ibaramu OpenAI:

POST /v1/audio/transcriptions
Authorization: Bearer your-api-key
Content-Type: multipart/form-data

# Example with curl
curl -X POST http://localhost:20128/v1/audio/transcriptions \
  -H "Authorization: Bearer your-api-key" \
  -F "file=@audio.mp3" \
  -F "model=openai/whisper-1"

deepgram/nova-3 jẹ ọna Deepgram abinibi ati pe o nilo bọtini Deepgram API kan. Ti o ba tunto OpenRouter nikan, lo openrouter/deepgram/nova-3.

Ọrọ-si-ọrọ (igbasilẹ) awọn olupese:

  • openai/ (ibaramu whisper)
  • groq/ (Groq Whisper Turbo)
  • deepgram/ ( idile Nova)
  • assemblyai/
  • nvidia/ (Parakeet, Canary)
  • huggingface/ (awọn iyatọ whisper)
  • qwen/

Ọrọ-si-Ọrọ (POST /v1/audio/speech) awọn olupese:

  • openai/ (tts-1, tts-1-hd)
  • hyperbolic/
  • deepgram/ (Aura)
  • nvidia/ (Magpie TTS)
  • elevenlabs/
  • huggingface/
  • inworld/
  • cartesia/
  • playht/
  • kie/
  • aws-polly/
  • xiaomi-mimo/
  • coqui/, tortoise/
  • qwen/

Awọn ọna kika ohun ti o ni atilẹyin fun kikọ silẹ: mp3, wav, m4a, flac, ogg, webm. awọn ọna kika TTS da lori olupese (mp3, wav, opus, PCm, mulaw).


Konbo Iwontunwonsi ogbon

Ṣe atunto iwọntunwọnsi fun konbo ni** Dasibodu → Combos → Create/Edit → Strategy** .

Ilana Apejuwe
Yika-Robin Yiyi nipasẹ awọn awoṣe lẹsẹsẹ
Ni ayo Nigbagbogbo gbiyanju akọkọ awoṣe; ṣubu pada nikan lori aṣiṣe
Laileto Yiyan awoṣe laileto lati konbo fun ibeere kọọkan
Ti iwuwo Awọn ipa-ọna ni iwọn ti o da lori awọn iwuwo ti a sọtọ fun awoṣe
Ti o kere julọ-Lo Awọn ipa ọna si awoṣe pẹlu awọn ibeere aipẹ diẹ (nlo awọn metiriki konbo)
Iṣapeye idiyele Awọn ọna si awoṣe ti o wa lawin (nlo tabili idiyele)

Awọn aipe konbo agbaye le ṣeto sinu** Dasibodu → Eto → afisona → Konbo aiyipada** . Awọn akoko ibi-afẹde Konbo jogun akoko akoko ibeere lọwọlọwọ nipasẹ aiyipada. Lo** Akoko ibi-afẹde (awọn iṣẹju-aaya)** lori awọn aseku konbo tabi konbo kọọkan nikan nigbati opin ibi-afẹde kukuru kan yẹ ki o fa ipadabọ yiyara.

Awọn iṣapeye konbo airi-idairi ti wa ni ijade. Fi silẹ** Awọn iṣapeye aipe-odo** alaabo lati ṣe idiwọ awọn ẹya airi wọnyi lati awọn ibi-afẹde ipadasẹhin ere-ije, fo awọn ibi-afẹde ti o da lori itan-akọọlẹ TTFT, tabi titẹkuro awọn ibeere isubu; muu jẹ ki o ngbanilaaye hedging tunto, awọn fo TTFT asọtẹlẹ, ati funmorawon fallback ti n ṣiṣẹ lati ṣowo iṣotitọ routing/request fun airi iru kekere.

Pa a** Idaduro àmi Idi** nigbati awọn olupese oke nilo awọn opin max_tokens / maxOutputTokens ti o muna. Nigbati o ba ṣiṣẹ, ipa-ọna konbo nikan ṣe afikun ero-awoṣe headroom fun awọn awoṣe pẹlu fila iṣelọpọ ti a mọ ati fi opin ami ami alabara silẹ ko yipada nigbati iye ifipamọ ailewu yoo kọja fila yẹn. Ti opin alabara ba ti wa loke fila ti a mọ, OmniRoute dimole si fila yẹn ṣaaju fifiranṣẹ ibeere oke.


Dasibodu ilera

Wiwọle nipasẹ** Dasibodu → Health** . Akopọ ilera eto akoko gidi pẹlu awọn kaadi 6:

Kaadi Ohun Ti O Fihan
Ipo System Akoko ipari, ẹya, lilo iranti, ilana data
Ilera Olupese Olupese agbaye onipin-ajo akoko asiko isise
Awọn idiwọn Oṣuwọn Awọn itutu asopọ asopọ ti nṣiṣe lọwọ fun akọọlẹ pẹlu akoko to ku
Awọn titiipa ti nṣiṣe lọwọ Awọn titiipa awoṣe-dopin ti nṣiṣe lọwọ ati awọn imukuro igba diẹ
Kaṣe Ibuwọlu Awọn iṣiro kaṣe idinkukuro (awọn bọtini ti nṣiṣe lọwọ, oṣuwọn lilu)
Lairi Telemetry akopọ lairi p50/p95/p99 fun olupese

Imọran Pro: Oju-iwe Ilera n ṣe atunṣe laifọwọyi ni gbogbo iṣẹju mẹwa 10. Lo kaadi fifọ Circuit lati ṣe idanimọ iru awọn olupese ti n ni iriri awọn ọran.


🤖 Ìdarí Aládàáṣiṣẹ́ (Àìní-àtúnṣe)

OmniRoute ní olùdarí aládàáṣiṣẹ́ tí ìṣírò-ààmì ń darí, èyí tí ń yan model tó dára jù fún ìbéèrè kọ̀ọ̀kan láàárín gbogbo provider tí a ti sopọ̀ — kò sí combo kankan láti máa bójú tó. Kàn fi ìbéèrè náà ránṣẹ́ pẹ̀lú ọ̀kan lára àwọn prefix auto/*, OmniRoute yóò sì ṣẹ̀dá combo àfojúrí lẹ́sẹ̀kẹsẹ̀, nípa fífún àwọn olùdíje ní ààmì lórí latency, iye owó, ìwọ̀n àṣeyọrí, bí context ṣe bá a mu, bí model ṣe yẹ fún iṣẹ́ náà, àwọn ìkùnà àìpẹ́, quota, àti ipò circuit-breaker.

Prefix Ohun tí ó ń mú dára sí i
auto Ìwọ̀ntúnwọ̀nsì àiyípadà (latency × iye owó × ìwọ̀n àṣeyọrí)
auto/coding Àwọn iṣẹ́ coding: ó fẹ́ràn Claude, GPT-5, GLM, Kimi, Qwen Coder, àwọn coder DeepSeek
auto/cheap $/token tó kéré jù, ó gba latency tó ga sí i
auto/fast Latency tó kéré jù, kò ka iye owó sí
auto/offline Àwọn provider abẹ́lé nìkan (Ollama, vLLM, llama.cpp) — ó wúlò fún àwọn ètò air-gapped
auto/smart Didára ìrònú ló ṣe pàtàkì jù (Opus, GPT-5 xhigh, R1, ìrònú GLM 5.1)
auto/lkgp "Provider Rere Tí A Mọ̀ Kẹ́yìn" — ó dì mọ́ provider tó ṣàṣeyọrí kẹ́yìn, lẹ́yìn náà ó padà sí àwọn òfin

Àpẹẹrẹ:

curl -X POST http://localhost:20128/v1/chat/completions \
  -H "Authorization: Bearer $OMNIROUTE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "auto/coding",
    "messages": [{ "role": "user", "content": "Refactor this Python function" }],
    "stream": true
  }'

A ṣàlàyé olùdarí aládàáṣiṣẹ́ náà ní kíkún nínú AUTO-COMBO.md — pẹ̀lú bí a ṣe lè ṣàtúnṣe àwọn ìwọ̀n fífún-ààmì, fi àwọn provider sínú àtòjọ-dúdú, àti ṣàyẹ̀wò àwọn ìpinnu ìdarí nínú Dashboard → Auto Combo.


🔌 Ìṣọ̀kan MCP & A2A

OmniRoute jẹ́ server MCP (Model Context Protocol) àti server A2A (Agent-to-Agent JSON-RPC 2.0). IDE tàbí ibi ìgbàlejò agent èyíkéyìí tó bá MCP mu lè pe àwọn irinṣẹ́ OmniRoute ní tààrà — kò nílò wrapper àfikún.

Àwọn ọ̀nà ìgbékalẹ̀ MCP

  • SSE: http://localhost:20128/api/mcp/sse
  • HTTP tí a lè ṣàn: http://localhost:20128/api/mcp/stream
  • stdio: omniroute --mcp (fún àwọn plugin IDE tí ó fẹ́ràn stdio)

So Claude Desktop pọ̀

Ṣàtúnṣe ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) tàbí èyí tó bá a dọ́gba lórí Windows/Linux:

{
  "mcpServers": {
    "omniroute": {
      "command": "omniroute",
      "args": ["--mcp"]
    }
  }
}

So Cursor / Continue / VS Code MCP pọ̀

Lo URL SSE http://localhost:20128/api/mcp/sse àti kọ́kọ́rọ́ API Bearer tí a ṣẹ̀dá nínú Dashboard → API Keys.

Àwọn ààlà-àṣẹ

MCP ń ṣàlàyé àwọn ààlà-àṣẹ 32 tí a dárúkọ lọ́wọ́lọ́wọ́. A lè fi kọ́kọ́rọ́ Bearer kọ̀ọ̀kan mọ́ àwọn ààlà-àṣẹ pàtó — wo MCP-SERVER.md fún àkójọ àṣẹ àti irinṣẹ́ tó jẹ́ ìtọ́kasí pàtàkì, àti A2A-SERVER.md fún schema JSON-RPC.


🧠 Ètò Àwọn Ọgbọ́n

OmniRoute ń pèsè ìlànà ọgbọ́n tí a lè mú gbòòrò sí i (src/lib/skills/) kí àwọn aṣojú àti endpoint A2A lè ṣiṣẹ́ àwọn ìlànà tó jẹ́ ti ẹ̀ka pàtó (fún àpẹẹrẹ code-review, summarize, extract-facts, web-research).

  • Ìrísí Marketplace — Ṣàwárí kí o sì fi àwọn ọgbọ́n sílẹ̀ láti Dashboard → Skills
  • Àwọn scope fún kọ́kọ́rọ́ kọ̀ọ̀kan — Dín àwọn ọgbọ́n tí kọ́kọ́rọ́ API kọ̀ọ̀kan lè pè lò kù
  • Àwọn ọgbọ́n àdáni — Fi fáìlì TypeScript kan sínú src/lib/a2a/skills/, forúkọ rẹ̀ sílẹ̀, yóò sì lè jẹ́ pípè lẹ́sẹ̀kẹsẹ̀ lórí A2A

Ìtọ́kasí kíkún: SKILLS.md.


💾 Ètò Ìrántí

OmniRoute ń tọ́jú ìrántí ìjíròrò fún ìgbà pípẹ́ pẹ̀lú ìṣàwárí àdàpọ̀:

  • SQLite FTS5 fún wíwá ọ̀rọ̀ pàtàkì láàárín àwọn ìjíròrò àtijọ́
  • Ibi ìtọ́jú vector Qdrant (àṣàyàn) fún ìrántí ìtumọ̀
  • Yíyọ òtítọ́ jáde láìfọwọ́ṣe — a máa ń ṣe àkótán àwọn entity, ohun tí a fẹ́ràn, àti àwọn ìpinnu lẹ́yìn session kọ̀ọ̀kan, a ó sì tọ́jú wọn sínú tábìlì memory_facts
  • A máa ń pín àwọn ìrántí ní ìbámu pẹ̀lú kọ́kọ́rọ́ API kọ̀ọ̀kan àti session kọ̀ọ̀kan

Ṣàkóso àwọn ìrántí ní Dashboard → Memory (wá, ṣàtúnṣe, gbé jáde, pa rẹ́ ráúráú). Ojú-ọ̀nà HTTP (/api/memory/*) ń jẹ́ kí àwọn aṣojú fi àwọn òtítọ́ ránṣẹ́ kí wọ́n sì béèrè wọn nípasẹ̀ ètò — wo MEMORY.md.


🔔 Webhooks

Forúkọ sílẹ̀ fún àwọn ìṣẹ̀lẹ̀ OmniRoute láti ṣe àbójútó àti ìmúṣẹ aládàáṣiṣẹ́ ní àkókò gidi.

  • Ṣẹ̀dá webhook kan ní Dashboard → Webhooks pẹ̀lú URL ibi-afẹ́ àti àṣírí ìfọwọ́sí HMAC
  • Àwọn ìṣẹ̀lẹ̀ tó wà: request.completed, request.failed, provider.unavailable, budget.exceeded, combo.switched, circuit_breaker.opened, circuit_breaker.closed
  • Payload kọ̀ọ̀kan ní X-OmniRoute-Signature (HMAC-SHA256) fún ìjẹ́rìísí
  • Àwọn àtúngbìyànjú: ìgbìyànjú mẹ́ta pẹ̀lú ìdádúró tó ń pọ̀ sí i lọ́nà exponential, lẹ́yìn náà a ó fi sí dead-letter queue

Schema kíkún wà ní WEBHOOKS.md.


☁️ Àwọn Aṣojú Cloud

OmniRoute ń ṣiṣẹ́ pọ̀ mọ́ àwọn aṣojú ìkọ̀wé kóòdù lórí cloud (OpenAI Codex Cloud, Devin, Jules, Antigravity) kí o lè rán àwọn iṣẹ́ tó máa gba àkókò gígùn láti dashboard kan náà tó ń ṣàkóso routing abẹ́lé rẹ.

  • Ṣẹ̀dá àwọn iṣẹ́ ní Dashboard → Cloud Agents tàbí nípasẹ̀ POST /api/v1/agents/tasks
  • Tọpinpin ipò, àwọn log, àti àwọn artifact fún iṣẹ́ kọ̀ọ̀kan
  • Mú kọ́kọ́rọ́ API tìrẹ fún provider kọ̀ọ̀kan — àwọn credential kì í fi instance OmniRoute sílẹ̀ láéláé

Ìtọ́kasí kíkún: CLOUD_AGENT.md.


🛠️ Ìṣàkóso Nípasẹ̀ Ètò

O lè ṣàkóso gbogbo resource OmniRoute (àwọn provider, combo, kọ́kọ́rọ́, àti ètò) lórí HTTP nípa lílo kọ́kọ́rọ́ Bearer tó ní scope manage.

Ṣẹ̀dá kọ́kọ́rọ́ náà ní Dashboard → API Keys → New Key → Scope: manage, lẹ́yìn náà:

# Ṣàtòjọ àwọn provider
curl http://localhost:20128/api/providers \
  -H "Authorization: Bearer $OMNIROUTE_MANAGE_KEY"

# Ṣàfikún ìsopọ̀ provider kan
curl -X POST http://localhost:20128/api/providers \
  -H "Authorization: Bearer $OMNIROUTE_MANAGE_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "provider": "openai", "apiKey": "sk-...", "name": "main" }'

# Ṣẹ̀dá combo kan
curl -X POST http://localhost:20128/api/combos \
  -H "Authorization: Bearer $OMNIROUTE_MANAGE_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "name": "premium", "strategy": "priority", "models": [{ "model": "cc/claude-opus-4-7" }, { "model": "glm/glm-5.1" }] }'

# Ṣàtòjọ/ṣẹ̀dá àwọn kọ́kọ́rọ́ API
curl http://localhost:20128/api/keys -H "Authorization: Bearer $OMNIROUTE_MANAGE_KEY"
curl -X POST http://localhost:20128/api/keys -H "Authorization: Bearer $OMNIROUTE_MANAGE_KEY" \
  -d '{ "name": "ci-bot", "scopes": ["chat"] }'

Wo API_REFERENCE.md fún àkójọ endpoint kíkún àti àwọn schema request/response.


💻 CLI Abẹ́nú

OmniRoute ní CLI abẹ́nú (omniroute …) fún ìṣètò, àyẹ̀wò ìṣòro, àti ìṣàkóso nígbà ìṣiṣẹ́. Èyí yàtọ̀ sí ojú-ìwé "Àwọn Irinṣẹ́ CLI" nínú dashboard, èyí tí ń ṣètò àwọn CLI láti ọ̀dọ̀ ẹlòmíràn (Claude Code, Cursor, Codex, Cline, …) kí wọ́n lè bá OmniRoute sọ̀rọ̀.

omniroute setup                    # Olùrànlọ́wọ́ ìbánisọ̀rọ̀ (ọ̀rọ̀ aṣínà, àwọn olùpèsè, àwọn àkójọpọ̀)
omniroute setup --non-interactive  # Ó bá CI mu
omniroute doctor                   # Àyẹ̀wò ìlera (àpò data, DB, àwọn olùpèsè, àwọn port)
omniroute providers available      # Ṣàkójọ àwọn olùpèsè tí a ṣe àtìlẹ́yìn fún
omniroute providers list           # Ṣàkójọ àwọn ìsopọ̀ tí a ti ṣètò
omniroute providers test <id>      # Ṣe àyẹ̀wò ìsopọ̀ olùpèsè ní tààrà
omniroute combos list              # Ṣàkójọ àwọn àkójọpọ̀
omniroute combos switch <name>     # Ṣètò àkójọpọ̀ àiyipada
omniroute models                   # Ṣàkójọ àwọn model tó wà (--json, --search)
omniroute keys add | list | remove # Ṣàkóso àwọn kọ́kọ́rọ́ API láti terminal
omniroute backup                   # Ya àwòrán ìpamọ́ ìṣètò + DB
omniroute restore [<timestamp>]    # Mú padà láti inú àwòrán ìpamọ́
omniroute health                   # Ìlera ní ẹ̀kúnrẹ́rẹ́ (breakers, cache, memory)
omniroute quota                    # Lílo ìwọ̀n olùpèsè
omniroute mcp status               # Ipò server MCP
omniroute a2a status               # Ipò server A2A
omniroute tunnel list|create|stop  # Àwọn tunnel Cloudflare/Tailscale/ngrok
omniroute reset-password           # Tún ọ̀rọ̀ aṣínà alákóso ṣètò
omniroute --mcp                    # Bẹ̀rẹ̀ server MCP lórí stdio
omniroute --port 3000              # Bẹ̀rẹ̀ server lórí port àkànṣe

Ìmọ̀ràn: so omniroute doctor --json pọ̀ mọ́ irinṣẹ́ àbójútó rẹ láti fi ìkìlọ̀ ránṣẹ́ nípa àwọn ìsopọ̀ olùpèsè tí kò ní ìlera.


🖥️ Ìṣàfilọ́lẹ̀ Orí Kọ̀ǹpútà (Electron)

OmniRoute wà gẹ́gẹ́ bí ìṣàfilọ́lẹ̀ abinibi orí kọ̀ǹpútà fún Windows, macOS, àti Linux.

Fífìdí Rẹ̀ Múlẹ̀

# Láti inú àkójọpọ̀ electron:
cd electron
npm install

# Ipo ìdàgbàsókè (sopọ̀ mọ́ server ìdàgbàsókè Next.js tó ń ṣiṣẹ́):
npm run dev

# Ipo iṣẹ́-gidi (ń lo build standalone):
npm start

Ṣíṣe Àwọn Installer

cd electron
npm run build          # Platform tó ń lò lọ́wọ́lọ́wọ́
npm run build:win      # Windows (.exe NSIS)
npm run build:mac      # macOS (.dmg universal)
npm run build:linux    # Linux (.AppImage)

Àbájáde → electron/dist-electron/

Àwọn Ẹ̀ya Pàtàkì

Ẹ̀ya Àpèjúwe
Ìmúrasílẹ̀ Server Ó ń yẹ server wò kí ó tó fi window hàn (kò sí ojú òfo)
System Tray Dín kù sínú tray, yí port padà, jáde láti inú àkójọ tray
Ìṣàkóso Port Yí port server padà láti tray (server á tún bẹ̀rẹ̀ fúnra rẹ̀)
Ìlànà Ààbò Àkóónú CSP tó le nípasẹ̀ àwọn header session
Instance Kan Ṣoṣo Instance ìṣàfilọ́lẹ̀ kan ṣoṣo ló lè ṣiṣẹ́ lẹ́ẹ̀kan
Ipo Àìsí Ìkànnì Server Next.js tí a kó sínú rẹ̀ ń ṣiṣẹ́ láìsí internet

Àwọn Àyípadà Àyíká

Àyípadà Àiyipada Àpèjúwe
OMNIROUTE_PORT 20128 Port server
OMNIROUTE_MEMORY_MB 512 Òpin heap Node.js (64–16384 MB)

📖 Ìwé ìtọ́nisọ́nà ní ẹ̀kúnrẹ́rẹ́: electron/README.md