หน้านี้จะตอบคำถามที่พบบ่อย (FAQ) และ ข้อมูลการแก้ปัญหาเกี่ยวกับ SDK ของ Gemini API และ Firebase AI Logic หากมีคำถามเพิ่มเติม โปรดดู Gemini API คำถามที่พบบ่อย ในเอกสารประกอบของ Google Cloud
แดชบอร์ดสถานะ
Vertex AI Gemini API (
Vertex Gemini API
และVertex Imagen API
)
คำถามที่พบบ่อยทั่วไป
เหตุใดจึงเปลี่ยนชื่อจาก "Vertex AI in Firebase" เป็น "Firebase AI Logic"
ในปี 2024 เราได้เปิดตัวชุด SDK ไคลเอ็นต์ Firebase ที่ใช้ Vertex AI Gemini API รวมถึงเกตเวย์พร็อกซี Firebase เพื่อปกป้อง API ดังกล่าวจากการละเมิดและเปิดใช้การผสานรวมกับผลิตภัณฑ์อื่นๆ ของ Firebase เราตั้งชื่อผลิตภัณฑ์ว่า "Vertex AI ใน Firebase" และชื่อผลิตภัณฑ์นี้อธิบายกรณีการใช้งานที่มีให้ของผลิตภัณฑ์ได้อย่างถูกต้องในขณะนั้น
แต่หลังจากนั้นเราก็ได้ขยายความสามารถของผลิตภัณฑ์ เช่น ตั้งแต่เดือนพฤษภาคม 2025 เป็นต้นไป เราจะรองรับ Gemini Developer API รวมถึงความสามารถในการปกป้อง Gemini Developer API จากการละเมิด โดยใช้การผสานรวมกับ Firebase App Check
ด้วยเหตุนี้ ชื่อ "Vertex AI ใน Firebase" จึงไม่แสดงถึงขอบเขตที่ขยายของผลิตภัณฑ์ของเราได้อย่างถูกต้องอีกต่อไป ดังนั้น ชื่อใหม่ — Firebase AI Logic — จึงสะท้อนถึงชุดฟีเจอร์ที่พัฒนาขึ้นได้ดียิ่งขึ้น และช่วยให้เราขยาย ข้อเสนอของเราต่อไปได้ในอนาคต
ดูคู่มือการย้ายข้อมูล เพื่อให้แน่ใจว่าคุณจะได้รับฟีเจอร์ล่าสุดทั้งหมดจาก Firebase AI Logic (และ เริ่มใช้ Gemini Developer API ได้หากต้องการ)
การใช้ Gemini Developer API กับ Vertex AI Gemini API แตกต่างกันอย่างไร
ความแตกต่างระหว่างผู้ให้บริการ "Gemini API" ทั้ง 2 รายมีดังนี้ โดยทั่วไปไม่ว่าคุณจะเข้าถึงผู้ให้บริการดังกล่าวด้วยวิธีใดก็ตาม
-
Gemini Developer API มี "ระดับฟรี" พร้อมกับ การกำหนดราคาแบบจ่ายตามการใช้งาน
Vertex AI Gemini API เมื่อใช้กับ Firebase AI Logic จะต้องใช้แพ็กเกจราคา Blaze แบบจ่ายเมื่อใช้เสมอ
โปรดทราบว่าผู้ให้บริการ API ทั้ง 2 รายมีราคาแบบจ่ายตามการใช้งานที่แตกต่างกัน (ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของแต่ละราย)
-
Gemini Developer API มีการจำกัดอัตราอย่างชัดเจน
Vertex AI Gemini API ใช้ "โควต้าที่ใช้ร่วมกันแบบไดนามิก (DSQ)" ซึ่ง ทุกคนที่ใช้โมเดลนั้นในภูมิภาคนั้นจะใช้ร่วมกัน นอกจากนี้ คุณยังเลือก ตั้งค่าปริมาณงานที่จัดสรร (PT) ได้ด้วย
การระบุตำแหน่งสำหรับการเข้าถึงโมเดล
- มีเพียง Vertex AI Gemini API เท่านั้นที่ให้คุณเลือกสถานที่ตั้ง ที่คุณเข้าถึงโมเดลได้
ตารางต่อไปนี้แสดงความพร้อมใช้งานของฟีเจอร์ที่มักมีคำถามเกี่ยวกับ ผู้ให้บริการ "Gemini API" ทั้ง 2 ราย ตารางนี้ใช้เฉพาะเมื่อ ใช้ Firebase AI Logic SDK ของไคลเอ็นต์
ฟีเจอร์ | Gemini Developer API | Vertex AI Gemini API |
---|---|---|
การสนับสนุนสำหรับรุ่น Gemini | รองรับ | รองรับ |
การสนับสนุนสำหรับรุ่น Imagen |
รองรับ
(ยังไม่รองรับสำหรับ Unity) |
รองรับ
(ยังไม่รองรับสำหรับ Unity) |
การสนับสนุนสำหรับรุ่น Veo | ยังไม่รองรับ | ยังไม่รองรับ |
การสนับสนุนสำหรับ Gemini Live API | ยังไม่รองรับ |
รองรับ
(Android, Flutter และ Unity เท่านั้น) |
การผสานรวมกับ Firebase App Check | รองรับ | รองรับ |
ใช้งานร่วมกับ Firebase Remote Config ได้ | รองรับ | รองรับ |
การรองรับการตรวจสอบ AI ในคอนโซล Firebase | ยังไม่รองรับ | รองรับ |
การรองรับ URL ของ Cloud Storage | ยังไม่รองรับ 1 |
ไฟล์สาธารณะและ ไฟล์ที่ได้รับการปกป้องโดย Firebase Security Rules |
การรองรับ URL ของ YouTube และ URL ของเบราว์เซอร์ | URL ของ YouTube เท่านั้น | URL ของ YouTube และ URL ของเบราว์เซอร์ |
1 Files API สำหรับ Gemini Developer API ไม่รองรับผ่าน SDK ของ Firebase AI Logic
ฉันจะใช้ทั้ง Gemini Developer API และ Vertex AI Gemini API ได้ไหม
ได้ คุณเปิดใช้ทั้งผู้ให้บริการ "Gemini API" ในโปรเจ็กต์ Firebase และใช้ทั้ง 2 API ในแอปได้
หากต้องการสลับผู้ให้บริการ API ในโค้ด เพียงตรวจสอบว่าคุณได้ตั้งค่าบริการแบ็กเอนด์อย่างเหมาะสมในโค้ด
API ที่จำเป็นมีอะไรบ้าง และฉันจะเปิดใช้ฟีเจอร์เหล่านี้ได้อย่างไร
เลือกผู้ให้บริการ Gemini API เพื่อดูเนื้อหาเฉพาะของผู้ให้บริการ |
หากต้องการใช้ SDK ของ Firebase AI Logic กับ Gemini Developer API โปรเจ็กต์ของคุณต้องเปิดใช้ API 2 รายการต่อไปนี้
- Gemini Developer API (
generativelanguage.googleapis.com
) - Firebase AI Logic API (
firebasevertexai.googleapis.com
)
คุณควรเปิดใช้ API ทั้ง 2 รายการนี้โดยใช้คอนโซล Firebase
ในFirebase Console ให้ไปที่หน้า Firebase AI Logic
คลิกเริ่มต้นใช้งาน
เลือกเพื่อเริ่มต้นใช้งาน Gemini Developer API
ซึ่งจะเปิดตัวเวิร์กโฟลว์แบบมีคำแนะนำที่เปิดใช้ API ทั้ง 2 รายการให้คุณ คอนโซลจะสร้างคีย์ Gemini API รวมถึงเพิ่ม Firebase AI Logic API ลงในรายการที่อนุญาตสำหรับคีย์ Firebase API ด้วย
ใช้โมเดลใดกับ Firebase AI Logic SDK ได้บ้าง
ดูรายการรุ่นที่รองรับได้ใน ดูข้อมูลเกี่ยวกับรุ่นที่รองรับ เราเพิ่มความสามารถใหม่ๆ ลงใน SDK อยู่บ่อยครั้ง ดังนั้นโปรดกลับมาดูคำถามที่พบบ่อยนี้เพื่อดูข้อมูลอัปเดต (รวมถึงในหมายเหตุประจำรุ่น บล็อก และโพสต์ในโซเชียล)
Gemini Developer API
คุณใช้โมเดลพื้นฐาน Gemini และ Imagen ได้
โปรดทราบว่า Gemini Developer API (ไม่ว่าจะเข้าถึงด้วยวิธีใด)
รองรับเฉพาะการสร้างรูปภาพโดยโมเดล imagen-3.0-fast-generate-002
Vertex AI Gemini API
คุณใช้โมเดลพื้นฐาน Gemini และ Imagen ได้
ไม่ว่าคุณจะเลือกGemini APIผู้ให้บริการรายใดก็ตาม
Firebase AI Logic ไม่รองรับรายการต่อไปนี้
Geminiโมเดลที่ไม่ใช่โมเดลพื้นฐาน (เช่น โมเดล PaLM, โมเดลที่ปรับแต่ง หรือโมเดลที่อิงตาม Gemma)
Imagenรุ่นเก่าหรือ
imagen-3.0-capability-001
สิ่งที่ต้องทำเมื่อเลิกใช้งานโมเดล
เมื่อเผยแพร่โมเดลเวอร์ชันเสถียร เราจะพยายามทำให้โมเดลพร้อมใช้งานอย่างน้อย 1 ปี เราแสดง "วันที่เลิกใช้งาน" นี้ในหลายที่ใน Firebase และGoogle Cloudเอกสารประกอบ (เช่น ในหน้า"โมเดล")
เมื่อเลิกใช้งานโมเดลแล้ว คำขอใดๆ ที่ส่งไปยังโมเดลนั้นจะล้มเหลวและแสดงข้อผิดพลาด 404 ด้วยเหตุนี้ เราจึงขอแนะนำให้คุณตั้งค่าและใช้ Firebase Remote Config เพื่อให้คุณสามารถ เปลี่ยนโมเดลและเวอร์ชันในแอปแบบไดนามิก โดยไม่ต้องเปิดตัวแอปเวอร์ชันใหม่
เมื่ออัปเดตแอปให้ใช้โมเดลเวอร์ชันใหม่ เราขอแนะนำให้ทดสอบแอปเพื่อให้มั่นใจว่าคำตอบยังคงเป็นไปตามที่คาดไว้ โปรดทราบว่าเมื่อใช้ Firebase AI Logic โดยปกติแล้วไม่จำเป็นต้องแก้ไขโค้ดใดๆ ที่เรียกใช้โมเดลจริง
วันที่เลิกใช้งานสำหรับโมเดลต่างๆ มีดังนี้
Gemini 1.5 Pro รุ่น
gemini-1.5-pro-002
(และgemini-1.5-pro
): 24 กันยายน 2025gemini-1.5-pro-001
: 24 พฤษภาคม 2025
Gemini 1.5 Flash รุ่น
gemini-1.5-flash-002
(และgemini-1.5-flash
): 24 กันยายน 2025gemini-1.5-flash-001
: 24 พฤษภาคม 2025
Gemini 1.0 Pro Vision: 21 เมษายน 2025 (กำหนดการเดิมคือ 9 เมษายน 2025)
Gemini 1.0 Pro: 21 เมษายน 2025 (กำหนดการเดิมคือ 9 เมษายน 2025)
ฉันจะตั้งค่าขีดจำกัดของอัตราต่อผู้ใช้ได้อย่างไร
โดยค่าเริ่มต้น Firebase AI Logic จะกำหนดขีดจำกัดคำขอต่อผู้ใช้ที่ 100 คำขอต่อนาที (RPM)
หากต้องการปรับขีดจำกัดอัตราต่อผู้ใช้ คุณต้องปรับการตั้งค่าโควต้าสำหรับ API ของ Firebase AI Logic
ดูข้อมูลเพิ่มเติมเกี่ยวกับFirebase AI Logic โควต้า API ในหน้านั้น คุณยังดูวิธีดูและแก้ไขโควต้าได้ด้วย
ต้องใช้สิทธิ์ใดบ้างในการใช้ SDK ของ Firebase AI Logic
การดำเนินการ | สิทธิ์ IAM ที่จำเป็น | บทบาท IAM ที่มีสิทธิ์ที่จำเป็นโดยค่าเริ่มต้น |
---|---|---|
อัปเกรดการเรียกเก็บเงินเป็นแพ็กเกจราคาแบบจ่ายเมื่อใช้ (Blaze) | firebase.billingPlans.update resourcemanager.projects.createBillingAssignment resourcemanager.projects.deleteBillingAssignment
|
เจ้าของ |
เปิดใช้ API ในโปรเจ็กต์ | serviceusage.services.enable |
เอดิเตอร์ เจ้าของ |
สร้างแอป Firebase | firebase.clients.create |
ผู้ดูแลระบบ Firebase ผู้แก้ไข เจ้าของ |
Firebase AI Logic ใช้ข้อมูลของฉันเพื่อฝึกโมเดลไหม
ฉันต้องระบุประเภท MIME ในคำขอแบบมัลติโมดัลไหม (เช่น สำหรับอินพุตรูปภาพ, PDF, วิดีโอ และเสียง)
ได้ คุณต้องระบุข้อมูลต่อไปนี้ในคำขอแบบมัลติโมดอลทุกครั้ง
mimeType
ของไฟล์ ดูข้อยกเว้นด้านล่างไฟล์ คุณระบุไฟล์เป็นข้อมูลแบบอินไลน์หรือระบุไฟล์โดยใช้ URL ก็ได้
ดูข้อมูลเกี่ยวกับประเภทไฟล์อินพุตที่รองรับ วิธีระบุประเภท MIME และตัวเลือก 2 รายการสำหรับการระบุไฟล์ในไฟล์อินพุตที่รองรับและข้อกำหนด
ข้อยกเว้นในการรวมประเภท MIME ไว้ในคำขอ
ข้อยกเว้นในการระบุประเภท MIME คืออินพุตรูปภาพในบรรทัดสำหรับ คำขอจากแอปแพลตฟอร์ม Android และ Apple แบบเนทีฟ
Firebase AI Logic SDK สำหรับแพลตฟอร์ม Android และ Apple มีวิธีที่ง่ายและเป็นมิตรกับแพลตฟอร์มในการจัดการรูปภาพในคำขอ โดยระบบจะแปลงรูปภาพทั้งหมด (ไม่ว่าจะมีรูปแบบใดก็ตาม) เป็น JPEG ที่คุณภาพ 80% ฝั่งไคลเอ็นต์ก่อนที่จะส่งไปยังเซิร์ฟเวอร์ ซึ่งหมายความว่าเมื่อคุณระบุ รูปภาพเป็นข้อมูลแบบอินไลน์โดยใช้ SDK ของแพลตฟอร์ม Android และ Apple คุณก็ไม่ จำเป็นต้องระบุประเภท MIME ในคำขอ
การจัดการที่ง่ายขึ้นนี้แสดงอยู่ในFirebase AI Logicเอกสารประกอบใน ตัวอย่างการส่งรูปภาพที่เข้ารหัส Base64 ในคำขอ
โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์นี้สำหรับแต่ละแพลตฟอร์ม
สำหรับ Android
คุณสามารถใช้ประโยชน์จากวิธีที่ง่ายขึ้นในการจัดการรูปภาพประเภทดั้งเดิมของแพลตฟอร์ม (
Bitmap
) ในพรอมต์มัลติโมดัลที่มีรูปภาพเป็นข้อมูลแบบอินไลน์ (ดูตัวอย่าง)หากต้องการควบคุมรูปแบบและการแปลงรูปภาพให้มากขึ้น คุณอาจระบุรูปภาพเป็น
InlineDataPart
และระบุประเภท MIME ที่เฉพาะเจาะจง เช่นcontent { inlineData(/* PNG as byte array */, "image/png") }
สำหรับแพลตฟอร์มของ Apple
คุณสามารถใช้ประโยชน์จากวิธีที่ง่ายขึ้นในการจัดการประเภทรูปภาพดั้งเดิมของแพลตฟอร์ม (
UIImage
,NSImage
,CIImage
และCGImage
) ในพรอมต์มัลติโมดอลที่มีรูปภาพเป็นข้อมูลแบบอินไลน์ (ดูตัวอย่าง)หากต้องการควบคุมรูปแบบและการแปลงรูปภาพให้มากขึ้น คุณอาจระบุรูปภาพเป็น
InlineDataPart
และระบุประเภท MIME ที่เฉพาะเจาะจง เช่นInlineDataPart(data: Data(/* PNG Data */), mimeType: "image/png")
ฟีเจอร์เหล่านี้พร้อมใช้งานเมื่อใช้ Firebase AI Logic ไหม การแคชบริบท การค้นหาเป็นเครื่องมือ การอ้างอิงจาก Google Search การดำเนินการโค้ด การปรับแต่งโมเดล การสร้างการฝัง และการดึงข้อมูลเชิงความหมาย
การแคชบริบท การค้นหาเป็นเครื่องมือ การอ้างอิงด้วย Google Search การเรียกใช้โค้ด การปรับแต่งโมเดล การสร้างการฝัง และการดึงข้อมูลเชิงความหมาย ได้รับการรองรับโดยโมเดลต่างๆ หรือ Vertex AI Gemini API แต่ จะใช้ไม่ได้เมื่อใช้ Firebase AI Logic
หากต้องการเพิ่มฟีเจอร์เหล่านี้เป็นคำขอฟีเจอร์หรือโหวตคำขอฟีเจอร์ที่มีอยู่ โปรดไปที่ Firebase UserVoice
Gemini คำถามที่พบบ่อยเกี่ยวกับคีย์ API
คำถามที่พบบ่อยเหล่านี้ใช้ได้ในกรณีที่คุณใช้ Gemini Developer API เท่านั้น
Gemini คีย์ API คืออะไร
Gemini Developer API ใช้ "คีย์ API ของ Gemini" เพื่อให้สิทธิ์ ผู้โทร ดังนั้น หากคุณใช้ Gemini Developer API ผ่าน SDK Firebase AI Logic คุณจะต้องมีGemini คีย์ API ที่ถูกต้องในโปรเจ็กต์ Firebase เพื่อทำการเรียก API นั้น
"Gemini คีย์ API" หมายถึงคีย์ API ที่มี Gemini Developer API ในรายการที่อนุญาตของ API
เมื่อคุณทำตามFirebase AI Logicเวิร์กโฟลว์การตั้งค่า ในคอนโซล Firebase เราจะสร้างคีย์ API Gemini ที่จำกัดไว้สำหรับ Gemini Developer API เท่านั้น และตั้งค่าบริการพร็อกซี Firebase AI Logic ให้ใช้คีย์ API นี้ คีย์ API ที่ Firebase สร้างขึ้นนี้ Geminiมีชื่อว่า คีย์ API สำหรับนักพัฒนาแอป Gemini (สร้างโดย Firebase โดยอัตโนมัติ) ในหน้าข้อมูลเข้าสู่ระบบของGoogle Cloudคอนโซล
ดูข้อมูลเพิ่มเติมเกี่ยวกับ การจำกัด API สำหรับคีย์ API
คุณไม่ต้องเพิ่มคีย์ Gemini API ลงในโค้ดเบสของแอปเมื่อ ใช้ SDK ของ Firebase AI Logic ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีรักษาคีย์ API Geminiให้ปลอดภัย
ฉันควรเพิ่มGeminiคีย์ API ลงในโค้ดเบสของแอปบนอุปกรณ์เคลื่อนที่หรือเว็บแอปไหม
เมื่อใช้ SDK ของ Firebase AI Logic โปรดอย่าเพิ่มคีย์ API ของ Gemini ลงในโค้ดเบสของแอป
ในความเป็นจริงแล้ว ขณะพัฒนาด้วย Firebase AI Logic SDK คุณไม่จำเป็นต้องโต้ตอบกับคีย์ API ของ Gemini โดยตรง แต่Firebase AI Logicบริการพร็อกซีของเราจะใส่คีย์ API ในแต่ละคำขอไปยัง Gemini Developer API ภายใน —ในแบ็กเอนด์ทั้งหมดGemini
ฉันจะเปลี่ยนGeminiคีย์ API ที่ใช้เรียกGemini Developer APIได้อย่างไร
เมื่อใช้ SDK ของ Firebase AI Logic คุณไม่น่าจะต้องเปลี่ยนคีย์ API ของ Gemini อย่างไรก็ตาม มี 2 กรณีที่คุณอาจต้องดำเนินการดังนี้
หากคุณทำคีย์หลุดโดยไม่ได้ตั้งใจและต้องการแทนที่ด้วยคีย์ใหม่ที่ปลอดภัยกว่า
หากคุณลบคีย์โดยไม่ตั้งใจ โปรดทราบว่าคุณสามารถยกเลิกการลบคีย์ได้ภายใน 30 วันนับจากวันที่ลบ
วิธีเปลี่ยนคีย์ API ของ Gemini ที่ SDK ของ Firebase AI Logic ใช้มีดังนี้
หากGeminiคีย์ API ที่ Firebase สร้างขึ้นยังคงมีอยู่ ให้ลบคีย์ดังกล่าว
คุณลบคีย์ API นี้ได้ในแผง API และบริการ > ข้อมูลเข้าสู่ระบบ ของคอนโซล Google Cloud โดยมีชื่อว่า
คีย์ API ของนักพัฒนาแอป Gemini (สร้างโดย Firebase โดยอัตโนมัติ)ในหน้าเดียวกันของGoogle Cloudคอนโซล สร้างคีย์ API ใหม่ เราขอแนะนำให้ตั้งชื่อคีย์เป็น
คีย์ API ของนักพัฒนาแอป Gemini สำหรับ Firebaseเพิ่มการจำกัด API ให้กับคีย์ API ใหม่นี้ และเลือกเฉพาะ Generative Language API
"Generative Language API" คือสิ่งที่บางครั้งเรียกว่า Gemini Developer API ในคอนโซล Google Cloudอย่าเพิ่มการจํากัดแอป ไม่เช่นนั้นบริการพร็อกซีของ Firebase AI Logic จะทํางานไม่เป็นไปตามที่คาดไว้
เรียกใช้คำสั่งต่อไปนี้เพื่อตั้งค่าคีย์ใหม่นี้เป็นคีย์ API ของ Gemini ที่บริการพร็อกซี Firebase AI Logic ควรใช้
PROJECT_ID="PROJECT_ID" GENERATIVE_LANGUAGE_API_KEY="DEVELOPER_CREATED_GEMINI_API_KEY" curl \ -X PATCH \ -H "x-goog-user-project: ${PROJECT_ID}" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ "https://firebasevertexai.googleapis.com/v1beta/projects/${PROJECT_ID}/locations/global/config" \ -d "{\"generativeLanguageConfig\": {\"apiKey\": \"${GENERATIVE_LANGUAGE_API_KEY}\"}}"
ดูข้อมูลเกี่ยวกับ gcloud CLI
โปรดอย่าเพิ่มคีย์ API Gemini ใหม่นี้ลงในโค้ดเบสของแอป ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีรักษาคีย์ API Geminiให้ปลอดภัย
ฉันใช้ "คีย์ API ของ Firebase" เป็นคีย์ API ของ Gemini ได้ไหม
ไม่ คุณไม่ควรใช้ "คีย์ API ของ Firebase" เป็นคีย์ API ของGemini เราขอแนะนำไม่ให้เพิ่ม Gemini Developer API ลงในรายการที่อนุญาตสำหรับคีย์ API ของ Firebase
คีย์ API ของ Firebase คือคีย์ API ที่แสดงอยู่ใน ไฟล์การกำหนดค่าหรือออบเจ็กต์ Firebase ที่คุณเพิ่มลงในโค้ดเบสของแอปเพื่อ เชื่อมต่อแอปกับ Firebase คุณใส่คีย์ API ของ Firebase ในโค้ดได้เมื่อใช้คีย์กับ API ที่เกี่ยวข้องกับ Firebase เท่านั้น (เช่น Firebase AI Logic) ดูข้อมูลสำคัญเกี่ยวกับคีย์ API ของ Firebase
ในแผง API และบริการ > ข้อมูลเข้าสู่ระบบ ของคอนโซล Google Cloud คีย์ API ของ Firebase จะมีลักษณะดังนี้
เนื่องจากคุณต้องเพิ่มคีย์ API ของ Firebase ลงในโค้ดเบสของแอปเพื่อให้ API ที่เกี่ยวข้องกับ Firebase ทำงานได้ และเนื่องจาก Gemini Developer API ได้รับการให้สิทธิ์ผ่านคีย์ API เราจึงขอแนะนำอย่างยิ่งว่าคุณไม่ควรเพิ่ม Gemini Developer API (เรียกว่า "Generative Language API" ในคอนโซล Google Cloud) ลงในรายการที่อนุญาตของ API สำหรับคีย์ API ของ Firebase หากคุณทำเช่นนั้น คุณจะเปิดเผย Gemini Developer API ต่อการละเมิดที่อาจเกิดขึ้น
ฉันจะเก็บGeminiคีย์ API ให้ปลอดภัยได้อย่างไร
คำถามที่พบบ่อยนี้จะอธิบายแนวทางปฏิบัติแนะนำบางส่วนเพื่อรักษาGeminiคีย์ API ให้ปลอดภัย
หากคุณโทรหาGemini Developer APIโดยตรงจากแอปบนอุปกรณ์เคลื่อนที่หรือเว็บแอป ให้ทำดังนี้
- ใช้ Firebase AI Logic SDK ของไคลเอ็นต์
- อย่าเพิ่มคีย์ API ของ Gemini ลงในโค้ดเบสของแอป
Firebase AI Logic มีบริการพร็อกซีที่รวมคีย์ API ของคุณไว้ภายในในแต่ละคำขอไปยัง Gemini Developer API ในแบ็กเอนด์ทั้งหมดGemini
นอกจากนี้ เราขอแนะนำให้ทำดังนี้
ทันทีที่คุณเริ่มพัฒนาแอปอย่างจริงจัง ให้ผสานรวมกับ Firebase App Check เพื่อช่วย ปกป้องทรัพยากรแบ็กเอนด์ รวมถึง API ที่ใช้เพื่อเข้าถึงโมเดล Generative
อย่านำคีย์ API ที่ Firebase สร้างขึ้นGeminiไปใช้ภายนอก Firebase AI Logic หากต้องการGeminiคีย์ API สำหรับกรณีการใช้งานอื่น ให้สร้างคีย์แยกต่างหาก
โดยทั่วไปแล้ว คุณไม่ควรแก้ไขคีย์ API ที่ Firebase สร้างขึ้น Gemini คีย์นี้มีชื่อว่า คีย์ API ของนักพัฒนาแอป Gemini (สร้างโดย Firebase โดยอัตโนมัติ) ในคอนโซล Google Cloud
อย่าเพิ่ม API อื่นๆ ลงในรายการที่อนุญาตของ API สำหรับGeminiคีย์ API ที่ Firebase สร้างขึ้น ในรายการที่อนุญาตของ API คีย์ API ของคุณควรมีเพียง Gemini Developer API (เรียกว่า "Generative Language API" ในคอนโซลGoogle Cloud)Gemini
อย่าเพิ่มการจํากัดแอป ไม่เช่นนั้นบริการพร็อกซีของ Firebase AI Logic จะทํางานไม่เป็นไปตามที่คาดไว้
Geminiคีย์ API ของฉันถูกแฮ็ก สิ่งที่ต้องทำ
หากGeminiคีย์ API ถูกบุกรุก ให้ทำตามวิธีการเพื่อเปลี่ยนคีย์ API ที่ใช้เรียก Gemini Developer APIGemini
นอกจากนี้ โปรดอ่านแนวทางปฏิบัติแนะนำเพื่อรักษาคีย์ API ของ Gemini ให้ปลอดภัย
แก้ไขข้อผิดพลาด
ฉันจะแก้ไขข้อผิดพลาด 404 นี้ได้อย่างไร Firebase AI Logic genai config not found
หากคุณพยายามใช้ Gemini Developer API และได้รับข้อผิดพลาด 404 ที่ระบุว่า Firebase AI Logic genai config not found
โดยปกติแล้วนั่นหมายความว่าโปรเจ็กต์ Firebase ของคุณไม่มีGeminiคีย์ API ที่ถูกต้องสำหรับใช้กับ Firebase AI Logic SDK ของไคลเอ็นต์
สาเหตุที่พบบ่อยที่สุดของข้อผิดพลาดนี้มีดังนี้
คุณยังไม่ได้ตั้งค่าโปรเจ็กต์ Firebase สำหรับ Gemini Developer API
สิ่งที่ต้องทำ
ไปที่หน้า Firebase AI Logic ในคอนโซล Firebase คลิกเริ่มต้นใช้งาน แล้วเลือก Gemini Developer API เปิดใช้ API แล้วคอนโซลจะตั้งค่าโปรเจ็กต์สำหรับ Gemini Developer API หลังจากเวิร์กโฟลว์เสร็จสมบูรณ์แล้ว ให้ลองส่งคำขออีกครั้งหากคุณเพิ่งทำตามFirebase AI Logicเวิร์กโฟลว์การตั้งค่า ในFirebaseคอนโซล Geminiคีย์ API อาจยังไม่พร้อมใช้งาน สำหรับบริการแบ็กเอนด์ที่จำเป็นทั้งหมดในทุกภูมิภาค
สิ่งที่ต้องทำ
รอสักครู่แล้วลองส่งคำขอใหม่อีกครั้งระบบอาจลบคีย์ API Gemini ออกจากโปรเจ็กต์ Firebase ของคุณ
สิ่งที่ต้องทำ
ดูวิธีเปลี่ยนคีย์ Gemini API ที่ Firebase AI Logic ใช้
ฉันจะแก้ไขข้อผิดพลาด 400 นี้ได้อย่างไร Service agents are being provisioned ... Service agents are needed to read the Cloud Storage file provided.
หากพยายามส่งคำขอแบบมัลติโมดัลด้วย Cloud Storage for Firebase
URL คุณอาจพบข้อผิดพลาด 400 ต่อไปนี้
Service agents are being provisioned ... Service agents are needed to read the Cloud Storage file provided.
ข้อผิดพลาดนี้เกิดจากโปรเจ็กต์ที่ไม่มีตัวแทนบริการที่จำเป็นซึ่งจัดสรรโดยอัตโนมัติอย่างถูกต้องเมื่อมีการเปิดใช้ Vertex AI API ในโปรเจ็กต์ นี่เป็นปัญหาที่ทราบกันดีในบางโปรเจ็กต์ และเรากำลังดำเนินการแก้ไข ทั่วโลก
วิธีแก้ปัญหาเพื่อแก้ไขโปรเจ็กต์และจัดสรรตัวแทนบริการเหล่านี้อย่างถูกต้องเพื่อให้คุณเริ่มรวม Cloud Storage for Firebase URL ในคำขอแบบมัลติโมดัลได้มีดังนี้ คุณต้องเป็นเจ้าของโปรเจ็กต์ และคุณต้องทำชุดงานนี้เพียงครั้งเดียวสำหรับโปรเจ็กต์
เข้าถึงและตรวจสอบสิทธิ์ด้วย gcloud CLI
วิธีที่ง่ายที่สุดในการดำเนินการนี้คือการทำจาก Cloud Shell ดูข้อมูลเพิ่มเติมในGoogle Cloudเอกสารประกอบหากได้รับแจ้ง ให้ทำตามวิธีการที่แสดงในเทอร์มินัลเพื่อgcloud CLIเรียกใช้กับโปรเจ็กต์ Firebase
คุณจะต้องมีรหัสโปรเจ็กต์ Firebase ซึ่งดูได้ที่ด้านบนของsettings การตั้งค่าโปรเจ็กต์ ในคอนโซล Firebase
จัดสรร Agent บริการที่จำเป็นในโปรเจ็กต์โดยเรียกใช้คำสั่งต่อไปนี้
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/endpoints -d ''
รอสักครู่เพื่อให้แน่ใจว่าได้จัดสรรตัวแทนบริการแล้ว จากนั้นลองส่งคำขอแบบมัลติโมดัลอีกครั้งซึ่งมี Cloud Storage for Firebase URL
หากยังคงได้รับข้อผิดพลาดนี้หลังจากรอหลายนาที โปรดติดต่อทีมสนับสนุน Firebase
ฉันจะแก้ไขข้อผิดพลาด 400 นี้ได้อย่างไร API key not valid. Please pass a valid API key.
หากได้รับข้อผิดพลาด 400 ที่ระบุว่า
API key not valid. Please pass a valid API key.
โดยปกติแล้วหมายความว่า
ไม่มีคีย์ API ในไฟล์/ออบเจ็กต์การกำหนดค่า Firebase หรือไม่ได้ตั้งค่า
ให้ใช้กับแอปและ/หรือโปรเจ็กต์ Firebase
ตรวจสอบว่าคีย์ API ที่แสดงในไฟล์/ออบเจ็กต์การกำหนดค่า Firebase ตรงกับคีย์ API ของแอป คุณดูคีย์ API ทั้งหมดได้ในแผง API และบริการ > ข้อมูลเข้าสู่ระบบ ในGoogle Cloud คอนโซล
หากพบว่าไม่ตรงกัน ให้ รับไฟล์/ออบเจ็กต์การกำหนดค่า Firebase ใหม่ แล้วแทนที่ไฟล์/ออบเจ็กต์ที่มีอยู่ในแอป ไฟล์/ออบเจ็กต์การกำหนดค่าใหม่ ควรมีคีย์ API ที่ถูกต้องสำหรับแอปและโปรเจ็กต์ Firebase
ฉันจะแก้ไขข้อผิดพลาด 403 นี้ได้อย่างไร Requests to this API firebasevertexai.googleapis.com ... are blocked.
หากได้รับข้อผิดพลาด 403 ที่ระบุว่า
Requests to this API firebasevertexai.googleapis.com ... are blocked.
โดยปกติแล้วหมายความว่าคีย์ API ในไฟล์/ออบเจ็กต์การกำหนดค่า Firebase
ไม่มี API ที่จำเป็นในรายการที่อนุญาตสำหรับผลิตภัณฑ์ที่คุณพยายาม
ใช้
ตรวจสอบว่าคีย์ API ที่แอปใช้มี API ที่จำเป็นทั้งหมดรวมอยู่ในรายการที่อนุญาตของ "ข้อจำกัด API" ของคีย์ สำหรับ Firebase AI Logic คีย์ API ต้องมี API Firebase AI Logic อย่างน้อยในรายการที่อนุญาต
คุณดูคีย์ API ทั้งหมดได้ในแผง API และบริการ > ข้อมูลเข้าสู่ระบบ ในคอนโซล Google Cloud
ฉันจะแก้ไขข้อผิดพลาด 403 นี้ได้อย่างไร PERMISSION_DENIED: The caller does not have permission.
หากได้รับข้อผิดพลาด 403 ที่ระบุว่า
PERMISSION_DENIED: The caller does not have permission.
โดยปกติแล้วหมายความว่า
คีย์ API ในไฟล์/ออบเจ็กต์การกำหนดค่า Firebase เป็นของโปรเจ็กต์
Firebase อื่น
ตรวจสอบว่าคีย์ API ที่แสดงในไฟล์/ออบเจ็กต์การกำหนดค่า Firebase ตรงกับคีย์ API ของแอป คุณดูคีย์ API ทั้งหมดได้ในแผง API และบริการ > ข้อมูลเข้าสู่ระบบ ในGoogle Cloud คอนโซล
หากพบว่าไม่ตรงกัน ให้ รับไฟล์/ออบเจ็กต์การกำหนดค่า Firebase ใหม่ แล้วแทนที่ไฟล์/ออบเจ็กต์ที่มีอยู่ในแอป ไฟล์/ออบเจ็กต์การกำหนดค่าใหม่ ควรมีคีย์ API ที่ถูกต้องสำหรับแอปและโปรเจ็กต์ Firebase
แสดงความคิดเห็น เกี่ยวกับประสบการณ์การใช้งาน Firebase AI Logic