تعمل بنية الخدمات المصغرة على تعزيز إنشاء خدمات مرنة ومستقلة ذات حدود محددة جيدًا. يمكّن هذا النهج القابل للتطوير المطورين من صيانة الخدمات وتطويرها بشكل فردي دون التأثير على التطبيق بأكمله. ومع ذلك، فإن تحقيق الإمكانات الكاملة لبنية الخدمات الصغيرة، وخاصة لتطبيقات الدردشة التي تعمل بالذكاء الاصطناعي، يتطلب تكاملًا قويًا مع أحدث نماذج اللغات الكبيرة (LLMs) مثل Meta Llama V2 وChatGPT من OpenAI وغيرها من الإصدارات المضبوطة بدقة بناءً على كل حالة استخدام للتطبيق توفير نهج متعدد النماذج لحل متنوع.
LLMs هي نماذج واسعة النطاق تولد نصًا شبيهًا بالإنسان بناءً على تدريبهم على بيانات متنوعة. من خلال التعلم من مليارات الكلمات على الإنترنت، يفهم حاملو LLM السياق وينشئون محتوى مضبوطًا في مجالات مختلفة. ومع ذلك، فإن دمج مختلف LLMs في تطبيق واحد غالبًا ما يشكل تحديات بسبب متطلبات الواجهات الفريدة ونقاط نهاية الوصول والحمولات المحددة لكل نموذج. لذا، فإن وجود خدمة تكامل واحدة يمكنها التعامل مع مجموعة متنوعة من النماذج يعمل على تحسين تصميم البنية وتعزيز حجم الخدمات المستقلة.
سيقدم لك هذا البرنامج التعليمي تكاملات IntelliNode لـ ChatGPT وLLaMA V2 في بنية الخدمات الصغيرة باستخدام Node.js وExpress.
فيما يلي بعض خيارات تكامل الدردشة التي توفرها IntelliNode:
- لاما V2: يمكنك دمج نموذج LLaMA V2 إما عبر Replicate's API لعملية مباشرة أو عبر مضيف AWS SageMaker للحصول على تحكم إضافي.
LLaMA V2 هو نموذج لغة كبير مفتوح المصدر (LLM) قوي تم تدريبه مسبقًا وضبطه بدقة باستخدام ما يصل إلى 70 مليار معلمة. فهو يتفوق في مهام التفكير المعقدة في مختلف المجالات، بما في ذلك المجالات المتخصصة مثل البرمجة والكتابة الإبداعية. تتضمن منهجية التدريب الخاصة بها بيانات خاضعة للإشراف الذاتي ومواءمة مع التفضيلات البشرية من خلال التعلم المعزز بالملاحظات البشرية (RLHF). يتفوق LLaMA V2 على النماذج مفتوحة المصدر الموجودة ويمكن مقارنته بالنماذج مغلقة المصدر مثل ChatGPT وBARD من حيث سهولة الاستخدام والسلامة.
- شات جي بي تي: بمجرد توفير مفتاح OpenAI API الخاص بك، تتيح وحدة IntelliNode التكامل مع النموذج في واجهة دردشة بسيطة. يمكنك الوصول إلى ChatGPT من خلال نماذج GPT 3.5 أو GPT 4. وقد تم تدريب هذه النماذج على كميات هائلة من البيانات وتم ضبطها بدقة لتوفير استجابات سياقية ودقيقة للغاية.
لنبدأ بتهيئة مشروع Node.js جديد. افتح المحطة الطرفية الخاصة بك، وانتقل إلى دليل مشروعك، وقم بتشغيل الأمر التالي:
npm init -y
سيؤدي هذا الأمر إلى إنشاء ملف "package.json" جديد لتطبيقك.
بعد ذلك، قم بتثبيت Express.js، والذي سيتم استخدامه للتعامل مع طلبات واستجابات HTTP والرمز الذكي لاتصال نماذج LLM:
npm install express npm install intellinode
بمجرد انتهاء التثبيت، قم بإنشاء ملف جديد باسم `app.js`في الدليل الجذر لمشروعك. ثم أضف رمز التهيئة السريع في "app.js".
كود المؤلف
يوفر Replicate مسار تكامل سريع مع Llama V2 من خلال مفتاح API، ويوفر IntelliNode واجهة chatbot لفصل منطق عملك عن الواجهة الخلفية لـ Replicate مما يسمح لك بالتبديل بين نماذج الدردشة المختلفة.
لنبدأ بالتكامل مع Llama المستضافة في الواجهة الخلفية لـ Replica:
كود المؤلف
احصل على المفتاح التجريبي الخاص بك من Replicate.com لتفعيل التكامل.
الآن، دعونا نغطي تكامل Llama V2 عبر AWS SageMaker، مما يوفر الخصوصية وطبقة إضافية من التحكم.
يتطلب التكامل إنشاء نقطة نهاية واجهة برمجة التطبيقات (API) من حساب AWS الخاص بك، سنقوم أولاً بإعداد رمز التكامل في تطبيق الخدمة الصغيرة الخاص بنا:
كود المؤلف
الخطوات التالية هي إنشاء نقطة نهاية Llama في حسابك، بمجرد إعداد بوابة API، انسخ عنوان URL لاستخدامه في تشغيل '/ اللاما/أوس' خدمة.
لإعداد نقطة نهاية Llama V2 في حساب AWS الخاص بك:
1- خدمة سيج ميكر: حدد خدمة SageMaker من حساب AWS الخاص بك وانقر فوق المجالات.
حساب aws-حدد sagemaker
2- إنشاء مجال SageMaker: ابدأ بإنشاء مجال جديد على AWS SageMaker الخاص بك. تنشئ هذه الخطوة مساحة يمكن التحكم فيها لعمليات SageMaker الخاصة بك.
مجال حساب aws-sagemaker
3- نشر نموذج اللاما: استخدم SageMaker JumpStart لنشر نموذج Llama الذي تخطط لدمجه. يوصى بالبدء بالنموذج 2B نظرًا لارتفاع التكلفة الشهرية لتشغيل الطراز 70B.
بداية القفزة في حساب aws-sagemaker
4- انسخ اسم نقطة النهاية: بمجرد نشر النموذج، تأكد من ملاحظة اسم نقطة النهاية، وهو أمر بالغ الأهمية للخطوات المستقبلية.
نقطة نهاية حساب aws-sagemaker
5- إنشاء وظيفة لامدا: يسمح AWS Lambda بتشغيل التعليمات البرمجية الخلفية دون إدارة الخوادم. أنشئ دالة Node.js lambda لاستخدامها في دمج النموذج المنشور.
6- إعداد متغير البيئة: قم بإنشاء متغير بيئة داخل جهاز lambda الخاص بك باسم llama_endpoint بقيمة نقطة نهاية SageMaker.
إعدادات حساب aws-lmabda
7- استيراد Intellinode Lambda: أنت بحاجة إلى استيراد ملف Lambda المضغوط المُجهز الذي ينشئ اتصالاً بنشر SageMaker Llama الخاص بك. هذا التصدير عبارة عن ملف مضغوط، ويمكن العثور عليه في ملف lambda_llama_sagemaker الدليل.
تحميل حساب aws-lambda من ملف مضغوط
8- تكوين بوابة API: انقر فوق خيار "إضافة مشغل" في صفحة وظيفة Lambda، وحدد "بوابة API" من قائمة المشغلات المتاحة.
مشغل حساب aws-lambda
مشغل بوابة حساب aws-api
9- إعدادات وظيفة لامدا: قم بتحديث دور lambda لمنح الأذونات اللازمة للوصول إلى نقاط نهاية SageMaker. بالإضافة إلى ذلك، يجب تمديد فترة المهلة الخاصة بالوظيفة لاستيعاب وقت المعالجة. قم بإجراء هذه التعديلات في علامة التبويب "التكوين" في وظيفة Lambda لديك.
انقر فوق اسم الدور لتحديث الأذونات وتوفير الإذن للوصول إلى sagemaker:
دور حساب aws لامدا
أخيرًا، سنوضح خطوات دمج Openai ChatGPT كخيار آخر في بنية الخدمة الصغيرة:
كود المؤلف
احصل على المفتاح التجريبي الخاص بك من منصة.openai.com.
قم أولاً بتصدير مفتاح API في جهازك الطرفي كما يلي:
كود المؤلف
ثم قم بتشغيل تطبيق العقدة:
node app.js
اكتب عنوان URL التالي في المتصفح لاختبار خدمة chatGPT:
http://localhost:3000/chatgpt?message=hello
لقد قمنا ببناء خدمة صغيرة مدعومة بإمكانيات نماذج اللغات الكبيرة مثل Llama V2 وChatGPT من OpenAI. يفتح هذا التكامل الباب للاستفادة من سيناريوهات الأعمال التي لا نهاية لها والمدعومة بالذكاء الاصطناعي المتقدم.
من خلال ترجمة متطلبات التعلم الآلي الخاصة بك إلى خدمات صغيرة منفصلة، يمكن أن يحصل تطبيقك على فوائد المرونة وقابلية التوسع. بدلاً من تكوين عملياتك لتتناسب مع قيود النموذج الموحد، يمكن الآن إدارة وظيفة نماذج اللغة وتطويرها بشكل فردي؛ يعد هذا بكفاءة أفضل واستكشاف الأخطاء وإصلاحها وإدارة الترقية بشكل أسهل.
مراجع حسابات
- واجهة برمجة تطبيقات ChatGPT: الصفحة .
- واجهة برمجة التطبيقات المتماثلة: الصفحة .
- بداية سريعة لـ SageMaker Llama: الصفحة
- البدء بـ IntelliNode: الصفحة
- الكود الكامل لـ GitHub repo: الصفحة
أحمد البرقاوي هو مهندس وماجستير في علوم البيانات في جامعة إلينوي أوربانا شامبين.
- محتوى مدعوم من تحسين محركات البحث وتوزيع العلاقات العامة. تضخيم اليوم.
- PlatoData.Network Vertical Generative Ai. تمكين نفسك. الوصول هنا.
- أفلاطونايستريم. ذكاء Web3. تضخيم المعرفة. الوصول هنا.
- أفلاطون السيارات / المركبات الكهربائية ، كربون، كلينتك ، الطاقة، بيئة، شمسي، إدارة المخلفات. الوصول هنا.
- أفلاطون هيلث. التكنولوجيا الحيوية وذكاء التجارب السريرية. الوصول هنا.
- تشارت بريم. ارفع مستوى لعبة التداول الخاصة بك مع ChartPrime. الوصول هنا.
- BlockOffsets. تحديث ملكية الأوفست البيئية. الوصول هنا.
- المصدر https://www.kdnuggets.com/building-microservice-for-multichat-backends-using-llama-and-chatgpt?utm_source=rss&utm_medium=rss&utm_campaign=building-microservice-for-multi-chat-backends-using-llama-and-chatgpt