كيفية تمكين عملاء متعددين من التحدث إلى قاعدة معارف مشتركة باستخدام واجهة برمجة تطبيقات GPT المحلية
سننظر اليوم في كيفية تمكين العديد من العملاء حتى يتمكنوا من التحدث إلى قاعدة معارف مشتركة باستخدام واجهة برمجة تطبيقات GPT المحلية. Local GPT هو مشروعي الخاص الذي يتيح لك الدردشة مع مستنداتك محليًا في بيئة آمنة. لديها أكثر من 18000 نجمة على GitHub ويمكنك بالفعل إنشاء تطبيقات أعمال فوق ذلك.
إعداد GPT المحلي
أولاً، دعنا نتعرف على العملية خطوة بخطوة لكيفية إعداد GPT المحلي. إذا كانت هذه هي المرة الأولى التي ترى فيها GPT المحلي، فستحتاج إلى استنساخ الريبو. ما عليك سوى النقر على الزر الأخضر في صفحة GitHub لنسخ الرابط. وبدلاً من ذلك، يمكنك استخدام جهاز افتراضي تم تكوينه مسبقًا والذي توفره MK Compute. إذا اخترت استخدام الجهاز الظاهري، فاستخدم الرمز "promptengineering" للحصول على خصم 50%.
إذا كنت تقوم بتشغيل GPT المحلي على جهاز محلي، فافتح جهازك الطرفي وقم بتغيير الدليل إلى المكان الذي تريد تخزين نسخة من الريبو المستنسخ فيه. بعد ذلك، استخدم عنوان GitHub repo المنسوخ لاستنساخ الريبو في مجلد جديد يسمى "local GPT API". بعد ذلك، أنشئ بيئة افتراضية جديدة باستخدام الأمر "conda create -n localGPT python=3.10" (استبدل "localGPT" بالاسم المطلوب لبيئتك الافتراضية). قم بتثبيت جميع المتطلبات باستخدام "pip install -r require.txt".
بمجرد اكتمال الإعداد، أنت جاهز للانتقال إلى جزء الحقن.
حقن المستندات وإنشاء قاعدة المعرفة
لتمكين العديد من العملاء من التواصل مع قاعدة معارف مشتركة، نحتاج إلى استيعاب المستندات وإنشاء مخزن متجهات. يمكن القيام بذلك باستخدام أمر Python "python inject.py". افتراضيًا، يستخدم CUDA لنوع الجهاز، ولكن إذا كنت تقوم بتشغيل هذا على Apple silicon، فيمكنك توفير MPS كنوع الجهاز.
تقوم عملية الحقن بتقسيم المستندات إلى أجزاء وإنشاء تضمينات متجهة بناءً على تلك الأجزاء. يتم تخزين تضمينات المتجهات في مخزن المتجهات، الذي يعمل بمثابة قاعدة المعرفة.
خدمة العديد من العملاء
الآن بعد أن قمنا بإعداد قاعدة المعرفة، يمكننا البدء في خدمة عملاء متعددين من خلال واجهة برمجة التطبيقات (API). يستخدم GPT المحلي خادم Flask API لهذا الغرض. يطبق خادم GPT المحلي آلية انتظار بسيطة، حيث يخدم العملاء بالترتيب الذي يقدمون به الطلبات. إذا كان لديك نظام متعدد وحدات معالجة الرسومات، فيمكنك تقديم مثيلات مختلفة لـ GPT المحلي على وحدات معالجة رسومات مختلفة وتوجيه طلبات العميل من خلالها.
لبدء خادم API، استخدم الأمر "python run_local_gpt_api.py". سيؤدي هذا إلى تحميل النموذج وبدء العرض.
استخدام واجهة مستخدم GPT المحلية
يأتي GPT المحلي مزودًا بمثال لواجهة المستخدم التي يمكنك استخدامها للتفاعل مع خادم API. انتقل إلى المجلد "local GPT UI" وقم بتشغيل الأمر "python local_gpt_ui.py". سيؤدي هذا إلى بدء تشغيل تطبيق Flask آخر على المنفذ 5111.
يمكنك إنشاء واجهات المستخدم الخاصة بك من خلال النظر في تنفيذ واجهة برمجة تطبيقات GPT المحلية وكيفية استدعائها. مثال واجهة المستخدم المقدمة هو خيار واحد فقط.
محاكاة عملاء متعددين
لمحاكاة وصول العديد من العملاء إلى واجهة برمجة التطبيقات في وقت واحد، يمكنك تشغيل مثيلات متعددة لواجهة المستخدم أو إجراء مكالمات خارجية إلى واجهة برمجة التطبيقات من أجهزة بعيدة مختلفة. في المثال الموضح في الفيديو، يتم تشغيل ثلاث مثيلات مختلفة لواجهة المستخدم، كل منها يقدم مطالبة مختلفة لخادم واجهة برمجة التطبيقات.
يستجيب خادم واجهة برمجة التطبيقات (API) لمطالبة واحدة في كل مرة، ويعالجها بالترتيب الذي تم استلامها به. بمجرد إنشاء الاستجابة، فإنه ينتقل إلى الموجه التالي.
خاتمة
في هذا البرنامج التعليمي، تعلمنا كيفية تمكين عملاء متعددين من التحدث إلى قاعدة معارف مشتركة باستخدام خادم GPT API المحلي. على الرغم من أن هذا البرنامج التعليمي يوفر إعدادًا أساسيًا، إلا أن هناك طرقًا أكثر أناقة للتعامل مع عملاء متعددين، مثل إضافة موازن التحميل وطلبات الانتظار.
إذا كنت مهتمًا بالمساهمة في مشروع GPT المحلي، فاطلع على GitHub repo وانضم إلى مجتمع Discord. تتوفر أيضًا خدمات الاستشارة والمشورة للمنتجات والشركات الناشئة. تأكد من الاشتراك في القناة لمزيد من المحتوى حول GPT المحلي ومميزاته.
شكرا على المشاهدة ونراكم في الفيديو التالي!