Generic OpenAI کے ذریعے AnythingLLM کو کسی بھی model پر چلائیں۔
Updated 2026-07-29
AnythingLLM کا Generic OpenAI provider پوری app کو کسی بھی OpenAI-compatible endpoint سے جوڑتا ہے: Base URL https://api.apisrouter.com/v1، ایک key، ایک chat model id، اور ایماندار token limits۔ Claude، GPT، Gemini، اور DeepSeek ids سب qualify کرتی ہیں، documents، agents، اور chat سب کے لیے یکساں۔
فوری جواب: LLM Preference میں پانچ fields۔
AnythingLLM کی settings کھولیں، AI Providers کے تحت LLM section میں جائیں (وہ screen جسے تاریخی طور پر LLM Preference کہا جاتا تھا)، اور provider list میں Generic OpenAI تلاش کریں۔ اسے select کرنے سے پانچ fields ظاہر ہوتے ہیں: Base URL، API Key، Chat Model Name، Token Context Window، اور Max Tokens۔ انہیں یوں بھریں: Base URL https://api.apisrouter.com/v1 (/v1 اسی field میں آتا ہے)، آپ کی key، اور Chat Model Name میں کیٹلاگ کی بالکل exact id، مثال کے طور پر claude-sonnet-4-6۔ پھر دو numbers: Token Context Window model کی کل window ہے اور Max Tokens ایک response کو محدود کرتا ہے، تو دونوں model کی documentation سے لیں نہ کہ اندازے سے۔ Save کریں، اور جو بھی workspace system default follow کرتا ہے اب gateway کے ذریعے chat کرتا ہے۔ docs اس provider کو developer-focused کے طور پر flag کرتے ہیں بالکل اسی وجہ سے کیونکہ یہ آپ کے inputs پر بھروسہ کرتا ہے؛ یہ اسے استعمال کرنے کے خلاف warning نہیں، بس یہ بیان ہے کہ پانچوں fields ایک contract ہیں۔
Base URL: https://api.apisrouter.com/v1
API Key: sk-YOUR-APISROUTER-KEY
Chat Model Name: claude-sonnet-4-6
Token Context Window: 200000
Max Tokens: 8192Generic OpenAI provider اصل میں کیا drive کرتا ہے۔
AnythingLLM (GitHub پر Mintplex Labs، تقریباً 63K stars) all-in-one private document assistant ہے: workspaces جو آپ کی files embed کرتی ہیں، retrieved context پر مبنی chat، tool use والے agents، ایک desktop app اور self-hosted server دونوں کے طور پر دستیاب۔ اوپر configure کی گئی LLM preference اس سب کا default brain ہے۔ Requests آپ کے Base URL کے خلاف standard chat completions کے طور پر نکلتی ہیں، Chat Model Name model string کے طور پر، تو vendor کوئی فرق نہیں رکھتا: ایک Claude id اتنی ہی valid ہے جتنی کوئی GPT، اور switch کرنے کا مطلب ایک field edit کرنا ہے۔ Workspaces اپنی provider اور model settings سے system default کو بھی override کر سکتی ہیں، یہی وجہ ہے کہ ایک deployment legal workspace کے لیے claude-sonnet-4-6 اور engineering کے لیے gpt-5.5 چلا سکتی ہے، ایک دوسرے کی خبر رکھے بغیر۔ دو token fields عزت کے قابل ہیں کیونکہ AnythingLLM انہیں context budget کرنے کے لیے استعمال کرتا ہے۔ context window value فیصلہ کرتی ہے کہ ہر request میں کتنا retrieved document text اور chat history پیک ہو؛ اسے کم بتائیں اور آپ کے احتیاط سے embed کیے documents اپنے ہی جوابوں سے trim ہو جاتے ہیں، زیادہ بتائیں اور requests model کی حقیقی limit سے ٹکراتی ہیں۔ generic endpoints پر زیادہ تر "RAG feels dumb" رپورٹس کے پیچھے یہی field pair ہے۔
Embeddings ایک الگ فیصلہ ہیں۔
AnythingLLM LLM preference کو embedding preference سے الگ کرتا ہے، اور یہ تقسیم load-bearing ہے۔ chat model سوالات کا جواب دیتا ہے؛ embedder آپ کے documents کو upload کے وقت vectors میں بدلتا ہے، اور وہ vectors برقرار رہتے ہیں۔ Chat models بدلنا مفت ہے، کسی بھی دن، فی workspace۔ Embedders بدلنا پہلے سے embedded ہر چیز کی geometry کو invalidate کرتا ہے اور آپ کے documents کو دوبارہ embed کرنے کا مطلب رکھتا ہے۔ عملی سیٹ اپ: AnythingLLM ایک built-in local embedder ساتھ لاتا ہے جو offline کام کرتا ہے اور کچھ خرچ نہیں کرتا، اور بہت سی deployments اسے ہی رکھتی ہیں۔ اگر آپ embedding preference کو کسی remote endpoint پر point کریں، تو اپنا document base upload کرنے سے پہلے تصدیق کریں کہ وہاں specific embedding id serve ہوتی ہے، اور اس انتخاب کو vector store کے ساتھ شادی شدہ سمجھیں۔ Chat side پر جو آزادی یہ خریدتی ہے وہی architecture کا نکتہ ہے: embeddings settled ہونے کے بعد، Generic OpenAI chat model ایک کم-داؤ والا dial ہے۔ heavy summarization کے ایک مہینے کے لیے deepseek-v4-pro چلائیں، client work کے ایک quarter کے لیے field کو claude-sonnet-4-6 پر switch کریں، اور آپ کے documents کے بارے میں کچھ بھی move کرنے کی ضرورت نہیں۔
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50
# Chat Model Name must match one of these ids exactlyDocument work کے لیے models چننا۔
ہر id ایک ہی key کے ذریعے بل ہوتی ہے، تو comparison loop ایک settings edit ہے: ایک ہی workspace، ایک ہی documents، ہر candidate پر دو ہفتے، اور APIsRouter console میں per-model spend آپ کے جوابوں پر اپنے judgment کے ساتھ۔
- retrieved chunks پر grounded QA input-heavy ہے: claude-haiku-4-5-20251001 اور gemini-3.5-flash citation-following سوالات کا جواب volume قیمتوں پر اچھی طرح دیتے ہیں۔
- claude-sonnet-4-6 اس default کا حق دار ہے جہاں جواب بغیر edit کے انسانوں تک جاتے ہیں: contract review، report drafting، ہر وہ چیز جس کے نتائج ہوں۔
- deepseek-v4-pro بڑے documents پر بنی workspaces کے لیے long-context workhorse ہے، جہاں window اور input pricing تجربے پر حاوی ہوتی ہیں۔
- Agent workspaces کو بھروسہ مند tool calling چاہیے؛ agents کو claude-sonnet-4-6 پر شروع کریں، پھر ٹیسٹ کریں کہ کیا ایک ہلکی id آپ کے اصل flows پر ٹکتی ہے۔
- per-workspace overrides کو policy کے طور پر استعمال کریں: default تیز رہے، اور مہنگی id صرف انہی workspaces میں رہے جن کا کام اسے جواز فراہم کرے۔
استعمال کے مطابق ادائیگی · سرکاری قیمت سے کم
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| ماڈل | سرکاری قیمت | ہماری قیمت |
|---|---|---|
| Claude Sonnet 4.6 | $3.00 / $15.00 per M | $2.40 / $12.00 per M |
| Claude Haiku 4.5 20251001 | $1.00 / $5.00 per M | $0.80 / $4.00 per M |
| GPT-5.5 | $5.00 / $30.00 per M | $4.00 / $24.00 per M |
| Gemini 3.5 Flash | $1.50 / $9.00 per M | $1.20 / $7.20 per M |
| DeepSeek V4 Pro | $0.43 / $0.87 per M | $0.40 / $0.90 per M |
AnythingLLM سے مخصوص failure modes۔
Token fields ہی نازک failures کی وجہ بنتے ہیں۔ بہت کم set کی گئی context window خاموشی سے retrieved context کو truncate کر دیتی ہے، جو ایسے presents ہوتا ہے جیسے model آپ کے documents کو نظر انداز کر رہا ہو؛ Chat Model Name کی id کے لیے documented window set کریں۔ model کے لیے بہت زیادہ set کیا گیا Max Tokens لمبے جوابوں پر hard errors دیتا ہے؛ اسے وہی set کریں جو model output کے لیے حقیقتاً اجازت دیتا ہے۔ Hard errors زیادہ ایماندار ہیں۔ Authentication failures کا مطلب API Key field ہے۔ Model-not-found کا مطلب Chat Model Name کیٹلاگ کی spelling سے ہٹ رہا ہے؛ field free text ہے اور /v1/models listing ہی source of truth ہے۔ Desktop app پر connection errors عموماً app اور endpoint کے درمیان کسی proxy یا firewall کا مطلب رکھتی ہیں؛ Docker deployments پر، یاد رکھیں یہ container ہے جسے Base URL تک پہنچنا ہے، آپ کے browser کو نہیں۔ اگر chat کام کرے مگر کوئی workspace توقع سے مختلف رویہ دکھائے، تو اس کی override settings چیک کریں؛ workspace-level provider settings system default پر حاوی ہوتی ہیں، اور بھولا ہوا override وہی classic "same question, different model" mystery ہے۔ docs کا developer-focused framing اوپر کی سب باتوں کا خلاصہ ہے: provider بالکل وہی کرتا ہے جو اس کے پانچ fields کہتے ہیں، نہ کم نہ زیادہ۔
AnythingLLM کو gateway کے ذریعے کون route کرتا ہے۔
- وہ teams جو private document assistants چلاتی ہیں اور ہر model family کے لیے vendor account رکھے بغیر frontier جواب کی quality چاہتی ہیں۔
- Desktop users جو اپنا personal document base Claude یا GPT ids پر prepaid balance سے چلاتے ہیں، شروع کرنے کے لیے کارڈ درکار نہیں۔
- وہ self-hosters جو built-in local embedder رکھتے ہیں اور remote chat کو واحد metered lane سمجھتے ہیں، ایک usage log پر ہر model پڑھتے ہوئے۔
- Workspace کے حساب سے segmented deployments، جہاں per-workspace overrides اور per-key metering ہر team کو اپنا model اور اپنا bill دیتی ہیں۔
- وہ builders جو ایک fixed document base پر answer models compare کرتے ہیں، جہاں ہر candidate migration نہیں بلکہ ایک settings edit ہے۔
Endpoint verify کریں اور پہلی workspace chat debug کریں۔
پہلے وہ exact id استعمال کر کے جو آپ Chat Model Name میں ڈالنے کا ارادہ رکھتے ہیں، models listing اور ایک chat completion curl کریں۔ دونوں کے pass ہونے سے، gateway کا آدھا حصہ ثابت ہو جاتا ہے اور باقی ہر symptom پانچوں fields میں رہتا ہے۔ پھر provider settings save کریں اور ایسی workspace میں ایک سوال پوچھیں جس کا document آپ اچھی طرح جانتے ہوں۔ ایک grounded، citing جواب کا مطلب پوری pipeline کام کر رہی ہے۔ جو جواب document نظر انداز کرے وہ context window value یا workspace کی اپنی retrieval settings کی طرف اشارہ کرتا ہے۔ Hard errors صاف map ہوتے ہیں: key، id کی spelling، Base URL shape۔ جب chats چلنے لگیں، APIsRouter console per-request model، token counts، اور spend دکھاتا ہے۔ Document QA retrieval کے ذریعے input tokens کو ضرب دیتا ہے، اور usage log یہی ہے جہاں آپ سیکھتے ہیں کہ آپ کے document base کو query کرنا واقعی کیا لاگت رکھتا ہے، فی model، فی دن، اور اگر آپ split کریں تو فی workspace key بھی۔
curl -s https://api.apisrouter.com/v1/chat/completions \
-H "Authorization: Bearer $APISROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"claude-sonnet-4-6",
"messages":[{"role":"user","content":"ping"}]}'عمومی سوالات
میں AnythingLLM میں custom Base URL کیسے سیٹ کروں؟
AI Providers کے تحت settings میں، LLM preference screen کھولیں اور provider list سے Generic OpenAI چنیں۔ Base URL کو https://api.apisrouter.com/v1 پر سیٹ کریں، اپنی key شامل کریں، Chat Model Name میں کیٹلاگ کی exact id ڈالیں، اور دونوں token fields model کی documentation سے بھریں۔
Token Context Window اور Max Tokens کیا کنٹرول کرتے ہیں؟
context window AnythingLLM کو بتاتی ہے کہ وہ فی request کتنا retrieved text اور history پیک کر سکتا ہے؛ Max Tokens ایک response کو محدود کرتا ہے۔ window کو کم بتانا آپ کے documents کو جوابوں سے trim کر دیتا ہے، اور دونوں میں سے کسی کو زیادہ بتانا ایسی requests پیدا کرتا ہے جنہیں model رد کر دیتا ہے۔
کیا AnythingLLM Generic OpenAI کے ذریعے Claude یا DeepSeek چلا سکتا ہے؟
جی ہاں۔ provider Chat Model Name کو standard chat completions پر Base URL کی طرف plain string کے طور پر بھیجتا ہے، تو claude-sonnet-4-6، deepseek-v4-pro، gemini-3.5-flash، اور GPT ids سب چلتی ہیں، ایک field یا فی workspace edit کر کے switchable۔
کیا chat model بدلنا میرے embedded documents کو متاثر کرتا ہے؟
نہیں۔ Chat اور embedding preferences الگ ہیں؛ vectors برقرار رہتے ہیں اور chat models آزادی سے swap ہوتے ہیں۔ صرف embedder بدلنا موجودہ vectors کو invalidate کرتا ہے اور دوبارہ embed کرنے پر مجبور کرتا ہے، یہی وجہ ہے کہ بہت سی deployments built-in local embedder رکھتی ہیں اور صرف chat side ٹیون کرتی ہیں۔
docs page Generic OpenAI کو developer-focused کیوں کہتا ہے؟
کیونکہ یہ per-vendor presets بھیجنے کی بجائے آپ کے inputs پر بھروسہ کرتا ہے: غلط ids، URLs، یا token values form سے پکڑے جانے کی بجائے runtime پر فیل ہوتے ہیں۔ /v1/models سے کاپی کی گئی ids اور model documentation سے limits کے ساتھ، یہ ایک مستحکم، first-class راستہ ہے۔
کیا مختلف workspaces مختلف models استعمال کر سکتی ہیں؟
جی ہاں۔ Workspaces system default inherit کرتی ہیں مگر اپنی chat settings میں provider اور model کو override کر سکتی ہیں، تو ایک deployment default میں ایک تیز id چلا سکتی ہے اور صرف انہی workspaces میں claude-sonnet-4-6 pin کر سکتی ہے جن کا کام اسے کمائے۔