ทำให้โฟลว์ใช้งานได้ในแพลตฟอร์ม Node.js ทั้งหมด

Firebase Genkit มีการผสานรวมในตัวที่ช่วยให้คุณทำให้โฟลว์ใช้งานได้กับ Firebase Cloud Functions และ 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. เริ่มต้นโปรเจ็กต์ Nodejs ด้วยคำสั่งต่อไปนี้

    npm init -y
    
  4. เริ่มต้นโปรเจ็กต์ Genkit:

    genkit init
    
    1. เลือก Node.js เป็นตัวเลือกแพลตฟอร์มการทำให้ใช้งานได้ (มีเทมเพลตสำหรับ Firebase Cloud Functions และ Google Cloud Run ให้ใช้งาน)

    2. เลือกรุ่นของคุณ:

      Gemini (AI ของ Google)

      วิธีที่ง่ายที่สุดในการเริ่มต้นใช้งานคือการใช้ Google AI Gemini API ตรวจสอบว่าฟีเจอร์นี้พร้อมให้บริการในภูมิภาคของคุณ

      สร้างคีย์ 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
      

      ดูราคาของ Vertex AI ได้ที่ https://cloud.google.com/vertex-ai/generative-ai/pricing

    3. เลือกคำตอบเริ่มต้นสำหรับคำถามที่เหลือ ซึ่งจะเป็นการเริ่มต้นโฟลเดอร์โครงการด้วยโค้ดตัวอย่าง

  5. สร้างและเรียกใช้โค้ดตัวอย่าง

    npm run build
    genkit flow:run menuSuggestionFlow "\"banana\"" -s
    
  6. ไม่บังคับ: เริ่ม UI ของนักพัฒนาซอฟต์แวร์ โดยทำดังนี้

    genkit start
    

    จากนั้นไปที่ http://localhost:4000/flows และเรียกใช้ขั้นตอนนี้โดยใช้ UI ของนักพัฒนาซอฟต์แวร์

    เมื่อเสร็จแล้ว ให้กด Ctrl+C ในคอนโซลเพื่อออกจาก UI

  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> (หรือข้อมูลลับใดก็ตามที่จำเป็นต้องมี)