کیا Claude کو self-host کیا جا سکتا ہے؟ مکمل حقیقت
Anthropic کے ماڈل weights عوامی نہیں ہیں لہذا Claude کو مقامی سرور پر چلانا ناممکن ہے۔ اس گائیڈ میں جانیں کہ آپ متبادل اوپن ماڈلز، API گیٹ وے اور Claude Code کیسے استعمال کر سکتے ہیں۔
کیا آپ Claude کو self-host کر سکتے ہیں؟ نہیں، اور اس کی وجہ یہ ہے
آپ Claude کو self-host نہیں کر سکتے۔ Anthropic ماڈل کے weights جاری نہیں کرتا، اس لیے نہ تو کوئی فائل ڈاؤن لوڈ کے لیے دستیاب ہے، نہ ہی کوئی container ہے جسے چلایا جا سکے، اور نہ ہی کوئی ایسا لائسنس موجود ہے جو آپ کو اسے اپنے ہارڈویئر سے چلانے کی اجازت دے۔ Claude کی ہر درخواست Anthropic کی API یا کسی hosted پارٹنر جیسے کہ Amazon Bedrock، Google Vertex AI، یا Microsoft Foundry پر جاتی ہے۔ اسے اپنی مشین پر چلانا کوئی configuration کا مسئلہ نہیں ہے۔ یہ آرٹفیکٹ Anthropic کے باہر موجود ہی نہیں ہے۔
یہ مختصر جواب ہے۔ تفصیلی جواب یہ ہے کہ جو لوگ یہ سوال پوچھتے ہیں، ان میں سے اکثر کو درحقیقت weights کی ضرورت نہیں ہوتی۔ وہ ان تین چیزوں میں سے کوئی ایک چاہتے ہیں جو آپ کے کنٹرول والے سرور پر حاصل کی جا سکتی ہیں: ایک قابل ماڈل جو مقامی طور پر چل رہا ہو، ایک گیٹ وے جو ان کی API keys کو محفوظ رکھے اور اخراجات کو محدود کرے، یا ایک کوڈنگ ایجنٹ جو ان کے لیپ ٹاپ کے بجائے ان کے اپنے سرور پر موجود ہو۔ یہ گائیڈ ان تینوں کا احاطہ کرتی ہے، اور اس میں متعلقہ کمانڈز بھی شامل ہیں۔
"Self-hosted Claude" کا عام مطلب کیا ہے
"Self-hosted Claude" کے لیے سرچ ٹریفک چند مختلف خواہشات میں تقسیم ہوتی ہے، اور ان کے لیے مختلف جوابات درکار ہوتے ہیں۔
کچھ لوگ پرائیویسی چاہتے ہیں۔ وہ نہیں چاہتے کہ ان کے پرامپٹس ان کے نیٹ ورک سے باہر جائیں۔ صرف ایک مقامی open weight ماڈل ہی اس کا حل ہے، کیونکہ Claude کی کوئی بھی درخواست اصولی طور پر Anthropic کو بھیجی گئی درخواست ہوتی ہے۔
کچھ لوگ اخراجات پر کنٹرول چاہتے ہیں۔ انہیں خدشہ ہوتا ہے کہ کوئی بے قابو ایجنٹ ان کے کریڈٹس ختم کر دے گا۔ ایک گیٹ وے اس کا حل ہے، اور یہ Claude کے ساتھ کام کرتا ہے، لہذا آپ ماڈل کے معیار کو برقرار رکھ سکتے ہیں۔
کچھ لوگ لیپ ٹاپ سے آزادی چاہتے ہیں۔ وہ ایسا ایجنٹ چاہتے ہیں جو لیپ ٹاپ بند کرنے کے بعد بھی کام کرتا رہے۔ ایک VPS اس کا حل ہے، اور Claude Code اس پر بخوبی چلتا ہے۔
کچھ لوگ "self-hosted OpenRouter" کی اصطلاح تلاش کرتے ہیں۔ یہ بھی ایک گیٹ وے ہے، اور اس کا عام جواب LiteLLM ہے۔
یہ طے کریں کہ آپ کی ضرورت کیا ہے، کیونکہ ہر صورت میں درست تعمیر (build) مختلف ہوتی ہے۔
Ollama کے ساتھ ایک اوپن ماڈل کو self-host کریں
اگر ضرورت یہ ہے کہ آپ کا کوئی بھی پرامپٹ آپ کے سرور سے باہر نہ جائے، تو ایک اوپن ویٹ ماڈل چلائیں۔ آج کرائے کے سرور پر جو ماڈل فیملیز واقعی قابل استعمال ہیں ان میں Llama، Qwen، Mistral، Gemma اور DeepSeek شامل ہیں۔ یہ سب اپنے ویٹس شائع کرتے ہیں جنہیں آپ ڈاؤن لوڈ کر کے چلا سکتے ہیں۔
Ollama اس کام کا تیز ترین طریقہ ہے۔ اس کی انسٹالیشن اسکرپٹ ایک لائن پر مشتمل ہے، اور یہ Ubuntu پر ایک systemd سروس سیٹ اپ کر دیتی ہے۔
curl -fsSL https://ollama.com/install.sh | sh
systemctl status ollamasystemctl status ollama کو active (running) پرنٹ کرنا چاہیے۔ اس کے بعد ایک ماڈل pull کریں اور اس سے بات کریں۔
ollama pull qwen3:8b
ollama run qwen3:8b "Summarise what a reverse proxy does in two sentences."پہلا pull کئی گیگا بائٹس ڈاؤن لوڈ کرتا ہے، لہذا کسی بھی جواب سے پہلے ماڈل کا RAM یا GPU میموری میں فٹ ہونا ضروری ہے۔ کوانٹائزڈ ماڈلز کے لیے ایک عمومی اصول یہ ہے: 8 بلین پیرامیٹر والے ماڈل کو تقریباً 6 GB خالی جگہ درکار ہوتی ہے، 14 بلین پیرامیٹر والے ماڈل کو تقریباً 10 GB، اور 70 بلین پیرامیٹر والے ماڈل کو اس سے کہیں زیادہ میموری درکار ہوتی ہے جتنی عام VPS پلانز میں ہوتی ہے۔ اگر سرور میں میموری کم ہو تو kernel اس پروسیس کو ختم کر دیتا ہے اور آپ کو Error: llama runner process has terminated نظر آتا ہے، جس کے ساتھ dmesg میں out of memory کی لائن ہوتی ہے۔ ماڈل کو قصوروار ٹھہرانے سے پہلے free -h چیک کریں۔ یہی میموری بجٹ یہ بھی طے کرتا ہے کہ ماڈل ایک طویل پرامپٹ کا کتنا حصہ پڑھتا ہے، کیونکہ Ollama خاموشی سے ایک معمولی ڈیفالٹ ونڈو کے بعد کے حصے کو truncate کر دیتا ہے، لہذا num_ctx کو بڑھانا اور KV cache کا سائز سیٹ کرنا وہ پہلی چیز ہے جسے چیک کرنا چاہیے جب طویل دستاویزات کا آدھا خلاصہ واپس ملے۔
Ollama 127.0.0.1:11434 پر ایک HTTP API بھی فراہم کرتا ہے، جو اسے صرف ایک چیٹ ٹوائے کے بجائے دیگر سافٹ ویئر کے لیے مفید بناتا ہے۔
curl http://127.0.0.1:11434/api/generate -d '{"model":"qwen3:8b","prompt":"ping","stream":false}'اگر خاموشی کے وقفے کے بعد پہلی درخواست تیس سیکنڈ لیتی ہے جبکہ اگلی فوری طور پر واپس آ جاتی ہے، تو کچھ بھی خراب نہیں ہے: Ollama پانچ منٹ کے آئیڈل ٹائم کے بعد ماڈل کو ان لوڈ کر دیتا ہے، اور keep_alive کے ساتھ اسے resident رکھنا اس ری لوڈ کے تعطل کو ختم کر دیتا ہے۔
اس پورٹ کو localhost تک محدود رکھیں۔ پبلک IP پر کھلا Ollama پورٹ اسے تلاش کرنے والے ہر شخص کے لیے ایک مفت GPU ہے۔ مکمل بلڈ، بشمول systemd یونٹ، GPU ڈیٹیکشن، اور سامنے ایک reverse proxy لگانا، VPS پر Ollama چلانے کی گائیڈ میں کور کیا گیا ہے۔ اگر آپ ایک وقت میں ایک سے زیادہ صارفین کو سروس دے رہے ہیں، تو پہلے Ollama اور vLLM کا موازنہ پڑھیں، کیونکہ Ollama کا سنگل اسٹریم ڈیزائن ہارڈویئر سے پہلے ہی رکاوٹ (bottleneck) بن جاتا ہے۔
فرق کے بارے میں ایماندار رہیں۔ ایک درمیانے درجے کے VPS پر ایک اچھا اوپن ماڈل خلاصہ سازی، درجہ بندی، مسودہ سازی، اور سادہ ڈیٹا نکالنے کے لیے واقعی مفید ہے۔ طویل کثیر الجہتی استدلال، بڑے کوڈ بیسز، اور ایجنٹک ٹول کے استعمال پر یہ کسی فرنٹیر ہوسٹڈ ماڈل کے قریب نہیں ہے، اور پرامپٹ ٹیوننگ سے یہ فرق ختم نہیں ہوتا۔ مقامی ماڈل کا انتخاب ان کاموں کے لیے کریں جن میں وہ اچھا ہے، اور جہاں مشکل حقیقی ہو وہاں ہوسٹڈ ماڈل کے لیے ادائیگی کریں۔
LiteLLM کے ساتھ اپنا گیٹ وے چلائیں
یہ وہی "self-hosted OpenRouter" ہے جس کی لوگ تلاش میں رہتے ہیں۔ ایک گیٹ وے آپ کی ایپلی کیشنز اور ہر ماڈل فراہم کنندہ کے درمیان موجود ہوتا ہے۔ آپ کی ایپس کے پاس صرف ایک کی (key) ہوتی ہے، جو آپ کے سرور کی طرف اشارہ کرتی ہے۔ اصل فراہم کنندہ کی کیز صرف اسی سرور پر رہتی ہیں۔ آپ فی کی خرچ کی حد مقرر کر سکتے ہیں، مختلف ایپس کو مختلف ماڈلز پر روٹ کر سکتے ہیں، اور ہر درخواست کو ایک ہی جگہ لاگ کر سکتے ہیں۔
LiteLLM ایک عام انتخاب ہے کیونکہ یہ OpenAI کے ساتھ مطابقت رکھنے والی API پر بات کرتا ہے اور Anthropic، Ollama، اور زیادہ تر دیگر فراہم کنندگان کے لیے اسی اینڈ پوائنٹ کے پیچھے پراکسی کا کام کرتا ہے۔ اسے ایک کنفیگریشن فائل کے ساتھ Docker میں چلائیں۔
model_list:
- model_name: claude
litellm_params:
model: anthropic/claude-sonnet-5
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: local
litellm_params:
model: ollama/qwen3:8b
api_base: http://127.0.0.1:11434اسے litellm_config.yaml کے طور پر محفوظ کریں اور پراکسی شروع کریں۔ یہ پورٹ 4000 پر لسن (listen) کرتی ہے۔
docker run -v $(pwd)/litellm_config.yaml:/app/config.yaml \
-e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY \
-e LITELLM_MASTER_KEY=sk-1234 \
-p 4000:4000 docker.litellm.ai/berriai/litellm:latest \
--config /app/config.yamlLITELLM_MASTER_KEY ایڈمن اسناد ہیں، لہذا اس کے ساتھ root پاس ورڈ جیسا سلوک کریں اور مثال میں دی گئی ویلیو کو ہرگز استعمال نہ کریں۔ پراکسی کو بالکل اسی طرح کال کریں جیسے آپ کسی ہوسٹڈ API کو کال کرتے ہیں۔
curl http://localhost:4000/v1/chat/completions \
-H 'Authorization: Bearer sk-1234' \
-H 'Content-Type: application/json' \
-d '{"model": "claude","messages": [{"role": "user","content": "Say hello in five words."}]}'ایک درست رسپانس choices ایرے کے ساتھ نارمل JSON ہوتا ہے۔ 401 کا مطلب ہے کہ Authorization ہیڈر آپ کی ماسٹر کی سے میل نہیں کھاتا۔ 400 میں ماڈل کا نام آنے کا مطلب ہے کہ آپ کی درخواست میں موجود model کنفیگریشن فائل میں موجود کسی بھی model_name سے میل نہیں کھاتا۔
Anthropic کو براہ راست کال کرنے کے بجائے اسے بنانے کی وجہ خرچ کی حد (spend cap) ہے۔ ہر ایپلی کیشن کے لیے ایک الگ ورچوئل کی جاری کریں، جس کا اپنا بجٹ ہو۔
curl 'http://0.0.0.0:4000/key/generate' \
--header 'Authorization: Bearer sk-1234' \
--header 'Content-Type: application/json' \
--data-raw '{"models": ["claude"], "max_budget": 100}'وہ کی ایک سو ڈالر خرچ کر سکتی ہے اور صرف ایک ماڈل تک رسائی حاصل کر سکتی ہے، اس کے علاوہ کچھ نہیں۔ جب کوئی ایجنٹ رات کے تین بجے غلط رویہ اختیار کرے، تو نقصان کا دائرہ کار آپ کے پورے اکاؤنٹ کے بجائے صرف ایک کی تک محدود رہتا ہے۔ یہ پیٹرن، اور اس کے گرد مانیٹرنگ، VPS پر ایجنٹ کے اخراجات کو کنٹرول میں رکھنے کے موضوع کا حصہ ہے۔ اگر آپ ابھی بھی یہ فیصلہ کر رہے ہیں کہ آیا فی ٹوکن ادائیگی کرنی ہے یا نہیں، تو API بمقابلہ سبسکرپشن لاگت کا موازنہ حساب کتاب میں آپ کی مدد کرے گا۔
نوٹ کریں کہ گیٹ وے کیا نہیں کرتا۔ یہ Claude کو لوکل نہیں بناتا، اور یہ آپ کے پرامپٹس کو Anthropic سے نہیں چھپاتا۔ درخواستیں اب بھی فراہم کنندہ تک پہنچنے کے لیے آپ کے سرور سے باہر جاتی ہیں۔ جو آپ حاصل کرتے ہیں وہ کیز، اخراجات، روٹنگ، اور لاگز پر کنٹرول ہے۔
اپنے VPS پر Claude Code چلائیں
تیسری خواہش پوری کرنا سب سے آسان ہے۔ Claude Code ایک کلائنٹ ہے۔ یہ وہاں چلتا ہے جہاں آپ Node.js انسٹال کرتے ہیں، اور یہ HTTPS کے ذریعے API سے بات کرتا ہے۔ اسے اپنے سرور پر رکھنے کا مطلب یہ ہے کہ آپ کے لیپ ٹاپ بند کرنے کے بعد بھی ایجنٹ کام کرتا رہتا ہے، اور اس کا مطلب یہ ہے کہ ایجنٹ کا دائرہ اثر (blast radius) ایک ایسا باکس ہے جسے آپ اپنی مرکزی مشین کے بجائے دوبارہ بنا سکتے ہیں۔
npm install -g @anthropic-ai/claude-code
claude --versionاسے tmux کے اندر چلائیں تاکہ SSH کنکشن منقطع ہونے سے کوئی طویل کام ختم نہ ہو۔ یہ سیٹ اپ، بشمول سیشن ہینڈلنگ، VPS پر tmux کے ساتھ Claude Code چلانے کے طریقہ کار میں شامل ہے۔ ایجنٹ کو اپنا غیر مراعات یافتہ (unprivileged) صارف دیں، اور کسی بھی ایسی چیز تک رسائی دینے سے پہلے جس کی آپ پرواہ کرتے ہیں، سرور پر Claude Code چلانے کے حفاظتی اصول پڑھ لیں۔
یہ ایجنٹ کی سیلف ہوسٹنگ ہے، ماڈل کی۔ اس بارے میں درست ہونا ضروری ہے، کیونکہ یہ وہ حصہ ہے جسے لوگ خلط ملط کر دیتے ہیں۔ آپ پروسیس، فائل سسٹم، نیٹ ورک ایگریس (egress)، اور لاگز کے مالک ہیں۔ Anthropic اب بھی انفرنس (inference) کا مالک ہے۔
ہر آپشن کی اصل قیمت
قیمتیں تبدیل ہوتی رہتی ہیں، لہذا انہیں حتمی قیمت کے بجائے ایک تخمینہ سمجھیں۔ جولائی 2026 تک، Claude Sonnet 5 کی قیمت 3 ڈالر فی ملین ان پٹ ٹوکنز اور 15 ڈالر فی ملین آؤٹ پٹ ٹوکنز ہے، جبکہ Claude Opus 5 کی قیمت بالترتیب 5 اور 25 ڈالر ہے۔ ایک لوکل ماڈل کے لیے فی ٹوکن کوئی قیمت نہیں ہوتی، بلکہ اس کی قیمت وہی ہوتی ہے جو سرور کا ماہانہ خرچ ہے، جو آپ کے استعمال کرنے یا نہ کرنے کے باوجود جاری رہتا ہے۔
بریک ایون پوائنٹ (break even point) لوگوں کی توقع سے کم ہوتا ہے۔ ایک ایسا VPS جس میں ایک مفید اوپن ماڈل چلانے کے لیے کافی میموری ہو، ہر ماہ حقیقی رقم خرچ کرواتا ہے، اور یہ زیادہ تر وقت بیکار رہتا ہے۔ اگر آپ کا استعمال وقفے وقفے سے ہوتا ہے، تو ہوسٹڈ API عام طور پر سستا پڑتا ہے۔ اگر آپ کا استعمال مستقل ہے، یا اگر آپ کا ڈیٹا آپ کے نیٹ ورک سے باہر نہیں جا سکتا، تو لوکل ماڈل دونوں لحاظ سے بہتر ہے۔
ایماندارانہ اور ملا جلا جواب وہی ہے جس پر زیادہ تر ٹیمیں متفق ہوتی ہیں۔ زیادہ حجم اور کم مشکل کاموں کے لیے مقامی طور پر ایک اوپن ماڈل چلائیں۔ مشکل درخواستوں کو ہوسٹڈ فرنٹیئر ماڈل کی طرف بھیجیں۔ دونوں کے آگے ایک گیٹ وے لگائیں تاکہ ایپلی کیشنز کو یہ جاننے کی ضرورت نہ پڑے کہ کون سا ماڈل استعمال ہو رہا ہے، اور تاکہ آپ ایپلی کیشن کوڈ کو چھوئے بغیر ان کے درمیان حد کو تبدیل کر سکیں۔ یہ آرکیٹیکچر "self hosted Claude" کا عملی ورژن ہے، اور لفظی ورژن کے برعکس، یہ حقیقت میں موجود ہے۔ اگر آپ پورے ایجنٹ اسٹیک کو بھی خود چلانا چاہتے ہیں، تو the roundup of self-hosted AI agents میں دستیاب آپشنز کا احاطہ کیا گیا ہے۔
FAQ
کیا میں Claude کے ماڈل ویٹس ڈاؤن لوڈ کر کے انہیں مقامی طور پر چلا سکتا ہوں؟
نہیں۔ Anthropic نے کبھی بھی کسی Claude ماڈل کے ویٹس جاری نہیں کیے ہیں، اور ایسا کوئی لائسنس موجود نہیں ہے جو سیلف ہوسٹنگ کی اجازت دیتا ہو۔ آن لائن جو کچھ بھی ڈاؤن لوڈ کے قابل "Claude ماڈل" کے طور پر اشتہار دیا جاتا ہے، وہ یا تو گمراہ کن نام والا کوئی دوسرا ماڈل ہے یا پھر ایک ایسا ریپر (wrapper) ہے جو API کو کال کرتا ہے۔ اگر اسے API key کی ضرورت ہے، تو یہ مقامی (local) نہیں ہے۔
Claude کے قریب ترین اوپن ماڈل کون سا ہے؟
اس کا کوئی درست متبادل نہیں ہے، اور لیڈرز ہر چند ماہ بعد تبدیل ہوتے رہتے ہیں۔ اوپن ویٹ فیملیز جنہیں ٹیسٹ کرنا فائدہ مند ہے ان میں Llama، Qwen، Mistral، Gemma اور DeepSeek شامل ہیں۔ خلاصہ نویسی، درجہ بندی، اور سادہ کوڈ ایڈیٹنگ کے لیے 8 سے 14 ارب پیرامیٹرز والا ایک اچھا اوپن ماڈل واقعی مفید ہے۔ طویل کثیر مرحلہ استدلال (multi-step reasoning) اور ایجنٹک ٹول کے استعمال میں ہوسٹڈ فرنٹیئر ماڈل اور اوپن ماڈل کے درمیان فرق اب بھی کافی زیادہ ہے۔ لیڈر بورڈ پر بھروسہ کرنے کے بجائے اپنے پرامپٹس پر ٹیسٹ کریں۔
کیا LiteLLM ایک سیلف ہوسٹڈ OpenRouter ہے؟
فعال طور پر ہاں، روٹنگ اور کی مینجمنٹ کے حصے کے لیے۔ LiteLLM آپ کے سرور پر چلتا ہے، ایک OpenAI کے ساتھ مطابقت رکھنے والا endpoint پیش کرتا ہے، اور Anthropic، Ollama اور دیگر زیادہ تر فراہم کنندگان تک پراکسی کرتا ہے۔ آپ کو فی کی (per-key) اخراجات کی حد، ماڈل روٹنگ، اور لاگز پڑھنے کے لیے ایک مرکزی جگہ ملتی ہے۔ یہ آپ کو مقامی انفرنس (local inference) فراہم نہیں کرتا: Claude کے لیے درخواستیں اب بھی Anthropic تک جاتی ہیں۔
کیا اپنے سرور پر Claude Code چلانے سے میرا کوڈ نجی رہتا ہے؟
نہیں۔ Claude Code جن فائلوں کو پڑھتا ہے ان کا مواد Anthropic API کو بھیج دیتا ہے، چاہے یہ عمل کہیں بھی چل رہا ہو۔ VPS آپ کو ایجنٹ کی تنہائی (isolation) فراہم کرتا ہے، مواد کی پرائیویسی نہیں۔ اسے ایک مخصوص غیر مراعات یافتہ (unprivileged) صارف دیں، اسے اسناد (credentials) اور غیر متعلقہ ریپوزٹریز سے دور رکھیں، اور ہر اس چیز کو جسے وہ پڑھ سکتا ہے ایسا مواد سمجھیں جو سرور سے باہر جاتا ہے۔