Firebase AI Logic และ Client SDK ของบริการนี้มีชื่อว่า "Vertex AI in Firebase" ก่อนหน้านี้ **เราได้เปลี่ยนชื่อและจัดแพ็กเกจบริการใหม่เป็น Firebase AI Logic** เพื่อให้สะท้อนถึงบริการและ ฟีเจอร์ที่ขยายเพิ่มขึ้น (เช่น ตอนนี้เรารองรับ Gemini Developer API แล้ว)
หากต้องการเข้าถึงโมเดล Generative AI ของ Google จาก แอปบนอุปกรณ์เคลื่อนที่หรือเว็บแอปโดยตรงอย่างปลอดภัย ตอนนี้คุณสามารถเลือกผู้ให้บริการ "Gemini API" ได้แล้ว ไม่ว่าจะเป็น Vertex AI Gemini API ที่พร้อมให้บริการมานานแล้ว หรือ Gemini Developer API ที่เพิ่งเปิดตัว ซึ่งหมายความว่าตอนนี้คุณมีตัวเลือก ในการใช้ Gemini Developer API ซึ่งมีแพ็กเกจแบบไม่มีค่าใช้จ่าย พร้อมขีดจำกัดอัตราและโควต้าที่สมเหตุสมผล
ภาพรวมของขั้นตอนการย้ายข้อมูลไปยัง Firebase AI Logic SDK
ขั้นตอนที่ 1: เลือกผู้ให้บริการ "Gemini API" ที่ดีที่สุดสำหรับแอปและกรณีการใช้งานของคุณ
ขั้นตอนที่ 2: ตั้งค่าโปรเจ็กต์ Firebase เพื่อให้คุณใช้ Gemini Developer APIได้
ใช้ได้เฉพาะในกรณีที่คุณเปลี่ยนไปใช้ Gemini Developer API แทน Vertex AI Gemini API.ขั้นตอนที่ 3: อัปเดตไลบรารีที่ใช้ในแอป
ขั้นตอนที่ 4: อัปเดตการเริ่มต้นในแอป
ขั้นตอนที่ 5: อัปเดตโค้ดตามฟีเจอร์ที่คุณใช้
ขั้นตอนที่ 1: เลือกผู้ให้บริการ "Gem API" ที่ดีที่สุดสำหรับแอปของคุณ
การย้ายข้อมูลนี้จะช่วยให้คุณมีตัวเลือกผู้ให้บริการ "Gemini API" ดังนี้
SDK "Vertex AI in Firebase" เวอร์ชันเก่าใช้ได้เฉพาะ Vertex AI Gemini API
SDK เวอร์ชันใหม่ช่วยให้คุณเลือกผู้ให้บริการ"Gemini API" ที่ต้องการเรียกใช้จากแอปบนอุปกรณ์เคลื่อนที่หรือเว็บแอปได้โดยตรง ไม่ว่าจะเป็น Gemini Developer API หรือ Vertex AI Gemini APIFirebase AI Logic
โปรดดู ความแตกต่างระหว่างการใช้ผู้ให้บริการGemini APIทั้ง 2 ราย โดยเฉพาะในแง่ของฟีเจอร์ที่รองรับ ราคา และขีดจำกัดอัตรา ตัวอย่างเช่น Gemini Developer API ไม่รองรับการระบุ ไฟล์โดยใช้ Cloud Storage URL แต่ API นี้อาจเป็นตัวเลือกที่ดีหากคุณต้องการ ใช้ประโยชน์จากแพ็กเกจแบบไม่มีค่าใช้จ่ายและโควต้าที่สมเหตุสมผล
หากต้องการใช้ Vertex AI Gemini APIต่อไป:
ให้ข้ามขั้นตอนถัดไปและไปที่ การอัปเดตไลบรารีในแอป, จากนั้นทำตามส่วนที่เหลือของคำแนะนำนี้หากต้องการเปลี่ยนไปใช้ Gemini Developer API:
ให้ทำตามขั้นตอนถัดไปเพื่อ ตั้งค่าโปรเจ็กต์ Firebase ให้ใช้ API นั้น, จากนั้นทำตามส่วนที่เหลือของคำแนะนำนี้
ขั้นตอนที่ 2: ตั้งค่าโปรเจ็กต์ Firebase เพื่อให้คุณใช้ Gemini Developer API ได้
ขั้นตอนนี้จำเป็นเฉพาะในกรณีที่คุณต้องการเปลี่ยนไปใช้ Gemini Developer API กับ Firebase AI Logic Client SDK แต่หากต้องการใช้ ต่อไป ให้ข้ามไปยังขั้นตอนถัดไปVertex AI Gemini API
โปรดทราบว่าคุณสามารถเปิดใช้ผู้ให้บริการ "Gemini API" ทั้ง 2 รายในโปรเจ็กต์พร้อมกันได้
ในคอนโซล Firebase ให้ไปที่บริการ AI > AI Logic
ไปที่แท็บการตั้งค่า แล้วเลือก Gemini Developer API
เปิดใช้ Gemini Developer API
คอนโซลจะตรวจสอบว่าได้เปิดใช้ API ที่จำเป็นแล้ว และสร้างคีย์ Gemini API ในโปรเจ็กต์ Firebase
**อย่า** เพิ่มคีย์ Gemini API นี้ลงในฐานของโค้ดของแอป ดูข้อมูลเพิ่มเติมทำตามคำแนะนำในการย้ายข้อมูลนี้ต่อไปเพื่ออัปเดตไลบรารีและการเริ่มต้นในแอป
ขั้นตอนที่ 3: อัปเดตไลบรารีที่ใช้ในแอป
อัปเดตฐานของโค้ดของแอปให้ใช้ไลบรารี Firebase AI Logic
Swift
เปิดโปรเจ็กต์แอปใน Xcode แล้วอัปเดตแพ็กเกจ Firebase เป็น v11.13.0 ขึ้นไปโดยใช้ตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้
ตัวเลือกที่ 1: อัปเดตแพ็กเกจทั้งหมด โดยไปที่ File > Packages > Update to Latest Package Versions
ตัวเลือกที่ 2: อัปเดต Firebase ทีละรายการ โดยไปที่แพ็กเกจ Firebase ในส่วนที่ชื่อว่า Package Dependencies คลิกขวาที่แพ็กเกจ Firebase แล้วเลือก Update Package
ตรวจสอบว่าแพ็กเกจ Firebase แสดง v11.13.0 ขึ้นไปแล้ว หากไม่เป็นเช่นนั้น ให้ตรวจสอบว่าข้อกำหนดของแพ็กเกจที่ระบุอนุญาตให้อัปเดตเป็น v11.13.0 ขึ้นไป
เลือกเป้าหมายของแอปในโปรแกรมแก้ไขโปรเจ็กต์ แล้วไปที่ส่วนเฟรมเวิร์ก ไลบรารี และเนื้อหาที่ฝัง
เพิ่มไลบรารีใหม่ โดยเลือกปุ่ม + แล้วเพิ่ม FirebaseAI จากแพ็กเกจ Firebase
หลังจากย้ายข้อมูลแอปเสร็จแล้ว (ดูส่วนที่เหลือใน คำแนะนำนี้) ให้ตรวจสอบว่าได้นำไลบรารีเก่าออกแล้ว:
เลือก FirebaseVertexAI, แล้วกดปุ่ม —
Kotlin
ในไฟล์ Gradle ของโมดูล (ระดับแอป) (โดยปกติจะเป็น
<project>/<app-module>/build.gradle.ktsหรือ<project>/<app-module>/build.gradle) ให้แทนที่ทรัพยากร Dependency เก่า (หากมี) ด้วยทรัพยากร Dependency ต่อไปนี้โปรดทราบว่าการย้ายข้อมูลฐานของโค้ดของแอป (ดูส่วนที่เหลือในคำแนะนำนี้) ก่อนลบทรัพยากร Dependency เก่าออกอาจทำได้ง่ายกว่า
// BEFORE dependencies { implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
implementation("com.google.firebase:firebase-vertexai")// OR if not using the BoMimplementation("com.google.firebase:firebase-vertexai:16.x.y")} // AFTER dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.12.0")) // Add the dependency for the Firebase AI Logic library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-ai") }ซิงค์โปรเจ็กต์ Android กับไฟล์ Gradle
โปรดทราบว่าหากเลือกที่จะไม่ใช้ Firebase Android BoM ให้เพิ่มทรัพยากร Dependency สำหรับไลบรารี firebase-ai และยอมรับเวอร์ชันล่าสุดที่ Android Studio แนะนำ
Java
ในไฟล์ Gradle ของโมดูล (ระดับแอป) (โดยปกติจะเป็น
<project>/<app-module>/build.gradle.ktsหรือ<project>/<app-module>/build.gradle) ให้แทนที่ทรัพยากร Dependency เก่า (หากมี) ด้วยทรัพยากร Dependency ต่อไปนี้โปรดทราบว่าการย้ายข้อมูลฐานของโค้ดของแอป (ดูส่วนที่เหลือในคำแนะนำนี้) ก่อนลบทรัพยากร Dependency เก่าออกอาจทำได้ง่ายกว่า
// BEFORE dependencies { implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
implementation("com.google.firebase:firebase-vertexai")// OR if not using the BoMimplementation("com.google.firebase:firebase-vertexai:16.x.y")} // AFTER dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.12.0")) // Add the dependency for the Firebase AI Logic library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-ai") }ซิงค์โปรเจ็กต์ Android กับไฟล์ Gradle
โปรดทราบว่าหากเลือกที่จะไม่ใช้ Firebase Android BoM ให้เพิ่มทรัพยากร Dependency สำหรับไลบรารี firebase-ai และยอมรับเวอร์ชันล่าสุดที่ Android Studio แนะนำ
Web
รับ Firebase JS SDK สำหรับเว็บเวอร์ชันล่าสุดโดยใช้ npm ดังนี้
npm i firebase@latest
หรือ
yarn add firebase@latest
อัปเดตคำสั่งนำเข้าให้ใช้
firebase/aiแทนทุกที่ที่คุณนำเข้าไลบรารีโปรดทราบว่าการย้ายข้อมูลฐานของโค้ดของแอป (ดูส่วนที่เหลือในคำแนะนำนี้) ก่อนลบการนำเข้าเก่าออกอาจทำได้ง่ายกว่า
// BEFORE import { initializeApp } from "firebase/app";
import { getVertexAI, getGenerativeModel } from "firebase/vertexai";// AFTER import { initializeApp } from "firebase/app"; import { getAI, getGenerativeModel } from "firebase/ai";
Dart
อัปเดตให้ใช้แพ็กเกจ
firebase_aiในไฟล์pubspec.yamlโดยเรียกใช้คำสั่งต่อไปนี้จากไดเรกทอรีโปรเจ็กต์ Flutterflutter pub add firebase_ai
สร้างโปรเจ็กต์ Flutter ใหม่
flutter run
หลังจากย้ายข้อมูลแอปเสร็จแล้ว (ดูส่วนที่เหลือในคำแนะนำนี้) ให้ตรวจสอบว่าได้ลบแพ็กเกจเก่าแล้ว โดยทำดังนี้
flutter pub remove firebase_vertexai
Unity
การรองรับ Unity ไม่พร้อมให้บริการจาก "Vertex AI in Firebase"
ดูวิธีเริ่มต้นใช้งาน SDK สำหรับ UnityFirebase AI Logic
ขั้นตอนที่ 4: อัปเดตการเริ่มต้นในแอป
|
คลิกผู้ให้บริการ Gemini API เพื่อดูเนื้อหาเฉพาะของผู้ให้บริการ และโค้ดในหน้านี้ |
อัปเดตวิธีเริ่มต้นบริการสำหรับผู้ให้บริการ API ที่เลือกและสร้างอินสแตนซ์ GenerativeModel
Swift
import FirebaseAILogic
// Initialize the Vertex AI Gemini API backend service
let ai = FirebaseAI.firebaseAI(backend: .vertexAI())
// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-3-flash-preview")
Kotlin
// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.vertexAI())
.generativeModel("gemini-3-flash-preview")
Java
// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.vertexAI())
.generativeModel("gemini-3-flash-preview");
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(ai);
Web
import { initializeApp } from "firebase/app";
import { getAI, getGenerativeModel, VertexAIBackend } from "firebase/ai";
// TODO(developer) Replace the following with your app's Firebase configuration
// See: https://firebase.google.com/docs/web/learn-more#config-object
const firebaseConfig = {
// ...
};
// Initialize FirebaseApp
const firebaseApp = initializeApp(firebaseConfig);
// Initialize the Vertex AI Gemini API backend service
const ai = getAI(firebaseApp, { backend: new VertexAIBackend() });
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-3-flash-preview" });
Dart
import 'package:firebase_ai/firebase_ai.dart';
import 'package:firebase_core/firebase_core.dart';
import 'firebase_options.dart';
// Initialize FirebaseApp
await Firebase.initializeApp(
options: DefaultFirebaseOptions.currentPlatform,
);
// Initialize the Vertex AI Gemini API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
FirebaseAI.vertexAI().generativeModel(model: 'gemini-3-flash-preview');
Unity
การรองรับ Unity ไม่พร้อมให้บริการจาก "Vertex AI in Firebase"
ดูวิธีเริ่มต้นใช้งาน SDK สำหรับ UnityFirebase AI Logic
โปรดทราบว่าคุณอาจไม่จำเป็นต้อง
สร้างอินสแตนซ์ GenerativeModel เสมอไป ทั้งนี้ขึ้นอยู่กับความสามารถที่คุณใช้ หากต้องการ
สตรีมอินพุตและเอาต์พุตโดยใช้ Gemini Live API,
ให้สร้างอินสแตนซ์ LiveModel
ขั้นตอนที่ 5: อัปเดตโค้ดตามฟีเจอร์ที่คุณใช้
ขั้นตอนนี้จะอธิบายการเปลี่ยนแปลงที่อาจจำเป็น ทั้งนี้ขึ้นอยู่กับฟีเจอร์ที่คุณใช้
หากคุณใช้ Cloud Storage URL และ เปลี่ยนไปใช้ Gemini Developer API ในการย้ายข้อมูลนี้ คุณต้องอัปเดต คำขอแบบมัลติโมดัลให้ รวมไฟล์เป็นข้อมูลแบบอินไลน์ (หรือใช้ URL ของ YouTube สำหรับวิดีโอ)
ดูรายการต่อไปนี้เพื่อหาการเปลี่ยนแปลง ที่คุณอาจต้องทำในโค้ดเพื่อให้รองรับการใช้ Firebase AI Logic SDK
Swift
ไม่มีการเปลี่ยนแปลงเพิ่มเติม
Kotlin
Live API
- นำค่า
UNSPECIFIEDสำหรับคลาส enumResponseModalityออก ให้ใช้nullแทน
- นำค่า
Java
Live API
- นำค่า
UNSPECIFIEDสำหรับคลาส enumResponseModalityออก ให้ใช้nullแทน
- นำค่า
เปลี่ยนเมธอดตัวสร้าง Java ต่างๆ ให้แสดงผลอินสแตนซ์ของคลาสอย่างถูกต้องแทนที่จะแสดงผลเป็น void
Web
การเปลี่ยนแปลงที่จำเป็น เฉพาะในกรณีที่คุณเริ่มใช้ Gemini Developer API (แทน Vertex AI Gemini API)
การตั้งค่าความปลอดภัย
- นำการใช้งาน
SafetySetting.methodที่ไม่รองรับออก
- นำการใช้งาน
ข้อมูลแบบอินไลน์
- นำการใช้งาน
InlineDataPart.videoMetadataที่ไม่รองรับออก
- นำการใช้งาน
Dart
ไม่มีการเปลี่ยนแปลงเพิ่มเติม
Unity
การรองรับ Unity ไม่พร้อมให้บริการจาก "Vertex AI in Firebase"
ดูวิธีเริ่มต้นใช้งาน SDK สำหรับ UnityFirebase AI Logic
แสดงความคิดเห็น เกี่ยวกับประสบการณ์การใช้งาน Firebase AI Logic