إصداركود / SDK · جاهز للعملHabr AI→ المصدر

يتيح AnythingLLM إنشاء مساعد RAG خاص يعتمد على مستنداتك خلال أمسية واحدة

AnythingLLM تطبيق مفتوح المصدر يقسم ملفات PDF وDOCX إلى أجزاء، ويضعها في قاعدة بيانات متجهية، ثم يمرر إلى النموذج المقاطع المطلوبة فقط. يعمل على سطح المكتب أو داخل Docker، ويتصل بـ Ollama أو Claude أو أي بوابة متوافقة مع OpenAI. تكفي أمسية واحدة لإنشاء مساعد خاص. لكن أداء RAG الافتراضي متوسط، كما اكتُشفت ثغرات خطيرة في عام 2026.

معالج بواسطة الذكاء الاصطناعي من Habr AI؛ بتحرير Hamidun News
يتيح AnythingLLM إنشاء مساعد RAG خاص يعتمد على مستنداتك خلال أمسية واحدة
المصدر: Habr AI. كولاج: Hamidun News.
استمع للمقال
بطاقة الحقائق والأرقام
المعيارالتفاصيل
المصدر الأصليHabr AI ↗
رئيس التحرير
حقيقة رئيسية #1وضع Embed، بخلاف إرفاق الملفات، لا يملأ نافذة السياق
حقيقة رئيسية #2تتيح CVE-2026-48116 تنفيذ تعليمات برمجية عن بُعد داخل Docker: حدّث إلى الإصدار 1.13.0 أو أحدث
حقيقة رئيسية #3القيمة الافتراضية لـ Max tokens هي 1024، لذلك تُقتطع الإجابات الطويلة بصمت

المشهد مألوف: على القرص مئة ملف PDF تضم عقودًا وملخصات ووثائق داخلية. ترفع ملفًا واحدًا إلى روبوت محادثة فيتعامل معه جيدًا. ترفع عشرين ملفًا فتمتلئ نافذة السياق وتضيع بعض البيانات. أضف إلى ذلك الاشتراك وVPN وعدم الرغبة في تسليم المستندات إلى سحابة تابعة لطرف آخر. صُمم AnythingLLM تحديدًا لهذه المهمة.

ما هو وكيف يعمل؟

AnythingLLM تطبيق full-stack مفتوح المصدر. يأخذ الملفات ويقسمها إلى chunks، ويحولها إلى متجهات، ويخزنها في قاعدة بيانات، ثم يمرر إلى النموذج الأجزاء ذات الصلة فقط. ويدعم عددًا كافيًا من التنسيقات: PDF وDOCX وTXT وصفحات الويب والصوت عبر Whisper.

الفخ الرئيسي للمبتدئين هو وجود طريقتين لإضافة المستند. إذا «أرفقت» ملفًا بالمحادثة، يُرسل نصه الكامل إلى نافذة السياق. هذه الطريقة سريعة، لكن ملفين كبيرين قد يستنفدان النافذة. أما وضع Embed فيعمل كنظام RAG فعلي: لا تدخل في الـ prompt سوى المقاطع القريبة من السؤال.

توجد المستندات داخل workspace. وهي مساحات معزولة للمشروعات، لكل منها ذاكرتها وملفاتها ونموذجها الخاص. يمكن لمساحة عمل أن تستخدم Ollama محليًا، بينما تتصل أخرى بـ Claude عبر API. أضاف الإصدار 1.13.0 ميزة Model Router التي ترسل الطلبات البسيطة إلى نموذج منخفض التكلفة، والطلبات المعقدة إلى نموذج رائد. أنت من يحدد القواعد، مثلًا بناءً على الكلمات المفتاحية أو حجم الطلب. وظهرت في الإصدار نفسه Scheduled Jobs، أي وكلاء يعملون وفق جدول زمني.

قاعدة البيانات المتجهية الافتراضية المدمجة هي LanceDB. ويمكن عند الحاجة توصيل PGVector وChroma وMilvus وPinecone وQdrant وغيرها.

سطح المكتب أم Docker؟

يُثبت إصدار سطح المكتب بنقرة واحدة على Mac وWindows وLinux. يعمل كل شيء على جهازك، ويقترح النموذج المدمج ثلاثة خيارات GGUF تناسب عتادك. وهو مناسب لمعرفة ما إذا كانت الأداة تلائمك خلال عشر دقائق. لكنه وضع مخصص لمستخدم واحد، ومع قاعدة مستندات كبيرة يبدأ المحرك المدمج في التباطؤ.

يلزم Docker لتشغيل خادم: وضع متعدد المستخدمين، ودعوات، وفصل صلاحيات الوصول إلى مساحات العمل، وعناصر محادثة للمواقع، وAPI كامل. ولا يتطلب النسخ الاحتياطي سوى نسخ مجلد التخزين. وهناك مشكلتان شائعتان:

  • تعمل الحاوية بحساب ذي UID/GID يساوي 1000، وإذا كان المجلد على المضيف مملوكًا لـ root فلن يتمكن SQLite من إنشاء قاعدة البيانات، وستدخل الحاوية في دورة إعادة تشغيل دائمة. يُحل ذلك بتنفيذ chown -R 1000:1000 على مجلد التخزين؛
  • تبدو العلامة --cap-add SYS_ADMIN مثيرة للريبة، لكنها ضرورية لتشغيل المتصفح المدمج من دون واجهة رسومية والمستخدم لمعالجة صفحات الويب.

يُوصل النموذج الخارجي عبر مزود Generic OpenAI: يكفي تحديد Base URL والمفتاح ومعرّف النموذج الدقيق. بهذه الطريقة يمكن ربط البوابات الروسية مثل Bothub، وكذلك LM Studio وOllama في وضع التوافق وvLLM وOpenRouter. المخطط واحد، والعنوان وحده هو الذي يتغير. ويجب ملء حقلين فورًا: Token context window وفق نافذة النموذج الفعلية، وMax tokens. القيمة الافتراضية للأخير هي 1024، ولذلك ستُقتطع الإجابات الطويلة من دون تحذير.

مواضع الضعف

المشكلة الأولى هي جودة RAG. يعمل النظام فور تثبيته، لكن بمستوى متوسط. تعتمد النتيجة على حجم الـ chunks ونموذج embeddings وعتبة التشابه، بينما تمثل الإعدادات الافتراضية حلًا وسطًا لا إعدادًا ملائمًا لمهمتك. ومن الأعراض المعتادة أن يجيب النموذج استنادًا إلى فقرة واحدة في منتصف ملف PDF، ويتجاهل ثلاث فقرات أخرى تقول الشيء نفسه بصياغات مختلفة. ستقضي الأمسية الأولى في فهم هذه الإعدادات.

المشكلة الثانية هي استقرار الوكلاء. ظهرت تسريبات للذاكرة في عام 2026: كان كل طلب RAG داخل جلسة وكيل يضيف ما بين 100 و650 ميغابايت لا يجري تحريرها. قد يكون ذلك مقبولًا للتجارب المنزلية، لكنه غير مقبول لخادم يستخدمه نحو عشرة أشخاص.

المشكلة الثالثة هي الأمان. كانت CVE-2026-48116 تتيح تنفيذ أمر عشوائي داخل الحاوية عبر حقن وسيطة في ripgrep. وبما أن إضافة الملفات مفعلة افتراضيًا في الصورة الرسمية، كان إرسال رسالة إلى الوكيل كافيًا. أما CVE-2026-45403 فكانت تتيح اجتياز المسارات عبر الروابط الرمزية. أُغلقت الثغرتان في الإصدار 1.13.0، وكان الإصدار الحالي وقت كتابة المقال هو 1.19.0. إضافة إلى ذلك، لا يتضمن إصدار سطح المكتب مصادقة، ولا يطلب إصدار Docker كلمة مرور إلى أن تفعلها بنفسك. المنفذ المفتوح بلا كلمة مرور ليس خصوصية، بل مقامرة.

لا أوصي بالإصدار السحابي المستضاف بسعر 50 دولارًا شهريًا للعمل الجاد مع المستندات: فلا يوجد فيه LLM مدمج، ويعمل نموذج embeddings على CPU ضمن حدود صارمة، كما أن الوكلاء المخصصين وMCP معطلان.

الخلاصة العملية

إذا كانت لديك مجموعة نصوص ولا تريد تسليمها إلى السحب العامة، فإن AnythingLLM يوفر لك أساسًا عمليًا خلال أمسية واحدة. ابدأ بإصدار سطح المكتب، وانتقل إلى Docker عند العمل ضمن فريق، وفعل كلمة المرور فورًا، وحدّث دائمًا إلى أحدث إصدار، وخصص وقتًا لضبط عملية chunking. أما في بيئة الإنتاج ومع البيانات الحساسة، فمن الأفضل حاليًا إبقاء المساعد تحت المراقبة، مثل متدرب يملك صلاحية الوصول إلى أنظمة الإنتاج.

القصة

أسئلة وأجوبة حول الخبر

ما هو وكيف يعمل؟

AnythingLLM تطبيق full-stack مفتوح المصدر. يأخذ الملفات ويقسمها إلى chunks، ويحولها إلى متجهات، ويخزنها في قاعدة بيانات، ثم يمرر إلى النموذج الأجزاء ذات الصلة فقط. ويدعم عددًا كافيًا من التنسيقات: PDF وDOCX وTXT وصفحات الويب والصوت عبر Whisper. الفخ الرئيسي للمبتدئين هو وجود طريقتين لإضافة المستند. إذا «أرفقت» ملفًا بالمحادثة، يُرسل نصه الكامل إلى نافذة السياق. هذه الطريقة سريعة، لكن ملفين كبيرين قد يستنفدان النافذة. أما وضع Embed فيعمل كنظام RAG فعلي: لا تدخل في الـ prompt سوى المقاطع القريبة من السؤال.

سطح المكتب أم Docker؟

يُثبت إصدار سطح المكتب بنقرة واحدة على Mac وWindows وLinux. يعمل كل شيء على جهازك، ويقترح النموذج المدمج ثلاثة خيارات GGUF تناسب عتادك. وهو مناسب لمعرفة ما إذا كانت الأداة تلائمك خلال عشر دقائق. لكنه وضع مخصص لمستخدم واحد، ومع قاعدة مستندات كبيرة يبدأ المحرك المدمج في التباطؤ. يلزم Docker لتشغيل خادم: وضع متعدد المستخدمين، ودعوات، وفصل صلاحيات الوصول إلى مساحات العمل، وعناصر محادثة للمواقع، وAPI كامل. ولا يتطلب النسخ الاحتياطي سوى نسخ مجلد التخزين.

ما أبرز التفاصيل حول مواضع الضعف؟

المشكلة الأولى هي جودة RAG. يعمل النظام فور تثبيته، لكن بمستوى متوسط. تعتمد النتيجة على حجم الـ chunks ونموذج embeddings وعتبة التشابه، بينما تمثل الإعدادات الافتراضية حلًا وسطًا لا إعدادًا ملائمًا لمهمتك. ومن الأعراض المعتادة أن يجيب النموذج استنادًا إلى فقرة واحدة في منتصف ملف PDF، ويتجاهل ثلاث فقرات أخرى تقول الشيء نفسه بصياغات مختلفة. ستقضي الأمسية الأولى في فهم هذه الإعدادات. المشكلة الثانية هي استقرار الوكلاء.

ZK
جمال حميدون — مدير المنتجات في Alpina Digital ومدير منتج AlpinaGPT. يبني منتجات الذكاء الاصطناعي منذ 2019. بدأ Hamidun News كمشروع شخصي ثم أصبح مُجمِّعًا إنتاجيًا بأكثر من 6000 قارئ.
✦ Unified AI Workspace · Nomad

Test Frontier LLMs & Autonomous Agents in One Workspace

Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.

Try Nomad AI →Launch Nomad Agent
ما رأيك؟
جارٍ تحميل التعليقات…