هل يمكنك استضافة Claude ذاتيًا؟ الإجابة الصادقة
لا تنشر Anthropic أوزان Claude، لذلك لا يمكنك تشغيله على خادمك. تعرّف على البدائل القابلة للاستضافة: نماذج مفتوحة، بوابة API وClaude Code.
هل يمكنك استضافة Claude ذاتياً؟ لا، وهذا هو السبب
لا يمكنك استضافة Claude ذاتياً. لا تنشر Anthropic أوزان النموذج، لذلك لا يوجد ملف لتنزيله، ولا حاوية لتشغيلها، ولا ترخيص يتيح لك تقديمه من أجهزتك الخاصة. يذهب كل طلب إلى Claude إلى API الخاصة بـAnthropic، أو إلى شريك مستضاف مثل Amazon Bedrock أو Google Vertex AI أو Microsoft Foundry. تشغيله على جهاز تملكه ليس مشكلة إعداد. هذا النموذج غير موجود خارج Anthropic.
هذه هي الإجابة المختصرة. أما الإجابة الأطول فهي أن معظم من يطرحون هذا السؤال لا يريدون الأوزان فعلياً. إنهم يريدون واحداً من ثلاثة أشياء يمكن تحقيقها جميعاً على خادم تتحكم فيه: نموذجاً قادراً يعمل محلياً، أو بوابة تحتفظ بمفاتيح API الخاصة بهم وتضع حداً للإنفاق، أو وكيل برمجة يعمل على جهازهم الخاص بدلاً من الحاسوب المحمول. يغطي هذا الدليل الخيارات الثلاثة، مع الأوامر.
ما الذي يعنيه عادةً مصطلح "Claude المستضاف ذاتياً"
تنقسم عمليات البحث عن "self hosted Claude" إلى عدة احتياجات مختلفة، ولكل منها إجابة مختلفة.
يريد بعض الأشخاص الخصوصية. ولا يريدون أن تغادر الطلبات شبكة مؤسستهم. ولا يحل هذه المشكلة إلا نموذج محلي ذي أوزان مفتوحة، لأن أي طلب إلى Claude هو، بحكم التعريف، طلب إلى Anthropic.
ويريد بعض الأشخاص التحكم في التكلفة. ويخشون أن يستهلك وكيل يعمل دون رقابة أرصدتهم بسرعة. تحل البوابة هذه المشكلة، وهي تعمل مع Claude، لذلك تحتفظ بجودة النموذج.
ويريد بعض الأشخاص الاستقلال عن الكمبيوتر المحمول. فهم يريدون وكيلاً يواصل العمل أثناء إغلاق الغطاء. يحل VPS هذه المشكلة، ويعمل Claude Code عليه بسهولة.
ويريد بعض الأشخاص ما يسمونه "self hosted OpenRouter". وهذه بوابة أيضاً، والإجابة المعتادة هي LiteLLM.
حدّد الفئة التي تنتمي إليها، لأن البنية المناسبة تختلف في كل حالة.
استضافة نموذج مفتوح باستخدام Ollama
إذا كان المطلوب هو ألّا يغادر أي prompt خادمك، فشغّل نموذجاً بأوزان مفتوحة. العائلات القابلة للاستخدام فعلياً على خادم مستأجر اليوم هي Llama وQwen وMistral وGemma وDeepSeek. تنشر هذه العائلات جميعاً أوزاناً يمكنك تنزيلها وتشغيلها.
يُعد Ollama أسرع طريقة للبدء. يتكون script التثبيت من سطر واحد، ويُنشئ خدمة systemd على Ubuntu.
curl -fsSL https://ollama.com/install.sh | sh
systemctl status ollamaيجب أن يعرض systemctl status ollama القيمة active (running). بعد ذلك، نزّل نموذجاً وتحدث إليه.
ollama pull qwen3:8b
ollama run qwen3:8b "Summarise what a reverse proxy does in two sentences."ينزّل أول pull عدة gigabytes، لذلك يجب أن يتسع النموذج في RAM أو ذاكرة GPU قبل أن يتمكن من الإجابة عن أي شيء. كقاعدة تقريبية للنماذج المكمّمة: يحتاج النموذج الذي يضم 8 billion parameters إلى نحو 6 GB من الذاكرة الحرة، ويحتاج النموذج الذي يضم 14 billion parameters إلى نحو 10 GB، بينما يحتاج النموذج الذي يضم 70 billion parameters إلى ذاكرة أكبر مما توفره معظم خطط VPS العامة. إذا كانت ذاكرة الخادم غير كافية، تنهي kernel العملية وسترى Error: llama runner process has terminated، مع ظهور سطر يفيد بنفاد الذاكرة في dmesg. افحص free -h قبل إلقاء اللوم على النموذج. وتحدد ميزانية الذاكرة نفسها أيضاً مقدار prompt الطويل الذي يقرأه النموذج فعلياً، لأن Ollama يقتطع بصمت كل ما يتجاوز نافذة افتراضية متواضعة. لذلك فإن رفع num_ctx وضبط حجم KV cache هو أول ما يجب التحقق منه عندما تعود المستندات الطويلة بملخصات ناقصة.
يوفّر Ollama أيضاً HTTP API على 127.0.0.1:11434، وهذا ما يجعله مفيداً للبرامج الأخرى، وليس مجرد أداة دردشة.
curl http://127.0.0.1:11434/api/generate -d '{"model":"qwen3:8b","prompt":"ping","stream":false}'إذا استغرق أول request بعد فترة من عدم النشاط ثلاثين ثانية، بينما يعود request التالي فوراً، فلا يوجد عطل: يفرغ Ollama النموذج بعد خمس دقائق من عدم النشاط، ويؤدي إبقاؤه محمّلاً باستخدام keep_alive إلى إزالة وقت إعادة التحميل هذا.
اترك هذا المنفذ مرتبطاً بـlocalhost. إن فتح منفذ Ollama على public IP يتيح GPU مجانية لأي شخص يعثر عليه. يتناول الدليل الخاص بتشغيل Ollama على VPS عملية الإعداد الكاملة، بما في ذلك systemd unit، واكتشاف GPU، ووضع reverse proxy أمامه. إذا كنت تخدم أكثر من مستخدم واحد في الوقت نفسه، فاقرأ أولاً مقارنة Ollama وvLLM، لأن تصميم Ollama ذي stream الواحد يصبح عنق الزجاجة قبل أن تصبح العتاد كذلك بوقت طويل.
كن صريحاً بشأن الفجوة. يكون النموذج المفتوح الجيد على VPS متوسط الحجم مفيداً فعلاً للتلخيص والتصنيف وإعداد المسودات والاستخراج البسيط. لكنه لا يقترب من نموذج مستضاف رائد في الاستدلال الطويل متعدد الخطوات، أو في قواعد التعليمات البرمجية الكبيرة، أو في استخدام الأدوات بطريقة agentic، ولا يمكن لأي قدر من ضبط prompt أن يسد هذه الفجوة. اختر النموذج المحلي للأعمال التي يجيدها، وادفع مقابل النموذج المستضاف عندما تكون الصعوبة حقيقية.
شغّل بوابة خاصة بك باستخدام LiteLLM
هذه هي «OpenRouter المستضافة ذاتياً» التي يبحث عنها المستخدمون. تقع البوابة بين تطبيقاتك وكل مزوّد نماذج. تحتفظ تطبيقاتك بمفتاح واحد موجّه إلى خادمك. وتبقى مفاتيح المزوّدين الفعلية على ذلك الخادم فقط. يمكنك وضع حد للإنفاق لكل مفتاح، وتوجيه التطبيقات المختلفة إلى نماذج مختلفة، وتسجيل كل طلب في مكان واحد.
يُعد LiteLLM الخيار الشائع لأنه يتحدث واجهة API متوافقة مع OpenAI، ويوفّر proxy إلى 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 وشغّل الـproxy. وهو يستمع على المنفذ 4000.
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.yamlيمثل LITELLM_MASTER_KEY بيانات اعتماد المسؤول، لذلك عامله مثل كلمة مرور root، ولا تستخدم القيمة النموذجية المضمّنة في المثال. استدعِ الـproxy بالطريقة نفسها التي تستدعي بها 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."}]}'تكون الاستجابة السليمة بصيغة JSON عادية وتحتوي على مصفوفة choices. ويمثل 401 فشل مصادقة. في هذا الإعداد، يكون السبب المعتاد هو أن رأس Authorization لا يطابق المفتاح الرئيسي. يعيد LiteLLM هذه الحالة أيضاً عند استخدام مفتاح افتراضي غير صالح، كما يفشل مفتاح المزوّد الذي يرفضه المزوّد في المصادقة أيضاً، مثل ANTHROPIC_API_KEY غير صالح، وتظهر في الخطأ هوية المزوّد بالصيغة <Provider>Exception. وقد يعني 400 الذي يذكر اسم النموذج أن model في طلبك لا يطابق أي model_name في ملف الإعداد. يعيد LiteLLM أيضاً 400 عندما يكون الطلب أطول من نافذة سياق النموذج، لذلك اقرأ رسالة الخطأ قبل تعديل الإعداد.
السبب في إنشاء هذا بدلاً من استدعاء Anthropic مباشرة هو وضع حد للإنفاق. أنشئ مفتاحاً افتراضياً منفصلاً لكل تطبيق، وحدد له ميزانيته الخاصة.
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}'تحتاج المفاتيح الافتراضية والميزانيات إلى قاعدة بيانات Postgres خلف الـproxy. لا يحتوي docker run أعلاه على قاعدة بيانات، لذلك أضف إليه -e DATABASE_URL=postgresql://user:password@host:5432/litellm أولاً. من دون قاعدة بيانات، يفشل هذا الاستدعاء مع No connected db.
يمكن لهذا المفتاح إنفاق مئة دولار والوصول إلى نموذج واحد، ولا شيء غير ذلك. عندما يتصرف أحد الوكلاء بشكل خاطئ في الساعة الثالثة صباحاً، يقتصر نطاق الضرر على مفتاح واحد بدلاً من حسابك بالكامل. هذا النمط، إلى جانب المراقبة المرتبطة به، هو موضوع إبقاء تكاليف الوكلاء تحت السيطرة على VPS. وإذا كنت لا تزال تقرر ما إذا كنت تريد الدفع مقابل كل token أصلاً، فتعرض مقارنة تكلفة API بالاشتراك الحساب بالتفصيل.
انتبه إلى ما لا تفعله البوابة. فهي لا تجعل Claude محلياً، ولا تخفي مطالباتك عن Anthropic. تظل الطلبات تغادر خادمك إلى المزوّد. ما تحصل عليه هو التحكم في المفاتيح والإنفاق والتوجيه والسجلات.
تشغيل Claude Code على خادم VPS تملكه
الأمنية الثالثة هي الأسهل في التنفيذ. Claude Code هو عميل. يُثبَّت كملف ثنائي أصلي واحد، ويتصل بواجهة API عبر HTTPS. وضعه على خادم تملكه يعني أن الوكيل يواصل العمل بعد إيقاف حاسوبك المحمول، كما يعني أن نطاق الضرر المحتمل يقتصر على جهاز يمكنك إعادة بنائه بدلاً من جهازك الرئيسي.
npm install -g @anthropic-ai/claude-code
claude --versionتتطلب حزمة npm الإصدار 22 من Node.js أو إصداراً أحدث، ولكن عند استخدام إصدار أقدم من Node.js، يعرض التثبيت تحذير EBADENGINE فقط ثم يكتمل. أما مثبّت Anthropic الأصلي الموصى به، curl -fsSL https://claude.ai/install.sh | bash، فلا يحتاج إلى Node.js مطلقاً. في كلتا الحالتين، لا يعمل الملف الثنائي claude المثبّت على Node. تذكر Anthropic أن 4 GB من RAM هي الحد الأدنى، لذلك اختر حجم VPS مناسباً لذلك.
شغّله داخل tmux حتى لا يؤدي انقطاع اتصال SSH إلى إيقاف مهمة طويلة. يشرح تشغيل Claude Code على VPS باستخدام tmux هذا الإعداد، بما في ذلك إدارة الجلسة. أنشئ للوكيل مستخدماً خاصاً غير مميّز، واقرأ قواعد الأمان لتشغيل Claude Code على خادم قبل منحه صلاحية الكتابة إلى أي شيء مهم بالنسبة إليك.
هذا استضافة ذاتية للوكيل، وليس للنموذج. من المهم توضيح ذلك، لأن الناس يخلطون بين الأمرين. أنت تملك العملية، ونظام الملفات، والاتصالات الصادرة من الشبكة، والسجلات. أما تنفيذ الاستدلال، فما زالت Anthropic تملكه.
تكلفة كل خيار فعلياً
تتغير الأسعار، لذلك تعامل مع هذه الأرقام باعتبارها تصوراً عاماً لا عرضاً سعرياً. في 17 October 2026، يبلغ سعر Claude Sonnet 5.5 مقدار $2 لكل مليون token إدخال و$10 لكل مليون token إخراج، بينما يبلغ سعر Claude Opus 5.5 مقدار $4 و$20. حلّ Sonnet 5، وهو النموذج المستخدَم في إعدادات gateway أعلاه، محلّه Sonnet 5.5، لكنه لم يُهمَل: تعرض صفحة إهمال نماذج Anthropic حالته على أنه Active، مع عدم تقاعده قبل 30 June 2027. وما زال سعره $2 و$10، بينما يبلغ السعر المدرج لـ Opus 5 مقدار $5 و$25. لا يكلّف النموذج المحلي شيئاً لكل token، بل يكلّفك سعر الخادم الشهري، سواء استخدمته أم لا.
نقطة التعادل أقرب مما يتوقعه كثيرون. يكلّف VPS بذاكرة كافية لتشغيل نموذج مفتوح مفيد مبلغاً حقيقياً كل شهر، ويبقى خاملاً معظم الوقت. إذا كان استخدامك متقطعاً، فعادةً ما تكون hosted API أرخص. أما إذا كان استخدامك مستمراً، أو إذا كانت بياناتك لا يمكن أن تغادر شبكتك، فيتفوق النموذج المحلي في الحالتين.
الإجابة المختلطة الواقعية هي ما تنتهي إليه معظم الفرق. شغّل نموذجاً مفتوحاً محلياً للمهام كثيرة الحجم قليلة الصعوبة. ووجّه الطلبات الصعبة إلى نموذج hosted frontier. ضع gateway أمام النموذجين حتى لا تحتاج التطبيقات إلى معرفة الفرق بينهما، وحتى تتمكن من تغيير الحد الفاصل بينهما دون تعديل application code. هذه البنية هي التطبيق العملي لعبارة "self hosted Claude"، وبخلاف التطبيق الحرفي لها، فهي موجودة فعلاً. إذا أردت تشغيل agent stack بالكامل بنفسك أيضاً، فسيغطي الملخص الخاص بوكلاء AI المستضافين ذاتياً ما هو متاح.
FAQ
هل يمكنني تنزيل أوزان نموذج Claude وتشغيله محلياً؟
لا. لم تُصدر Anthropic أوزان أي نموذج من نماذج Claude، ولا توجد رخصة تسمح بالاستضافة الذاتية. أي شيء يُسوَّق عبر الإنترنت باسم "نموذج Claude" قابل للتنزيل هو إما نموذج مختلف يحمل اسماً مضللاً، أو غلاف يستدعي API. إذا كان يتطلب مفتاح API، فهو ليس محلياً.
ما أقرب نموذج مفتوح إلى Claude؟
لا يوجد نموذج مطابق تماماً، وتتغير النماذج الرائدة كل بضعة أشهر. تستحق عائلات الأوزان المفتوحة التالية الاختبار: Llama وQwen وMistral وGemma وDeepSeek. في التلخيص والتصنيف وتعديلات التعليمات البرمجية البسيطة، يكون النموذج المفتوح الجيد الذي يضم من 8 إلى 14 مليار معلمة مفيداً فعلاً. أما في الاستدلال متعدد الخطوات على نصوص طويلة واستخدام الأدوات بأسلوب الوكلاء، فلا تزال الفجوة أمام نموذج رائد مستضاف كبيرة. اختبر النماذج باستخدام مطالباتك الخاصة بدلاً من الاعتماد على قائمة تصنيف.
هل يُعد LiteLLM بمثابة OpenRouter مستضاف ذاتياً؟
نعم، من الناحية الوظيفية في ما يتعلق بالتوجيه وإدارة المفاتيح. يعمل LiteLLM على خادمك، ويعرض نقطة نهاية واحدة متوافقة مع OpenAI، ويعمل كـproxy مع Anthropic وOllama ومعظم المزوّدين الآخرين. تحصل على حدود إنفاق لكل مفتاح عند ربط قاعدة بيانات Postgres، إضافة إلى توجيه النماذج ومكان واحد لقراءة السجلات. لكنه لا يوفر الاستدلال المحلي: تظل الطلبات الموجهة إلى Claude تنتقل إلى Anthropic.
هل يؤدي تشغيل Claude Code على خادمي الخاص إلى إبقاء التعليمات البرمجية خاصة؟
لا. يرسل Claude Code محتويات الملفات التي يقرأها إلى Anthropic API، بغض النظر عن مكان تشغيل العملية. ما يوفره VPS هو عزل الوكيل، وليس خصوصية المحتوى. امنحه مستخدماً مخصصاً غير مميّز، وأبعده عن بيانات الاعتماد والمستودعات غير المرتبطة، وتعامل مع كل ما يمكنه قراءته على أنه محتوى يغادر الخادم.