Key Takeaways
- الكتابة/إنشاء المحتوى: Ollama + OpenWebUI. دون تهيئة، وواجهة دردشة ممتازة، ونافذة سياق قابلة للضبط.
- البرمجة/مراجعة الكود: vLLM + FastAPI + امتداد VS Code. معالجة بالدفعات، واستدلال متوازٍ، وstreaming.
- RAG محلي: LlamaIndex + Ollama/vLLM + قاعدة بيانات متجهية Qdrant. تقطيع المستندات، وembedding، والاسترجاع مدمجة.
- وكلاء الذكاء الاصطناعي: LangGraph + خلفية vLLM. استخدام الأدوات، والذاكرة، وحلقة التخطيط. منحنى تعلّم أكثر حدّة.
- API متعدد المستخدمين: vLLM خلف موزّع أحمال (nginx). يدير 10+ طلبات متزامنة. الخيار الأكثر قابلية للتوسّع.
- fine-tuning: HuggingFace Transformers + LoRA + Ollama للاستدلال. التدريب منفصل عن الخدمة.
- streaming في الوقت الفعلي: Ollama (streaming أصلي) أو vLLM + نقطة نهاية لتدفّق الـ token. أفضل تجربة مستخدم لروبوتات الدردشة.
أفضل مكدسات LLM المحلية حسب حالة الاستخدام: الكتابة ← Ollama + Open WebUI؛ البرمجة ← vLLM + FastAPI + VS Code؛ RAG المحلي ← LlamaIndex + Qdrant؛ وكلاء الذكاء الاصطناعي ← LangGraph + vLLM؛ API متعدد المستخدمين ← vLLM + nginx؛ الضبط الدقيق ← HuggingFace Transformers + LoRA.
"المكدس" هو مجموعة الأدوات التي تعمل معاً لإنجاز مهمة محددة. Ollama هو خادم الذكاء الاصطناعي المحلي؛ Open WebUI هو واجهة المتصفح. vLLM خادم أسرع للاستخدام الإنتاجي. Qdrant يخزّن المستندات كمتجهات ليجد الذكاء الاصطناعي المقطع المناسب. LoRA طريقة لضبط نموذج على بياناتك الخاصة دون إعادة التدريب من الصفر.

قرار سريع: المنظومة حسب فئة العتاد (أبريل 2026)
اختر المنظومة وفقاً لـ GPU/VRAM لديك. كل تركيبة مختبرة بقياسات حقيقية. تستفيد مسارات البرمجة والوكلاء من النماذج الكبيرة أكثر من الكتابة؛ ويعتمد RAG على جودة embedding أكثر من حجم LLM.
| عتادك | الكتابة | البرمجة | RAG | الوكلاء |
|---|---|---|---|---|
| 4–8 GB VRAM (GTX 1660, RTX 3050) | Ollama + Phi-4 Mini | Ollama + Qwen3-Coder-1.5B | LlamaIndex + Phi-4 Mini | غير موصى به |
| 12 GB VRAM (RTX 3060, RTX 4070) | Ollama + Llama 3.2 8B | vLLM + Qwen3-Coder-7B | LlamaIndex + Llama 3.2 8B | LangGraph + Ollama (أبطأ) |
| 16 GB VRAM (RTX 4070 Ti, RTX 4080) | Ollama + Mistral Small 3.1 | vLLM + Qwen3-Coder-14B | LlamaIndex + Mistral 3.1 | LangGraph + vLLM |
| 24 GB VRAM (RTX 3090, RTX 4090) | Ollama + Llama 3.3 70B Q4 | vLLM + Qwen3-Coder-32B | LlamaIndex + Llama 3.3 70B | LangGraph + vLLM (الأسرع) |

**أفضل منظومة: Ollama + OpenWebUI + محرر Markdown**
لماذا هذه المنظومة: لدى OpenWebUI أفضل تجربة مستخدم للدردشة. لا تتطلب كوداً. مرونة نافذة السياق (4K–32K) تتفوق على LM Studio لكتابة النصوص الطويلة. أكثر اقتصاداً من واجهات API السحابية للكتّاب.
- 1لـ 24 GB VRAM: `ollama pull llama3.3:70b` — أقصى جودة، تضاهي GPT-4 (2023) في قياسات الكتابة.
- 2لـ 16 GB VRAM: `ollama pull mistral-small3.1` — سياق 128K، أفضل جودة دون 24 GB.
- 3لـ 8 GB VRAM: `ollama pull llama3.2:8b` — جودة كتابة جيدة، وسريع على العتاد الاستهلاكي.
- 4ثبّت OpenWebUI عبر Docker: `docker run -d -p 3000:8080 ghcr.io/open-webui/open-webui:latest`.
- 5اضبط نافذة السياق (8K–32K token) في إعدادات OpenWebUI وفقاً لطول المستند.
أفضل منظومة: [vLLM + Qwen3-Coder + امتداد IDE
لماذا هذه المنظومة: يحقق Qwen3-Coder نسبة 82% في HumanEval (أفضل نموذج برمجي مفتوح المصدر، أبريل 2026). vLLM أسرع بمقدار 3–5× من Ollama للاستدلال بالدفعات. التوافق الأصلي مع API من OpenAI يناسب أدوات IDE الحالية. streaming مُفعَّل للاقتراحات في الوقت الفعلي.
مراجعة الكود بالذكاء الاصطناعي لملفات متعددة
للمراجعة الآلية لعدة ملفات، استخدم معالجة الدفعات في vLLM:
- 1ثبّت vLLM: `pip install vllm`.
- 2ابدأ خادم vLLM مع Qwen3-Coder-7B: `python -m vllm.entrypoints.openai.api_server --model Qwen/Qwen3-Coder-7B-Instruct --port 8000`.
- 3لـ 16+ GB VRAM، استخدم نموذج 14B: `--model Qwen/Qwen3-Coder-14B-Instruct`.
- 4اربط امتداد IDE (VS Code Continue.dev، Cursor، إلخ) بـ `http://localhost:8000/v1`.
- 5فعّل معالجة الدفعات لمراجعة الكود: عالج 10 ملفات بالتوازي باستدعاء API واحد (`vllm` يدعم batch=10 افتراضياً).
# Review 10 files in parallel using vLLM batch processing
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="not-needed")
code_files = [
("utils.py", open("utils.py").read()),
("models.py", open("models.py").read()),
# ... up to 10 files
]
# vLLM processes all 10 in parallel (1 batch request)
reviews = []
for filename, code in code_files:
prompt = f"Review this code for bugs, style, and performance:
{code}"
response = client.chat.completions.create(
model="Qwen3-Coder-7B-Instruct",
messages=[{"role": "user", "content": prompt}],
temperature=0.2, # Deterministic for review tasks
)
reviews.append((filename, response.choices[0].message.content))
for filename, review in reviews:
print(f"=== {filename} ===
{review}
")أفضل منظومة: LlamaIndex + Ollama/vLLM + Qdrant + واجهة FastAPI
لماذا هذه المنظومة: يدير LlamaIndex التقطيع والاسترجاع. Qdrant سريع، ومحلي، وخاص. يوفّر Ollama embeddings (مجاناً) أو استخدم vLLM لاستدلال LLM.
- 1ثبّت LlamaIndex (`pip install llama-index`).
- 2حمّل المستندات (PDF، TXT، markdown) في LlamaIndex.
- 3قسّم المستندات إلى أجزاء (1024 token افتراضياً)، وولّد embeddings بنموذج محلي أو OpenAI (احتياطي).
- 4خزّن embeddings في قاعدة البيانات المتجهية Qdrant (تعمل محلياً عبر Docker).
- 5استعلم عبر LlamaIndex: استرجع أعلى K مستندات متشابهة وأرسل السياق إلى LLM.
- 6غلّفها في نقطة نهاية FastAPI لواجهة ويب أو تكامل مع IDE.
أفضل منظومة: LangGraph + vLLM + تعريفات الأدوات
لماذا هذه المنظومة: يوفّر LangGraph تدفّق وكيل منظّم. vLLM سريع بما يكفي لـ 10+ استدعاءات LLM متتالية. استخدام الأدوات صريح وسهل التصحيح.
- 1ثبّت LangGraph (`pip install langchain langgraph`).
- 2عرّف الأدوات (البحث على الويب، الآلة الحاسبة، إدخال/إخراج الملفات) كتواقيع دوال.
- 3أنشئ رسم الوكيل مع LLM كعقدة قرار والأدوات كعقد إجراء.
- 4استخدم خلفية vLLM لاستدعاءات LLM منخفضة الكمون في الحلقات الضيقة.
- 5شغّل حلقة الوكيل: LLM ← اختيار الأداة ← التنفيذ ← التكرار حتى الاكتمال.
أفضل منظومة: vLLM + موزّع أحمال nginx + مراقبة
لماذا هذه المنظومة: يدعم vLLM الخدمة الموزّعة. يوزّع nginx الطلبات. يتوسّع إلى 10+ مستخدمين متزامنين على جهاز بـ GPU مزدوجة. راقب إنتاجية الـ token لكل مستخدم.
- 1انشر vLLM مع `--served-model-name model-name` على منفذ ثابت.
- 2هيّئ nginx لموازنة الحمل بين مثيلين أو أكثر من vLLM (واحد لكل GPU إن كان لديك عدة بطاقات GPU).
- 3استخدم نقطة النهاية `/v1/chat/completions` المتوافقة مع OpenAI للتوافق مع العملاء.
- 4راقب عبر نقطة نهاية Prometheus للجمع (يصدّر vLLM كمون الطلبات ومقاييس الإنتاجية).
- 5هيّئ تحديد المعدّل لكل مستخدم بخوارزمية token bucket.
أفضل منظومة: HuggingFace Transformers + LoRA + Ollama (للاستدلال)
لماذا هذه المنظومة: يقلّل LoRA استخدام VRAM لـ fine-tuning بمقدار 10×. يحمّل Ollama النماذج المضبوطة بسهولة. معياري: درّب على جهاز، وقدّم الخدمة على آخر.
ملاحظة (أبريل 2026): أوقفت Meta دعم Llama 3.3 لـ fine-tuning التجاري. نفّذ fine-tuning على Llama 3.2 (`meta-llama/Llama-3.2-1B` أو أكبر) أو Qwen3 (`Qwen/Qwen3-7B`) لشروط ترخيص Apache 2.0 / مفتوح المصدر. كلاهما يدعم LoRA ويُحمَّل بسهولة في Ollama.
- 1نفّذ fine-tuning باستخدام مكتبة `peft` (LoRA) لتقليل استخدام VRAM.
- 2التدريب: يحتاج 4× من VRAM النموذج (حالة المحسّن، التدرّجات). شغّله منفصلاً عن الاستدلال.
- 3صدّر محوّل LoRA إلى HuggingFace Hub أو نظام الملفات المحلي.
- 4حمّل النموذج المضبوط في Ollama: `ollama create mymodel -f Modelfile`.
- 5أو استخدم HuggingFace TRL (Transformers Reinforcement Learning) لـ RLHF.
أفضل منظومة: Ollama (streaming أصلي) أو vLLM + Server-Sent Events (SSE)
لماذا هذه المنظومة: يحسّن streaming الأداء المُدرَك (يرى المستخدم الـ token تظهر). Ollama هو الأبسط. vLLM لديه أعلى إنتاجية token.
- 1Ollama: استدعِ `/api/generate` مع `stream: true`. تصل الـ token كـ JSON مفصول بأسطر جديدة.
- 2vLLM: استخدم `/v1/chat/completions` مع `stream: true`. يعيد تدفّق SSE متوافقاً مع OpenAI.
- 3الواجهة الأمامية: استخدم EventSource API (JavaScript) لاستهلاك التدفّق وتحديث الواجهة لكل token.
- 4عطّل معالجة الدفعات (batch=1) لأقل كمون ممكن.
هل أستخدم Ollama أم vLLM؟
Ollama لواجهة الدردشة + البساطة. vLLM لخادم API + معالجة الدفعات + الأداء. ليسا متعارضين؛ يمكنك تشغيل كليهما.
هل يمكنني استخدام Ollama كـ API إنتاجي؟
نعم، لكن vLLM أسرع (إنتاجية أعلى بمقدار 3–5×). Ollama مناسب لـ <10 طلب/ثانية. vLLM لـ 10+ طلب/ثانية.
ما هو أفضل نموذج LLM محلي لمراجعة الكود؟
vLLM + Qwen3-Coder-7B-Instruct. يحقق Qwen3-Coder نسبة 82% في HumanEval (الأفضل مفتوح المصدر). يعالج vLLM 10 ملفات بالتوازي. ~30–50 tok/ثانية على RTX 3060 12GB.
هل أحتاج إلى قاعدة بيانات متجهية لـ RAG بسيط؟
لـ <100 مستند: embeddings في الذاكرة (np.ndarray) كافية. لـ >100: استخدم Qdrant أو Weaviate لتجنّب فرط الذاكرة.
هل LangGraph مبالغ فيه لروبوتات الدردشة البسيطة؟
نعم. استخدم Ollama أو vLLM مباشرة. LangGraph لسير العمل متعدد الخطوات (حلقات الوكلاء، التخطيط).
هل يمكنني دمج خلفيتي Ollama وvLLM؟
نعم. مثلاً، Ollama لواجهة الدردشة، وvLLM لـ API الدفعات. يمكنهما العمل على الجهاز نفسه على منافذ مختلفة.
قراءات ذات صلة
- أفضل مساعد برمجي بالذكاء الاصطناعي لنموذج LLM محلي — اختيار IDE لمنظومة البرمجة لديك (Cursor، Continue.dev، Cody).
- أفضل نماذج LLM المحلية للبرمجة 2026 — تصنيفات HumanEval: Qwen3-Coder مقابل DeepSeek-Coder.
- تهيئة RAG محلي 2026 — دليل تنفيذ شامل مع LlamaIndex + Qdrant + Ollama.
- وكلاء LLM محليون مع LangGraph — إطار عمل سير عمل الوكلاء مع أمثلة خطوة بخطوة.
- Ollama مقابل LM Studio — مقارنة الخلفيات: CLI مقابل GUI، السرعة، معالجة الدفعات.
- Open WebUI مقابل SillyTavern — مقارنة واجهات الدردشة: احترافية مقابل تقمّص أدوار.
- كم من VRAM تحتاج نماذج LLM المحلية؟ — متطلبات العتاد حسب حجم النموذج وحالة الاستخدام.
أخطاء شائعة عند اختيار منظومة LLM
- استخدام Ollama لـ API إنتاجي دون vLLM: لدى Ollama حد <10 طلب/ثانية. للإنتاج مع 10+ مستخدمين متزامنين، vLLM إلزامي. اختبر الإنتاجية تحت الحمل قبل النشر.
- تشغيل LangGraph دون خلفية vLLM: يجري وكلاء LangGraph 10+ استدعاءات LLM متتالية. يُدخل Ollama اختناقات كمون. ادمج دائماً LangGraph مع vLLM لأزمنة استجابة دون الثانية.
- خلط Ollama + vLLM على نفس GPU دون إدارة ذاكرة: كلتا الأداتين تحمّلان الأوزان في VRAM. مثيلان من نموذج 70B يستهلكان 32 GB. استخدم بطاقات GPU منفصلة أو كمّم بقوة (Q2) ليناسبا معاً.
- اختيار نافذة السياق الخاطئة للكتابة: السياق الافتراضي 4K يحد جلسات العصف الذهني. لكتابة النصوص الطويلة، اضبط نافذة 16K–32K token في OpenWebUI. المقايضة: استدلال أبطأ (2–3× أبطأ لكل token).
- افتراض أن جميع الخلفيات بالسرعة نفسها: يستخدم vLLM وOllama أنوية مختلفة. على العتاد نفسه، vLLM أسرع بمقدار 2–3× للاستدلال. فرق السرعة في الخلفية، لا في الواجهة الأمامية (OpenWebUI، LM Studio مجرد واجهات).
المصادر
- Ollama GitHub — الوثائق الرسمية، ومواصفات API الـ streaming، ومكتبة النماذج.
- vLLM GitHub — التوافق مع API من OpenAI، ومعالجة الدفعات، ووثائق continuous batching.
- التقرير التقني لـ Qwen3-Coder — Alibaba Qwen. نسبة 82% في HumanEval، متخصص في مهام البرمجة. ترخيص Apache 2.0.
- وثائق LlamaIndex — إطار عمل لفهرسة المستندات، والتقطيع، واسترجاع RAG.
- وثائق LangGraph — إطار عمل سير عمل الوكلاء، وآلات الحالة، وأنماط استخدام الأدوات.
- وثائق Qdrant — قاعدة بيانات متجهية للتخزين المحلي لـ embeddings، جاهزة لـ Docker، Apache 2.0.
- وثائق Continue.dev — امتداد IDE لـ VS Code وJetBrains باستخدام خلفيات LLM محلية.
