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