خدمة ChatGPT السحابية هي واجهة خلفية سحابية لـ Node.js مكتوبة بلغة TypeScript والتي تتيح للمطورين تنفيذ خدمة ChatGPT بسهولة في تطبيقاتهم لمستخدميهم. تتعامل هذه الخدمة مع رمز المصادقة وتعدل الطلبات قبل تمريرها إلى ChatGPT API.
باستخدام هذه الخدمة الصغيرة، لم يعد المطورون بحاجة إلى كشف مفاتيح API الخاصة بهم للمستخدمين، مما يوفر طريقة آمنة لإضافة وظيفة ChatGPT إلى تطبيقاتهم.
قبل استخدام خدمة ChatGPT Microservice، تأكد من تثبيت ما يلي:
استنساخ المستودع:
git clone https://github.com/arihantparsoya/chatgpt-cloud-service.git
انتقل إلى دليل المشروع:
cd chatgpt-cloud-service
تثبيت التبعيات:
npm install
افتح ملف .env
في الدليل الجذر للمشروع.
قم بتعيين مفتاح ChatGPT API الخاص بك في ملف .env
:
CHATGPT_API_KEY=your-api-key
لإضافة سياق ومعلومات إلى المطالبات الخاصة بك قبل إرسالها إلى ChatGPT، أضف التفاصيل الإضافية كرسالة في ملف chatController.ts.
ابدأ المشروع:
npm start
سيتم تشغيل الخدمة على http://localhost:3000
.
قم بإجراء طلب POST إلى http://localhost:3000/chat
باستخدام المعلمات التالية:
مثال باستخدام cURL:
curl --location ' http://localhost:3000/chat '
--header ' Content-Type: application/json '
--header ' Authorization: Bearer USER_BEARER_TOKEN '
--data ' {
"model": "gpt-3.5-turbo",
"messages": [
{ "role": "system", "content": "you are a helpful assistant" },
{ "role": "assistant", "content": "Hi there! How can I assist you?" },
{ "role": "user", "content": "What is the population of USA" }
]
} '
ستقوم الخدمة الصغيرة بتعديل الطلب وإعادة توجيهه إلى ChatGPT API. سيتم إرجاع الاستجابة من API إلى المستخدم.
بناء صورة عامل الميناء:
docker build -t chatgpt-cloud-service .
قم بتشغيل حاوية Docker:
docker run -p 3000:3000 chatgpt-cloud-service
سيتم الوصول إلى الخدمة الصغيرة على http://localhost:3000
.
إذا كنت تريد إضافة مصادقة إلى واجهات برمجة التطبيقات الخاصة بك باستخدام Firebase، فيمكنك تمكينها عن طريق تعيين متغير USE_AUTHENTICATION
في ملف .env
:
USE_AUTHENTICATION=false
قم بتكوين Firebase للمصادقة عن طريق إضافة تكوينات Firebase الخاصة بك في ServiceAccountKey.json.
المساهمات هي موضع ترحيب! إذا واجهت أي مشاكل أو لديك اقتراحات للتحسينات، يرجى فتح مشكلة أو إرسال طلب سحب.
مجتمع
انضم إلى مجتمع Discord الخاص بنا للتواصل مع المطورين الآخرين وطرح الأسئلة والحصول على الدعم. رابط إلى مجتمع الديسكورد
تم ترخيص هذا المشروع بموجب ترخيص Apache 2.0. راجع ملف الترخيص لمزيد من التفاصيل.