منصوبے کے بارے میں
# Weave Router
**ایک اینڈ پوائنٹ۔ ہر ماڈل۔ ہمیشہ صحیح۔**
Weave Router ایک ڈراپ ان پراکسی ہے جو Anthropic، OpenAI اور Gemini کے لیے خود بخود ہر درخواست کے لیے بہترین ماڈل منتخب کرتا ہے۔ یہ وائبس پر مبنی پرامپٹ استعمال کرنے کے بجائے، [Avengers-Pro](https://arxiv.org/abs/2508.12631) ریسرچ پیپر سے ماخوذ ایک چھوٹے آن باکس ایمبیڈر اور کلسٹر اسکورر کا استعمال کرتا ہے تاکہ ہر درخواست کو آپ کے فعال کردہ فراہم کنندگان میں سے صحیح ماڈل تک روٹ کیا جا سکے۔
## اہم خصوصیات
- **فی ایکشن روٹنگ** — ایک کلسٹر اسکورر ہر اپ اسٹریم API درخواست کے لیے صحیح ماڈل منتخب کرتا ہے، فی ٹرن کے بجائے فی ایکشن روٹنگ کرتا ہے۔
- **سب کی API بولتا ہے** — Anthropic Messages، OpenAI Chat Completions اور Gemini مقامی APIs کو سپورٹ کرتا ہے، بشمول اسٹریمنگ، ٹولز اور ویژن۔
- **OSS کو بھی جانتا ہے** — DeepSeek، Kimi، GLM، Qwen، Llama اور Mistral کو OpenRouter یا کسی بھی OpenAI سے مطابقت رکھنے والے اینڈ پوائنٹ کے ذریعے سپورٹ کرتا ہے۔
- **ڈیفالٹ BYOK** — فراہم کنندہ کی چابیاں آپ کے باکس پر رہتی ہیں، آرام میں انکرپٹڈ۔
- **قابل مشاہدہ** — OTLP ٹریسز باکس سے باہر، Weave ڈیش بورڈ یا کسی بھی OTLP سے مطابقت رکھنے والے کلیکٹر جیسے Honeycomb، Datadog یا Grafana میں دیکھے جا سکتے ہیں۔
## فوری آغاز
شروع کرنے کا تیز ترین طریقہ ہوسٹڈ Weave Router ہے:
```bash
npx @weave-os/router
```
انسٹالر پوچھتا ہے کہ کون سا ٹول (Claude Code، Codex، opencode یا pi)، دائرہ کار (صارف بمقابلہ پروجیکٹ) بتاتا ہے، ایک روٹر کلید لیتا ہے اور صحیح کنفیگ فائل وائر کرتا ہے۔ دیگر ورژن میں شامل ہیں:
```bash
npx @weave-os/router --claude # پکر کو چھوڑیں، Claude Code
npx @weave-os/router --codex # پکر کو چھوڑیں، OpenAI Codex CLI
npx @weave-os/router --opencode # پکر کو چھوڑیں، opencode
npx @weave-os/router --pi # پکر کو چھوڑیں، pi + Loom UI
npx @weave-os/router --scope project # فی ریپو، settings.json میں تبدیلی کرتا ہے
npx @weave-os/router --local # سیلف ہوسٹڈ localhost:8080
npx @weave-os/router --base-url https://router.acme.internal
npx @weave-os/router@0.1.0 # ایک ورژن پن کریں
```
Node ≥ 18 کی ضرورت ہے۔ مکمل فلیگ ریفرنس [install/npm/README.md](install/npm/README.md) میں ہے۔
## سیلف ہوسٹنگ
اپنے باکس پر روٹر اور ڈیش بورڈ چلانے کے لیے:
```bash
# 1. فراہم کنندہ کی کلید ڈالیں۔ OpenRouter تجویز کردہ بنیاد ہے۔
echo "OPENROUTER_API_KEY=sk-or-v1-..." >> .env.local
# 2. ڈیش بورڈ کا پاس ورڈ سیٹ کریں۔
echo "ROUTER_ADMIN_PASSWORD=replace-with-a-strong-password" >> .env.local
# 3. Postgres + روٹر کو :8080 پر بوٹ کریں اور rk_ کلید سیڈ کریں۔
make full-setup
```
روٹر http://localhost:8080 پر، ڈیش بورڈ http://localhost:8080/ui/ پر دستیاب ہے، اور آپ کی `rk_...` کلید لاگز میں پرنٹ ہوتی ہے۔
### مثال API کالز
```bash
# اسے Anthropic کی طرح کال کریں
curl -sS http://localhost:8080/v1/messages \
-H "Authorization: Bearer rk_..." \
-d '{"model":"claude-sonnet-4-5","max_tokens":256,
"messages":[{"role":"user","content":"hi"}]}'
# ...یا OpenAI کی طرح
curl -sS http://localhost:8080/v1/chat/completions \
-H "Authorization: Bearer rk_..." \
-d '{"model":"gpt-4o-mini",
"messages":[{"role":"user","content":"hi"}]}'
# پراکسی کیے بغیر روٹنگ کے فیصلے کو دیکھیں
curl -sS http://localhost:8080/v1/route -H "Authorization: Bearer rk_..." -d '...'
```
## آرکیٹیکچر
صرف سرمئی باکسز آپ کی مشین سے باہر ہیں۔ روٹر، اسکورر، Postgres اور آپ کی فراہم کنندہ کی چابیاں سب مقامی رہتی ہیں؛ پرامپٹس روٹر سے براہ راست آپ کے کنفیگر کردہ فراہم کنندہ کے پاس جاتے ہیں، کبھی Weave کے پاس نہیں۔
```mermaid
flowchart LR
client["Claude Code, Codex, opencode,<br/>pi, Cursor, آپ کی اپنی ایپ"]
router["روٹر :8080<br/>/v1/messages · /v1/chat/completions<br/>/v1beta/models · /v1/route"]
scorer["کلسٹر اسکورر<br/>ان پروسیس ONNX ایمبیڈر"]
hmm["HMM پالیسی سائڈ کار :8093<br/>اختیاری، make up-hmm"]
pg[("Postgres<br/>انسٹالیشنز، rk_ کلیدیں،<br/>انکرپٹڈ BYOK کلیدیں، استعمال")]
ui["ڈیش بورڈ /ui<br/>صرف سیلف ہوسٹڈ موڈ"]
providers["Anthropic · OpenAI · Gemini<br/>OpenRouter اور کوئی بھی<br/>OpenAI سے مطابقت رکھنے والا اینڈ پوائنٹ"]
otel["آپ کا OTLP کلیکٹر<br/>Honeycomb, Datadog, Grafana"]
client -->|"rk_… بیئرر ٹوکن،<br/>اسٹریمڈ جواب واپس"| router
router -->|"ایکشن کو ایمبیڈ اور اسکور کریں"| scorer
router -.->|"ROUTER_DEFAULT_STRATEGY=hmm"| hmm
router -->|"تصدیق، کنفیگ، استعمال"| pg
pg --> ui
router -->|"ماحول یا BYOK سے فراہم کنندہ کی کلید"| providers
router -.->|"اسپینز اور استعمال کے لاگز"| otel
```
ملٹی ریپلیکا ڈیپلائمنٹس کو کیش انویلیڈیشن کے لیے Pub/Sub (`PUBSUB_*`) کی بھی ضرورت ہوتی ہے؛ `docker compose` آپ کے لیے ایمولیٹر چلاتا ہے۔
## اختیاری: HMM پالیسی سائڈ کار
ڈیفالٹ اسٹیک ان پروسیس کلسٹر اسکورر استعمال کرتا ہے۔ منجمد HMM پالیسی کو ایک ساتھی کنٹینر کے طور پر چلانے کے لیے، Google API کلید شامل کریں اور آپٹ ان ٹارگٹ استعمال کریں:
```bash
echo 'GOOGLE_API_KEY=...' >> .env.local
make up-hmm
```
اس سے ڈیفالٹ حکمت عملی تبدیل نہیں ہوتی۔ آرٹیفیکٹ کی تصدیق، ایمبیڈنگ مطابقت اور واضح HMM انتخاب کے لیے [sidecars/hmm/README.md](sidecars/hmm/README.md) دیکھیں۔
## ٹول انٹیگریشن
**Claude Code.** مقامی سیلف ہوسٹڈ روٹر پر Claude Code کو وائر کرنے کے لیے `make install-cc` چلائیں (یہ `make full-setup` کے اختتام پر خود بخود بھی چلتا ہے)۔ ہوسٹڈ روٹر کے لیے، اوپر `npx @weave-os/router` استعمال کریں۔
**Codex** (OpenAI CLI)۔ `npx @weave-os/router --codex` ایک منظم `[model_providers.weave]` بلاک کے ساتھ `~/.codex/config.toml` (یا `--scope project` کے ساتھ `<repo>/.codex/config.toml`) کو پیچ کرتا ہے اور `model_provider = "weave"` سیٹ کرتا ہے۔ فراہم کنندہ Codex کے موجودہ ChatGPT OAuth لاگ ان کو محفوظ رکھتا ہے جبکہ روٹر کلید `X-Weave-Router-Key` HTTP ہیڈر میں سفر کرتی ہے۔
## لائسنس
Elastic License v2 (ELv2) کے تحت لائسنس یافتہ۔
---
*[Weave](https://www.workweave.ai) کے ذریعے بنایا گیا: #1 انجینئرنگ انٹیلیجنس پلیٹ فارم، جسے Robinhood، PostHog، Reducto اور سینکڑوں دیگر پسند کرتے ہیں۔*
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.