ก่อนหน้านี้ Firebase AI Logic และ 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: เลือกผู้ให้บริการ "Gemini API" ที่ดีที่สุดสำหรับแอปของคุณ
การย้ายข้อมูลนี้จะช่วยให้คุณมีตัวเลือกต่อไปนี้ในผู้ให้บริการ "Gemini API"
SDK "Vertex AI in Firebase" เดิมใช้ได้กับ Vertex AI Gemini API เท่านั้น
Firebase AI Logic SDK ใหม่ให้คุณเลือกผู้ให้บริการ "Gemini API" ที่ต้องการเรียกใช้จากแอปบนอุปกรณ์เคลื่อนที่หรือเว็บโดยตรงได้ ไม่ว่าจะเป็น Gemini Developer API หรือ Vertex AI Gemini API
ตรวจสอบความแตกต่างระหว่างการใช้ผู้ให้บริการ Gemini API รายใหญ่ 2 ราย โดยเฉพาะอย่างยิ่งในแง่ของฟีเจอร์ที่รองรับ ราคา และขีดจำกัดอัตรา ตัวอย่างเช่น Gemini Developer API ไม่รองรับการระบุไฟล์โดยใช้ URL Cloud Storage แต่อาจเป็นตัวเลือกที่ดีหากคุณต้องการใช้ประโยชน์จากระดับที่ไม่มีค่าใช้จ่ายและโควต้าที่เหมาะสม
หากต้องการใช้ Vertex AI Gemini API ต่อไป
ให้ข้ามขั้นตอนถัดไปและไปที่หัวข้อการอัปเดตไลบรารีในแอปโดยตรง แล้วทำตามส่วนที่เหลือในคู่มือนี้หากต้องการเปลี่ยนไปใช้ Gemini Developer API
ให้ไปที่ขั้นตอนถัดไปเพื่อตั้งค่าโปรเจ็กต์ Firebase ให้ใช้ API นั้น แล้วทําตามส่วนที่เหลือของคู่มือนี้
ขั้นตอนที่ 2: ตั้งค่าโปรเจ็กต์ Firebase เพื่อให้ใช้ Gemini Developer API ได้
ขั้นตอนนี้จำเป็นเฉพาะในกรณีที่คุณต้องการเปลี่ยนไปใช้ Gemini Developer API กับ SDK ของไคลเอ็นต์ Firebase AI Logic อย่างไรก็ตาม หากต้องการใช้ Vertex AI Gemini API ต่อไป ให้ข้ามไปยังขั้นตอนถัดไป
โปรดทราบว่าคุณเปิดใช้ผู้ให้บริการ "Gemini API" ทั้ง 2 รายในโปรเจ็กต์พร้อมกันได้
ในคอนโซล Firebase ให้ไปที่หน้า Firebase 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: อัปเดตแพ็กเกจทั้งหมด: ไปที่ ไฟล์ > แพ็กเกจ > อัปเดตเป็นเวอร์ชันล่าสุดของแพ็กเกจ
ตัวเลือกที่ 2: อัปเดต Firebase ทีละรายการ โดยไปที่แพ็กเกจ Firebase ในส่วนความเกี่ยวข้องของแพ็กเกจ คลิกขวาที่แพ็กเกจ Firebase แล้วเลือกอัปเดตแพ็กเกจ
ตรวจสอบว่าตอนนี้แพ็กเกจ Firebase แสดงเป็น v11.13.0 ขึ้นไป หากไม่ โปรดยืนยันว่าข้อกำหนดของแพ็กเกจที่ระบุไว้อนุญาตให้อัปเดตเป็น v11.13.0 ขึ้นไป
เลือกเป้าหมายของแอปในเครื่องมือแก้ไขโปรเจ็กต์ แล้วไปที่ส่วนเฟรมเวิร์ก ไลบรารี และเนื้อหาที่ฝัง
เพิ่มคลังใหม่: เลือกปุ่ม + แล้วเพิ่ม FirebaseAI จากแพ็กเกจ Firebase
หลังจากย้ายข้อมูลแอปเสร็จแล้ว (ดูส่วนที่เหลือในคู่มือนี้) อย่าลืมนําไลบรารีเก่าออก โดย
เลือก FirebaseVertexAI แล้วกดปุ่ม —
Kotlin
ในไฟล์ Gradle ระดับโมดูลหรือระดับแอป (โดยปกติจะเป็น
<project>/<app-module>/build.gradle.kts
หรือ<project>/<app-module>/build.gradle
) ให้แทนที่ 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:33.14.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 ให้เพิ่มข้อกำหนดของไลบรารี firebase-ai
และยอมรับเวอร์ชันล่าสุดที่ Android Studio แนะนำ
Java
ในไฟล์ Gradle ระดับโมดูลหรือระดับแอป (โดยปกติจะเป็น
<project>/<app-module>/build.gradle.kts
หรือ<project>/<app-module>/build.gradle
) ให้แทนที่ 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:33.14.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 ให้เพิ่มข้อกำหนดของไลบรารี 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 ใน Firebase"
ขั้นตอนที่ 4: อัปเดตการเริ่มต้นใช้งานในแอป
คลิกผู้ให้บริการ Gemini API เพื่อดูเนื้อหาและโค้ดเฉพาะผู้ให้บริการในหน้านี้ |
อัปเดตวิธีเริ่มต้นบริการสําหรับผู้ให้บริการ API ที่เลือก และสร้างอินสแตนซ์ GenerativeModel
Swift
import FirebaseAI
// Initialize the Gemini Developer API backend service
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Create a `GenerativeModel` instance with a model that supports your use case
let model = ai.generativeModel(modelName: "gemini-2.0-flash")
Kotlin
// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel("gemini-2.0-flash")
Java
// Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel("gemini-2.0-flash");
// 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, GoogleAIBackend } 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 Gemini Developer API backend service
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Create a `GenerativeModel` instance with a model that supports your use case
const model = getGenerativeModel(ai, { model: "gemini-2.0-flash" });
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 Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
final model =
FirebaseAI.googleAI().generativeModel(model: 'gemini-2.0-flash');
Unity
"Vertex AI ใน Firebase" ไม่รองรับ Unity
โปรดทราบว่าคุณอาจสร้างอินสแตนซ์ GenerativeModel
ไม่ได้เสมอไป ทั้งนี้ขึ้นอยู่กับความสามารถที่คุณใช้
- หากต้องการเข้าถึงโมเดล Imagen ให้สร้างอินสแตนซ์
ImagenModel
ขั้นตอนที่ 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 Builder ให้แสดงผลอินสแตนซ์ของคลาสอย่างถูกต้องแทนที่จะแสดงผล void
Web
การเปลี่ยนแปลงที่จำเป็นเฉพาะในกรณีที่คุณเริ่มใช้ Gemini Developer API (แทน Vertex AI Gemini API)
การตั้งค่าความปลอดภัย
- นำการใช้งาน
SafetySetting.method
ที่ไม่รองรับออก
- นำการใช้งาน
ข้อมูลในบรรทัด
- นำการใช้งาน
InlineDataPart.videoMetadata
ที่ไม่รองรับออก
- นำการใช้งาน
Dart
ไม่มีการเปลี่ยนแปลงเพิ่มเติม
Unity
"Vertex AI in Firebase" ไม่รองรับ Unity
แสดงความคิดเห็นเกี่ยวกับประสบการณ์การใช้งาน Firebase AI Logic