Di chuyển sang SDK Logic AI Firebase từ phiên bản GA của SDK Vertex AI trong Firebase


Firebase AI Logic và các SDK ứng dụng của dịch vụ này trước đây có tên là "Vertex AI in Firebase". Để phản ánh chính xác hơn các dịch vụ và tính năng mở rộng của chúng tôi (ví dụ: hiện chúng tôi hỗ trợ Gemini Developer API!), chúng tôi đã đổi tên và đóng gói lại các dịch vụ của mình thành Firebase AI Logic.

Để truy cập an toàn vào các mô hình AI tạo sinh của Google ngay từ ứng dụng di động hoặc ứng dụng web của bạn, giờ đây, bạn có thể chọn nhà cung cấp "Gemini API" – Vertex AI Gemini API đã có từ lâu hoặc Gemini Developer API mới ra mắt. Điều này có nghĩa là bạn hiện có thể sử dụng Gemini Developer API. API này cung cấp một cấp miễn phí với hạn mức và hạn ngạch hợp lý.

Tổng quan về các bước di chuyển sang Firebase AI Logic SDK

  • Bước 1: Chọn nhà cung cấp "Gemini API" phù hợp nhất cho ứng dụng và các trường hợp sử dụng của bạn.

  • Bước 2: Thiết lập dự án Firebase để bạn có thể sử dụng Gemini Developer API.
    Chỉ áp dụng nếu bạn đang chuyển đổi để sử dụng Gemini Developer API thay vì Vertex AI Gemini API.

  • Bước 3: Cập nhật thư viện được dùng trong ứng dụng của bạn.

  • Bước 4: Cập nhật quá trình khởi chạy trong ứng dụng.

  • Bước 5: Cập nhật mã tuỳ theo các tính năng mà bạn sử dụng.

Bước 1: Chọn nhà cung cấp "Gemini API" phù hợp nhất cho ứng dụng của bạn

Với quá trình di chuyển này, bạn có thể chọn nhà cung cấp "Gemini API":

  • SDK "Vertex AI in Firebase" cũ chỉ có thể sử dụng Vertex AI Gemini API.

  • Các SDK Firebase AI Logic mới cho phép bạn chọn nhà cung cấp "Gemini API" mà bạn muốn gọi trực tiếp từ ứng dụng di động hoặc ứng dụng web – có thể là Gemini Developer API hoặc Vertex AI Gemini API.

Xem xét sự khác biệt giữa việc sử dụng 2 nhà cung cấp Gemini API, đặc biệt là về các tính năng được hỗ trợ, giá cả và hạn mức. Ví dụ: Gemini Developer API không hỗ trợ việc cung cấp tệp bằng URL Cloud Storage, nhưng đây có thể là lựa chọn phù hợp nếu bạn muốn tận dụng cấp miễn phí và hạn mức hợp lý của dịch vụ này.

Bước 2: Thiết lập dự án Firebase để bạn có thể sử dụng Gemini Developer API

Bạn chỉ cần thực hiện bước này nếu muốn chuyển sang sử dụng Gemini Developer API với các SDK ứng dụng Firebase AI Logic. Tuy nhiên, nếu bạn muốn tiếp tục dùng Vertex AI Gemini API, hãy chuyển sang bước tiếp theo.

Xin lưu ý rằng bạn có thể bật cả hai nhà cung cấp "Gemini API" trong dự án của mình cùng một lúc.

  1. Trong bảng điều khiển Firebase, hãy chuyển đến trang Firebase AI Logic.

  2. Chuyển đến thẻ Cài đặt rồi chọn biểu tượng Gemini Developer API.

  3. Bật Gemini Developer API.

    Bảng điều khiển sẽ đảm bảo các API bắt buộc được bật và tạo khoá API Gemini trong dự án Firebase của bạn.
    Đừng thêm khoá API Gemini này vào cơ sở mã của ứng dụng. Tìm hiểu thêm.

  4. Hãy tiếp tục xem hướng dẫn di chuyển này để cập nhật thư viện và quá trình khởi chạy trong ứng dụng của bạn.

Bước 3: Cập nhật thư viện được dùng trong ứng dụng của bạn

Cập nhật cơ sở mã của ứng dụng để sử dụng thư viện Firebase AI Logic.

Swift

  1. Trong Xcode, khi dự án ứng dụng của bạn đang mở, hãy cập nhật gói Firebase lên phiên bản 11.13.0 trở lên bằng một trong các lựa chọn sau:

    • Cách 1: Cập nhật tất cả các gói: Chuyển đến File > Packages > Update to Latest Package Versions (Tệp > Gói > Cập nhật lên phiên bản gói mới nhất).

    • Cách 2: Cập nhật Firebase riêng lẻ: Chuyển đến gói Firebase trong phần có tên là Phần phụ thuộc của gói. Nhấp chuột phải vào gói Firebase, rồi chọn Update Package (Cập nhật gói).

  2. Đảm bảo rằng gói Firebase hiện hiển thị phiên bản 11.13.0 trở lên. Nếu không, hãy xác minh rằng Yêu cầu về gói mà bạn chỉ định cho phép cập nhật lên phiên bản 11.13.0 trở lên.

  3. Chọn mục tiêu của ứng dụng trong Project Editor (Trình chỉnh sửa dự án), sau đó chuyển đến phần Frameworks, Libraries, and Embedded Content (Khung, thư viện và nội dung được nhúng).

  4. Thêm thư viện mới: Chọn nút +, rồi thêm FirebaseAI từ gói Firebase.

  5. Sau khi bạn hoàn tất việc di chuyển ứng dụng (xem các phần còn lại trong hướng dẫn này), hãy nhớ xoá thư viện cũ:
    Chọn FirebaseVertexAI, rồi nhấn nút .

Kotlin

  1. Trong tệp Gradle (cấp ứng dụng) của mô-đun (thường là <project>/<app-module>/build.gradle.kts hoặc <project>/<app-module>/build.gradle), hãy thay thế các phần phụ thuộc cũ (nếu có) bằng phần phụ thuộc sau.

    Xin lưu ý rằng bạn có thể dễ dàng di chuyển cơ sở mã của ứng dụng (xem các phần còn lại trong hướng dẫn này) trước khi xoá phần phụ thuộc cũ.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("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.16.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")
    }
  2. Đồng bộ hoá dự án Android với các tệp Gradle.

Xin lưu ý rằng nếu bạn chọn không sử dụng Firebase Android BoM, thì chỉ cần thêm phần phụ thuộc cho thư viện firebase-ai và chấp nhận phiên bản mới nhất do Android Studio đề xuất.

Java

  1. Trong tệp Gradle (cấp ứng dụng) của mô-đun (thường là <project>/<app-module>/build.gradle.kts hoặc <project>/<app-module>/build.gradle), hãy thay thế các phần phụ thuộc cũ (nếu có) bằng phần phụ thuộc sau.

    Xin lưu ý rằng bạn có thể dễ dàng di chuyển cơ sở mã của ứng dụng (xem các phần còn lại trong hướng dẫn này) trước khi xoá phần phụ thuộc cũ.

    // BEFORE
    dependencies {
      implementation(platform("com.google.firebase:firebase-bom:33.x.y"))
      implementation("com.google.firebase:firebase-vertexai")
      // OR if not using the BoM
      implementation("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.16.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")
    }
  2. Đồng bộ hoá dự án Android với các tệp Gradle.

Xin lưu ý rằng nếu bạn chọn không sử dụng Firebase Android BoM, thì chỉ cần thêm phần phụ thuộc cho thư viện firebase-ai và chấp nhận phiên bản mới nhất do Android Studio đề xuất.

Web

  1. Tải phiên bản mới nhất của Firebase JS SDK cho Web bằng npm:

    npm i firebase@latest

    HOẶC

    yarn add firebase@latest
  2. Bất cứ nơi nào bạn đã nhập thư viện, hãy cập nhật câu lệnh nhập để sử dụng firebase/ai thay thế.

    Xin lưu ý rằng bạn có thể dễ dàng di chuyển cơ sở mã của ứng dụng (xem các phần còn lại trong hướng dẫn này) trước khi xoá các hoạt động nhập cũ.

    // 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

  1. Cập nhật để sử dụng gói firebase_ai trong tệp pubspec.yaml bằng cách chạy lệnh sau trong thư mục dự án Flutter:

    flutter pub add firebase_ai
  2. Tạo lại dự án Flutter:

    flutter run
  3. Sau khi bạn hoàn tất việc di chuyển ứng dụng (xem các phần còn lại trong hướng dẫn này), hãy nhớ xoá gói cũ:

    flutter pub remove firebase_vertexai

Unity

Không có dịch vụ hỗ trợ cho Unity từ "Vertex AI in Firebase".

Tìm hiểu cách bắt đầu sử dụng Firebase AI Logic SDK cho Unity.

Bước 4: Cập nhật quá trình khởi tạo trong ứng dụng

Nhấp vào nhà cung cấp Gemini API để xem nội dung và mã dành riêng cho nhà cung cấp trên trang này.

Cập nhật cách bạn khởi chạy dịch vụ cho nhà cung cấp API đã chọn và tạo một thực thể 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.5-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.5-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.5-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.5-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.5-flash');

Unity

Không có dịch vụ hỗ trợ cho Unity từ "Vertex AI in Firebase".

Tìm hiểu cách bắt đầu sử dụng Firebase AI Logic SDK cho Unity.

Xin lưu ý rằng tuỳ thuộc vào chức năng mà bạn đang sử dụng, không phải lúc nào bạn cũng tạo một thực thể GenerativeModel.

Bước 5: Cập nhật mã tuỳ theo các tính năng mà bạn sử dụng

Bước này mô tả những thay đổi có thể cần thiết, tuỳ thuộc vào những tính năng bạn sử dụng.

  • Nếu bạn sử dụng URL Cloud Storage bạn đã chuyển đổi để sử dụng Gemini Developer API trong quá trình di chuyển này, thì bạn cần cập nhật các yêu cầu đa phương thức để đưa tệp vào dưới dạng dữ liệu nội tuyến (hoặc sử dụng URL YouTube cho video).

  • Hãy xem xét các danh sách sau để biết mọi thay đổi mà bạn có thể cần thực hiện trong mã của mình để đáp ứng việc sử dụng SDK Firebase AI Logic.

Swift

Không có thay đổi nào khác.

Kotlin

  • Live API

    • Đã xoá giá trị UNSPECIFIED cho lớp enum ResponseModality. Thay vào đó, hãy dùng null.

Java

  • Live API

    • Đã xoá giá trị UNSPECIFIED cho lớp enum ResponseModality. Thay vào đó, hãy dùng null.
  • Đã thay đổi nhiều phương thức trình tạo Java để hiện trả về chính xác phiên bản của lớp thay vì void.

Web

Bạn chỉ cần thay đổi nếu bắt đầu sử dụng Gemini Developer API (thay vì Vertex AI Gemini API):

  • Chế độ cài đặt an toàn

    • Xoá các lượt sử dụng SafetySetting.method không được hỗ trợ.
  • Dữ liệu nội tuyến

    • Xoá các lượt sử dụng InlineDataPart.videoMetadata không được hỗ trợ.

Dart

Không có thay đổi nào khác.

Unity

Không có dịch vụ hỗ trợ cho Unity từ "Vertex AI in Firebase".

Tìm hiểu cách bắt đầu sử dụng Firebase AI Logic SDK cho Unity.


Gửi ý kiến phản hồi về trải nghiệm của bạn với Firebase AI Logic