نشر التدفقات إلى أي نظام أساسي Node.js

يتضمّن Firebase Genkit عمليات تكامل مدمجة تساعدك في نشر مساراتك إلى وظائف السحابة الإلكترونية من Firebase وGoogle Cloud Run، ولكن يمكنك أيضًا نشر عمليات التدفق على أي نظام أساسي يمكنه عرض تطبيق Express.js، سواء كان خدمة سحابية أو خدمة ذاتية الاستضافة.

هذه الصفحة، كمثال، ترشدك خلال عملية نشر النموذج الافتراضي لتدفق النموذج.

  1. تثبيت الأدوات المطلوبة:

    • تأكّد من استخدام الإصدار 20 من العقدة أو إصدار أحدث (شغِّل node --version للتحقّق).
  2. إنشاء دليل لمشروع Genkit النموذجي:

    export GENKIT_PROJECT_HOME=~/tmp/genkit-express-project
    mkdir -p $GENKIT_PROJECT_HOME
    cd $GENKIT_PROJECT_HOME
    

    إذا كنت ستستخدم بيئة تطوير متكاملة (IDE)، افتحه في هذا الدليل.

  3. إعداد مشروع العقدة:

    npm init -y
    
  4. إعداد مشروع Genkit:

    genkit init
    
    1. اختَر Node.js كخيار منصة النشر (تتوفّر أيضًا نماذج لوظائف السحابة الإلكترونية من Firebase وGoogle Cloud Run).

    2. حدد النموذج:

      Gemini (تكنولوجيات الذكاء الاصطناعي من Google)

      أبسط طريقة للبدء هي استخدام Google AI Gemini API. يُرجى التأكّد من أنّه متاح في منطقتك.

      أنشِئ مفتاح واجهة برمجة تطبيقات لواجهة Gemini API باستخدام Google AI Studio. بعد ذلك، اضبط متغيّر البيئة GOOGLE_API_KEY على المفتاح:

      export GOOGLE_API_KEY=<your API key>
      

      Gemini (Vertex AI)

      إذا لم تكن واجهة برمجة التطبيقات Google AI Gemini API متاحة في منطقتك، ننصحك باستخدام Vertex AI API التي توفّر أيضًا Gemini ونماذج أخرى. عليك أن يكون لديك مشروع على Google Cloud تم تفعيل الفوترة فيه، وتفعيل AI Platform API، وضبط بعض متغيّرات البيئة الإضافية:

      gcloud services enable aiplatform.googleapis.com
      export GCLOUD_PROJECT=<your project ID>
      export GCLOUD_LOCATION=us-central1
      

      يُرجى الانتقال إلى https://cloud.google.com/vertex-ai/generative-ai/pricing للاطّلاع على أسعار Vertex AI.

    3. اختر الإجابات الافتراضية لبقية الأسئلة، والتي ستهيئ مجلد مشروعك ببعض التعليمات البرمجية.

  5. إنشاء نموذج التعليمة البرمجية وتشغيله:

    npm run build
    genkit flow:run menuSuggestionFlow "\"banana\"" -s
    
  6. اختياري: بدء واجهة مستخدم المطوّر:

    genkit start
    

    وبعد ذلك، انتقِل إلى http://localhost:4000/flows ونفِّذ الخطوات باستخدام واجهة مستخدم المطوِّر.

    عند الانتهاء، اضغط على Ctrl+C في وحدة التحكم لإنهاء واجهة المستخدم.

  7. جرب نقطة نهاية Express:

    npm run start
    

    وبعد ذلك، في نافذة أخرى:

    curl -X POST "http://127.0.0.1:3400/menuSuggestionFlow?stream=true" -H "Content-Type: application/json"  -d '{"data": "banana"}'
    
  8. إذا كان كل شيء يسير كما هو متوقع، يمكنك نشر التدفق إلى المزود الذي تختاره. ستعتمد التفاصيل على موفر الخدمة، ولكن عليك بشكل عام ضبط الإعدادات التالية:

    الإعدادات القيمة
    وقت التشغيل Node.js 20 أو أحدث
    أمر الإصدار npm run build
    بدء الأمر npm run start
    متغيرات البيئة GOOGLE_API_KEY=<your-api-key> (أو أي أسرار مطلوبة)