Firebase Genkit มีการผสานรวมในตัวที่ช่วยให้คุณทำให้โฟลว์ใช้งานได้กับ Firebase Cloud Functions และ Google Cloud Run แล้ว แต่คุณยังสามารถทำให้กระบวนการใช้งานได้ในแพลตฟอร์มใดก็ตามที่ให้บริการแอป Express.js ได้ ไม่ว่าจะเป็นบริการระบบคลาวด์หรือโฮสต์ด้วยตนเอง
ตัวอย่างเช่น หน้านี้จะอธิบายกระบวนการทำให้โฟลว์ตัวอย่างเริ่มต้นใช้งานได้
ติดตั้งเครื่องมือที่จำเป็น ดังนี้
- ตรวจสอบว่าคุณใช้โหนดเวอร์ชัน 20 ขึ้นไป (เรียกใช้
node --version
เพื่อตรวจสอบ)
- ตรวจสอบว่าคุณใช้โหนดเวอร์ชัน 20 ขึ้นไป (เรียกใช้
สร้างไดเรกทอรีสำหรับโปรเจ็กต์ตัวอย่าง Genkit ดังนี้
export GENKIT_PROJECT_HOME=~/tmp/genkit-express-project
mkdir -p $GENKIT_PROJECT_HOME
cd $GENKIT_PROJECT_HOME
หากคุณจะใช้ IDE ให้เปิดไดเรกทอรีนี้
เริ่มต้นโปรเจ็กต์ Nodejs ด้วยคำสั่งต่อไปนี้
npm init -y
เริ่มต้นโปรเจ็กต์ Genkit:
genkit init
เลือก
Node.js
เป็นตัวเลือกแพลตฟอร์มการทำให้ใช้งานได้ (มีเทมเพลตสำหรับ Firebase Cloud Functions และ Google Cloud Run ให้ใช้งาน)เลือกรุ่นของคุณ:
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
เลือกคำตอบเริ่มต้นสำหรับคำถามที่เหลือ ซึ่งจะเป็นการเริ่มต้นโฟลเดอร์โครงการด้วยโค้ดตัวอย่าง
สร้างและเรียกใช้โค้ดตัวอย่าง
npm run build
genkit flow:run menuSuggestionFlow "\"banana\"" -s
ไม่บังคับ: เริ่ม UI ของนักพัฒนาซอฟต์แวร์ โดยทำดังนี้
genkit start
จากนั้นไปที่ http://localhost:4000/flows และเรียกใช้ขั้นตอนนี้โดยใช้ UI ของนักพัฒนาซอฟต์แวร์
เมื่อเสร็จแล้ว ให้กด Ctrl+C ในคอนโซลเพื่อออกจาก UI
ลองใช้อุปกรณ์ปลายทาง Express
npm run start
จากนั้นให้ทำดังนี้ในหน้าต่างอื่น
curl -X POST "http://127.0.0.1:3400/menuSuggestionFlow?stream=true" -H "Content-Type: application/json" -d '{"data": "banana"}'
หากทุกอย่างทำงานตามที่คาดไว้ คุณสามารถทำให้โฟลว์ใช้งานได้กับผู้ให้บริการที่คุณเลือก รายละเอียดจะขึ้นอยู่กับผู้ให้บริการ แต่โดยทั่วไปคุณต้องกำหนดการตั้งค่าต่อไปนี้
การตั้งค่า ค่า รันไทม์ Node.js 20 ขึ้นไป คำสั่งบิลด์ npm run build
คำสั่งเริ่มต้น npm run start
ตัวแปรสภาพแวดล้อม GOOGLE_API_KEY=<your-api-key>
(หรือข้อมูลลับใดก็ตามที่จำเป็นต้องมี)