لقد قمت بتمكين “AI embeddings enabled” الليلة الماضية وكانت عملية الملء الخلفي تحدث في الخلفية. اليوم قمت بتمكين “AI embeddings semantic search enabled” وارتفع استهلاك وحدة المعالجة المركزية (CPU) إلى 100% باستمرار مع تراكم كبير في قائمة انتظار sidekiq. توقف البحث تمامًا عن العمل على الخادم.
لقد قمت بتعطيل البحث الدلالي وعاد الخادم إلى وضعه الطبيعي لوحدة المعالجة المركزية في غضون دقائق مع مسح جميع قوائم الانتظار.
أود معرفة المزيد عن ملف “الأجهزة” الخاص بك إذا كنت تستضيف ذاتيًا؛ لقد فكرت في فعل الشيء نفسه على خوادمي، ولكني لست متأكدًا من التأثير. هذا يخبرني بشكل غير رسمي أنه يجب علي الانتظار أو وضع خطة أفضل.
من المتوقع أن تستغرق تلك المرة Jobs::GenerateEmbeddings ثوانٍ في كل مرة، لأنك تجري مكالمة واجهة برمجة تطبيقات (API) إلى خدمة تضمين للحصول على البيانات. هذا الرسم البياني طبيعي، إنه يوضح فقط أن شيئًا ما يستغرق وقتًا، حيث تقوم وحدة معالجة رسوميات (GPU) أخرى في السحابة بالعمل الفعلي.
ارتفاع وحدة المعالجة المركزية (CPU) غير متوقع للغاية، ربما بدأت إعدادات قاعدة بيانات PostgreSQL (PG) الخاصة بك تعاني من ضغط شديد للموارد وإدراج حوالي 1000 رقم على التوالي يكفي لإلحاق الضرر بها.
نحتاج إلى المزيد من البيانات هنا للمساعدة في التشخيص، ما هي مواصفات الخادم؟ ما هي الرسوم البيانية الفعلية لوحدة المعالجة المركزية التي تظهر، وأي عملية تستهلك وحدة المعالجة المركزية، وما هي خدمة التضمين التي تستخدمها، إلخ…
أرى أنك شاركت للتو رسمًا بيانيًا لمدة مهمة الـ sidekick، ويُظهر أنه بعد تمكين التضمينات (embeddings)، كان Discourse يقوم بإعادة ملئها بشكل صحيح.
هل يمكنك مشاركة المزيد من المعلومات حول إعدادك؟ ما هو مزود التضمينات؟ هل هي واجهة برمجة تطبيقات (API) لطرف ثالث أم أنك تستضيفها بنفسك أيضًا؟ كم عدد المواضيع لديك؟ ما هي مواصفات قاعدة البيانات (DB)؟
أنا أستخدم خادمًا بذاكرة 16 جيجابايت و 4 وحدات معالجة مركزية افتراضية (vCPUs). أستخدم نموذج OpenAI text-embedding-3-small.
عادةً ما يكون استخدام وحدة المعالجة المركزية حوالي 50% أو أقل. هكذا سار الأمر عندما قمت بتمكين البحث الدلالي. هناك حوالي 2.5 مليون مشاركة و 250 ألف موضوع. لم أقم بتمكين التضمينات (embeddings) للرسائل الخاصة (PM) وإلا سيتم إضافة مليون مشاركة و 100 ألف موضوع إضافيين.