Chuyển thẳng đến hướng dẫn di chuyển
Tại sao nên di chuyển để sử dụng các SDK Firebase AI Logic?
Có thể bạn đã thử một bộ SDK ứng dụng khách thay thế cho thiết bị di động hoặc web, cho phép bạn truy cập vào Gemini Developer API.
Những SDK máy khách đó không được tích hợp vào hệ sinh thái Firebase mạnh mẽ, cung cấp các dịch vụ quan trọng cho ứng dụng di động và ứng dụng web. Các SDK này hiện không được dùng nữa để chuyển sang SDK Firebase AI Logic, có thể cấp cho bạn quyền truy cập vào Gemini Developer API.
Các tính năng bảo mật cho ứng dụng di động và ứng dụng web
Đối với ứng dụng di động và ứng dụng web, tính bảo mật là yếu tố quan trọng và cần được cân nhắc đặc biệt vì mã của bạn (bao gồm cả các lệnh gọi đến Gemini API) đang chạy trong một môi trường không được bảo vệ. Bạn có thể dùng Firebase App Check để bảo vệ API khỏi hành vi sai trái của các ứng dụng không được phép.
Khi sử dụng Firebase App Check với Firebase AI Logic, bạn không bao giờ thêm khoá API Gemini cho Gemini Developer API trực tiếp vào cơ sở mã của ứng dụng di động hoặc ứng dụng web. Thay vào đó, khoá API Gemini vẫn nằm trên máy chủ và không bị lộ cho kẻ xấu.
Hệ sinh thái được xây dựng cho ứng dụng di động và ứng dụng web
Firebase là nền tảng của Google để phát triển ứng dụng di động và ứng dụng web. Việc sử dụng Firebase AI Logic có nghĩa là các ứng dụng của bạn nằm trong một hệ sinh thái tập trung vào nhu cầu của các ứng dụng và nhà phát triển toàn diện. Ví dụ:
Đặt cấu hình thời gian chạy một cách linh động hoặc thay thế các giá trị trong ứng dụng của bạn (chẳng hạn như tên và phiên bản mô hình) mà không cần phát hành phiên bản ứng dụng mới bằng cách sử dụng Firebase Remote Config.
Sử dụng Cloud Storage for Firebase để đưa các tệp lớn vào yêu cầu đa phương thức (nếu bạn sử dụng Vertex AI Gemini API). Các SDK ứng dụng Cloud Storage giúp bạn xử lý việc tải tệp lên và tải tệp xuống (ngay cả trong điều kiện mạng kém) và tăng cường bảo mật cho dữ liệu của người dùng cuối. Tìm hiểu thêm trong hướng dẫn về giải pháp sử dụng Cloud Storage for Firebase.
Quản lý dữ liệu có cấu trúc bằng cách sử dụng các SDK cơ sở dữ liệu được tạo cho ứng dụng di động và ứng dụng web (chẳng hạn như Cloud Firestore).
Di chuyển sang SDK Firebase AI Logic
Tổng quan về các bước di chuyển sang SDK Firebase AI Logic:
Bước 1: Thiết lập một dự án Firebase mới hoặc hiện có và kết nối ứng dụng của bạn với Firebase.
Bước 2: Thêm Firebase AI Logic SDK vào ứng dụng của bạn.
Bước 3: Cập nhật các hoạt động nhập và khởi tạo trong ứng dụng.
Bước 4: Cập nhật mã tuỳ theo các tính năng mà bạn sử dụng.
Bước 1: Thiết lập một dự án Firebase và kết nối ứng dụng của bạn
Đăng nhập vào bảng điều khiển Firebase, sau đó chọn dự án Firebase của bạn.
Trong bảng điều khiển Firebase, hãy chuyển đến trang Firebase AI Logic.
Nhấp vào Bắt đầu để chạy một quy trình có hướng dẫn giúp bạn thiết lập các API bắt buộc và tài nguyên cho dự án của mình.
Chọn biểu tượng Gemini Developer API. Bạn luôn có thể thiết lập và sử dụng nhà cung cấp API khác sau này nếu muốn.
Bảng điều khiển sẽ bật các API bắt buộc và tạo một khoá API Gemini mới, chuyên dụng trong dự án của bạn.
Không thêm khoá API Gemini mới này vào cơ sở mã của ứng dụng. Tìm hiểu thêm.Nếu được nhắc trong quy trình của bảng điều khiển, hãy làm theo hướng dẫn trên màn hình để đăng ký ứng dụng và kết nối ứng dụng đó với Firebase.
Tiếp tục theo dõi 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 2: Thêm SDK Firebase AI Logic vào ứng dụng của bạn
Sau khi thiết lập dự án Firebase và kết nối ứng dụng với Firebase (xem bước trước), giờ đây, bạn có thể thêm SDK Firebase AI Logic vào ứng dụng của mình.
Swift
Sử dụng Swift Package Manager để cài đặt và quản lý các phần phụ thuộc của Firebase.
Thư viện Firebase AI Logic cung cấp quyền truy cập vào các API để tương tác với các mô hình Gemini và Imagen. Thư viện này được đưa vào làm một phần của Firebase SDK cho các nền tảng của Apple (firebase-ios-sdk
).
Nếu bạn đang sử dụng Firebase, hãy đảm bảo rằng gói Firebase của bạn là phiên bản 11.13.0 trở lên.
Trong Xcode, khi dự án ứng dụng của bạn đang mở, hãy chuyển đến File (Tệp) > Add Package Dependencies (Thêm phần phụ thuộc của gói).
Khi được nhắc, hãy thêm kho lưu trữ SDK Firebase cho các nền tảng của Apple:
https://github.com/firebase/firebase-ios-sdk
Chọn phiên bản SDK mới nhất.
Chọn thư viện
FirebaseAI
.
Khi hoàn tất, Xcode sẽ tự động bắt đầu phân giải và tải các phần phụ thuộc xuống ở chế độ nền.
Kotlin
Firebase AI Logic SDK cho Android (firebase-ai
) cung cấp quyền truy cập vào các API để tương tác với các mô hình Gemini và Imagen.
Trong tệp Gradle (cấp ứng dụng) của mô-đun (chẳng hạn như <project>/<app-module>/build.gradle.kts
), hãy thêm phần phụ thuộc cho thư viện Firebase AI Logic cho Android.
Bạn nên sử dụng Firebase Android BoM để kiểm soát việc tạo phiên bản thư viện.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.15.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") }
Bằng cách sử dụng Firebase Android BoM, ứng dụng của bạn sẽ luôn sử dụng những phiên bản tương thích của thư viện Android trên Firebase.
Java
Firebase AI Logic SDK cho Android (firebase-ai
) cung cấp quyền truy cập vào các API để tương tác với các mô hình Gemini và Imagen.
Trong tệp Gradle (cấp ứng dụng) của mô-đun (chẳng hạn như <project>/<app-module>/build.gradle.kts
), hãy thêm phần phụ thuộc cho thư viện Firebase AI Logic cho Android.
Bạn nên sử dụng Firebase Android BoM để kiểm soát việc tạo phiên bản thư viện.
Đối với Java, bạn cần thêm 2 thư viện bổ sung.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.15.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") // Required for one-shot operations (to use `ListenableFuture` from Guava Android) implementation("com.google.guava:guava:31.0.1-android") // Required for streaming operations (to use `Publisher` from Reactive Streams) implementation("org.reactivestreams:reactive-streams:1.0.4") }
Bằng cách sử dụng Firebase Android BoM, ứng dụng của bạn sẽ luôn sử dụng những phiên bản tương thích của thư viện Android trên Firebase.
Web
Thư viện Firebase AI Logic cung cấp quyền truy cập vào các API để tương tác với các mô hình Gemini và Imagen. Thư viện này được đưa vào dưới dạng một phần của Firebase JavaScript SDK cho Web.
Cài đặt Firebase JS SDK cho Web bằng npm:
npm install firebase
Khởi động Firebase trong ứng dụng của bạn:
import { initializeApp } from "firebase/app"; // 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);
Dart
Trình bổ trợ Firebase AI Logic cho Flutter (firebase_ai
) cung cấp quyền truy cập vào các API để tương tác với các mô hình Gemini và Imagen.
Trong thư mục dự án Flutter, hãy chạy lệnh sau để cài đặt trình bổ trợ cốt lõi và trình bổ trợ Firebase AI Logic:
flutter pub add firebase_core && flutter pub add firebase_ai
Trong tệp
lib/main.dart
, hãy nhập trình bổ trợ Firebase Core, trình bổ trợ Firebase AI Logic và tệp cấu hình mà bạn đã tạo trước đó:import 'package:firebase_core/firebase_core.dart'; import 'package:firebase_ai/firebase_ai.dart'; import 'firebase_options.dart';
Ngoài ra, trong tệp
lib/main.dart
, hãy khởi động Firebase bằng đối tượngDefaultFirebaseOptions
do tệp cấu hình xuất:await Firebase.initializeApp( options: DefaultFirebaseOptions.currentPlatform, );
Tạo lại ứng dụng Flutter:
flutter run
Unity
Các SDK Google AI không hỗ trợ Unity.
Tìm hiểu cách bắt đầu sử dụng Firebase AI Logic SDK cho Unity.
Xoá SDK cũ khỏi ứng dụng của bạn
Sau khi bạn di chuyển xong ứ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ũ.
Swift
Xoá thư viện cũ:
Trong Xcode, khi dự án ứng dụng của bạn đang mở, hãy chuyển đến ngăn Phụ thuộc vào gói.
Chọn gói
generative-ai-swift
trong danh sách các phần phụ thuộc của gói.Nhấp vào nút
-
ở cuối danh sách rồi nhấp vào Xoá để xác nhận.
Kotlin
dependencies {
implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}
Java
dependencies {
implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}
Web
// BEFORE
import { initializeApp } from "firebase/app";
import { GoogleGenerativeAI } from "@google/generative-ai";
Dart
Xoá gói cũ:
flutter pub remove google_generative_ai
Unity
Các SDK Google AI không hỗ trợ Unity.
Tìm hiểu cách bắt đầu sử dụng Firebase AI Logic SDK cho Unity.
Bước 3: Cập nhật các hoạt động nhập và khởi tạo trong ứng dụng
Cập nhật các mục nhập và cách bạn khởi tạo dịch vụ phụ trợ Gemini Developer API cũng như tạo một thực thể GenerativeModel
.
Swift
// BEFOREimport GoogleGenerativeAI let model = GenerativeModel(name: "MODEL_NAME", apiKey: APIKey.default)// AFTER 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
// BEFOREimport com.google.ai.client.generativeai.Chat import com.google.ai.client.generativeai.type.Content import com.google.ai.client.generativeai.java.GenerativeModuleFutures...val generativeModel = GenerativeModel(modelName = "MODEL_NAME", // Access your API key as a Build Configuration variable apiKey = BuildConfig.apiKey )// AFTER import com.google.firebase.Firebase import com.google.firebase.ai.ai import com.google.firebase.ai.type.GenerativeBackend ... // 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
// BEFOREimport com.google.ai.client.generativeai.Chat; import com.google.ai.client.generativeai.type.Content; import com.google.ai.client.generativeai.java.GenerativeModuleFutures;...GenerativeModel gm = new GenerativeModel("MODEL_NAME", // Access your API key as a Build Configuration variable BuildConfig.apiKey ); GenerativeModelFutures model = GenerativeModelFutures.from(gm);// AFTER import com.google.firebase.ai.FirebaseAI; import com.google.firebase.ai.GenerativeModel; import com.google.firebase.ai.java.GenerativeModelFutures; import com.google.firebase.ai.type.GenerativeBackend; ... // 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
// BEFOREimport { GoogleGenerativeAI } from "@google/generative-ai"; // Fetch your API_KEY and access your API const API_KEY = "..."; const genAI = new GoogleGenerativeAI(API_KEY);...const model = genAI.getGenerativeModel({ model: "MODEL_NAME"});// AFTER 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
// BEFOREimport 'package:google_generative_ai/google_generative_ai.dart'; final apiKey = Platform.environment['API_KEY']; if (apiKey == null) { print('No \$API_KEY environment variable'); exit(1); } final model = GenerativeModel(model: 'MODEL_NAME', apiKey: apiKey);// AFTER 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
Các SDK Google AI không hỗ trợ Unity.
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
.
- Để truy cập vào một mô hình Imagen, hãy tạo một thực thể
ImagenModel
.
Bước 4: Cập nhật mã tuỳ thuộc vào 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.
Các SDK ứng dụng Firebase AI Logic không hỗ trợ thực thi mã. Nếu bạn sử dụng tính năng này, hãy nhớ điều chỉnh cho phù hợp trong ứng dụng của mình.
Hãy xem 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 để hỗ trợ việc di chuyển sang SDK Firebase AI Logic.
Bắt buộc đối với tất cả ngôn ngữ và nền tảng
Gọi hàm
Nếu đã triển khai tính năng này, thì bạn cần phải cập nhật cách xác định giản đồ. Bạn nên xem hướng dẫn gọi hàm mới cập nhật để tìm hiểu cách viết các khai báo hàm.Tạo đầu ra có cấu trúc (chẳng hạn như JSON) bằng cách sử dụng
responseSchema
Nếu đã triển khai tính năng này, thì bạn cần phải cập nhật cách xác định giản đồ. Bạn nên tham khảo hướng dẫn mới về đầu ra có cấu trúc để tìm hiểu cách viết giản đồ JSON.Hết thời gian
- Đã thay đổi thời gian chờ mặc định cho các yêu cầu thành 180 giây.
Bắt buộc dựa trên nền tảng hoặc ngôn ngữ
Swift
Liệt kê
Thay thế hầu hết các loại
enum
bằngstruct
có các biến tĩnh. Thay đổi này giúp API linh hoạt hơn khi phát triển theo cách tương thích ngược. Khi sử dụng câu lệnhswitch
, giờ đây, bạn phải thêm trường hợpdefault:
để bao gồm các giá trị không xác định hoặc chưa được xử lý, kể cả các giá trị mới được thêm vào SDK trong tương lai.Đổi tên phép liệt kê
BlockThreshold
thànhHarmBlockThreshold
; loại này hiện làstruct
.Đã xoá các trường hợp
unknown
vàunspecified
khỏi các kiểu liệt kê sau (hiện làstruct
):HarmCategory
,HarmBlockThreshold
,HarmProbability
,BlockReason
vàFinishReason
.Thay thế kiểu liệt kê
ModelContent.Part
bằng một giao thức có tên làPart
để cho phép thêm các loại mới theo cách tương thích ngược. Thay đổi này được mô tả chi tiết hơn trong phần Các phần nội dung.
Các phần nội dung
Xoá giao thức
ThrowingPartsRepresentable
và đơn giản hoá trình khởi chạy choModelContent
để tránh lỗi trình biên dịch không thường xuyên. Những hình ảnh không được mã hoá đúng cách vẫn sẽ gửi lỗi khi được dùng tronggenerateContent
.Thay thế các trường hợp
ModelContent.Part
bằng các loạistruct
sau đây tuân theo giao thứcPart
:.text
đếnTextPart
.data
đếnInlineDataPart
.fileData
đếnFileDataPart
.functionCall
đếnFunctionCallPart
.functionResponse
đếnFunctionResponsePart
Danh mục nội dung gây hại
- Thay đổi
HarmCategory
để không còn được lồng trong loạiSafetySetting
nữa. Nếu bạn đang đề cập đếnSafetySetting.HarmCategory
, thì bạn có thể thay thế bằngHarmCategory
.
- Thay đổi
Ý kiến phản hồi về an toàn
- Đã xoá loại
SafetyFeedback
vì loại này không được dùng trong bất kỳ phản hồi nào.
- Đã xoá loại
Siêu dữ liệu trích dẫn
- Đổi tên thuộc tính
citationSources
thànhcitations
trongCitationMetadata
.
- Đổi tên thuộc tính
Tổng số ký tự có tính phí
- Đã thay đổi thuộc tính
totalBillableCharacters
trongCountTokensResponse
thành không bắt buộc để phản ánh những trường hợp không có ký tự nào được gửi.
- Đã thay đổi thuộc tính
Phản hồi của ứng viên
- Đổi tên
CandidateResponse
thànhCandidate
cho phù hợp với các nền tảng khác.
- Đổi tên
Cấu hình tạo
- Đã thay đổi các thuộc tính công khai của
GenerationConfig
thànhinternal
. Tất cả các tham số này vẫn có thể định cấu hình trong trình khởi tạo.
- Đã thay đổi các thuộc tính công khai của
Kotlin
Liệt kê
Thay thế các lớp
enum
vàsealed
bằng các lớp thông thường. Thay đổi này giúp API linh hoạt hơn khi phát triển theo cách tương thích ngược.Đổi tên giá trị liệt kê
BlockThreshold
thànhHarmBlockThreshold
.Đã xoá các giá trị khỏi các giá trị liệt kê sau:
HarmBlockThreshold
,HarmProbability
,HarmSeverity
,BlockReason
vàFinishReason
.
Phương thức Blob
- Đã đổi tên tất cả các phương thức có
Blob
trong tên để sử dụngInlineData
thay thế.
- Đã đổi tên tất cả các phương thức có
Chế độ cài đặt an toàn
- Đã thay đổi trường
method
thành có thể rỗng.
- Đã thay đổi trường
Lớp thời lượng
- Xoá tất cả các cách sử dụng lớp
Duration
của Kotlin và thay thế bằnglong
. Thay đổi này giúp cải thiện khả năng tương tác với Java.
- Xoá tất cả các cách sử dụng lớp
Siêu dữ liệu trích dẫn
- Bao bọc tất cả các trường đã khai báo trước đó trong
CitationMetadata
vào một lớp mới có tên làCitation
. Bạn có thể tìm thấy các trích dẫn trong danh sách có tên làcitations
trongCitationMetadata
. Thay đổi này giúp điều chỉnh các loại trên nhiều nền tảng một cách hiệu quả hơn.
- Bao bọc tất cả các trường đã khai báo trước đó trong
Đếm số lượng mã thông báo
- Đã thay đổi trường
totalBillableCharacters
thành có thể rỗng.
- Đã thay đổi trường
Tổng số ký tự có tính phí
- Đã thay đổi thuộc tính
totalBillableCharacters
trongCountTokensResponse
thành không bắt buộc để phản ánh những trường hợp không có ký tự nào được gửi.
- Đã thay đổi thuộc tính
Khởi tạo một mô hình
- Đã di chuyển tham số
requestOptions
xuống cuối danh sách tham số để phù hợp với các nền tảng khác.
- Đã di chuyển tham số
Java
Liệt kê
Thay thế các lớp
enum
vàsealed
bằng các lớp thông thường. Thay đổi này giúp API linh hoạt hơn khi phát triển theo cách tương thích ngược.Đổi tên giá trị liệt kê
BlockThreshold
thànhHarmBlockThreshold
.Đã xoá các giá trị khỏi các giá trị liệt kê sau:
HarmBlockThreshold
,HarmProbability
,HarmSeverity
,BlockReason
vàFinishReason
.
Phương thức Blob
- Đã đổi tên tất cả các phương thức có
Blob
trong tên để sử dụngInlineData
thay thế.
- Đã đổi tên tất cả các phương thức có
Chế độ cài đặt an toàn
- Đã thay đổi trường
method
thành có thể rỗng.
- Đã thay đổi trường
Lớp thời lượng
- Xoá tất cả các cách sử dụng lớp
Duration
của Kotlin và thay thế bằnglong
. Thay đổi này giúp cải thiện khả năng tương tác với Java.
- Xoá tất cả các cách sử dụng lớp
Siêu dữ liệu trích dẫn
- Bao bọc tất cả các trường đã khai báo trước đó trong
CitationMetadata
vào một lớp mới có tên làCitation
. Bạn có thể tìm thấy các trích dẫn trong danh sách có tên làcitations
trongCitationMetadata
. Thay đổi này giúp điều chỉnh các loại trên nhiều nền tảng một cách hiệu quả hơn.
- Bao bọc tất cả các trường đã khai báo trước đó trong
Đếm số lượng mã thông báo
- Đã thay đổi trường
totalBillableCharacters
thành có thể rỗng.
- Đã thay đổi trường
Tổng số ký tự có tính phí
- Đã thay đổi thuộc tính
totalBillableCharacters
trongCountTokensResponse
thành không bắt buộc để phản ánh những trường hợp không có ký tự nào được gửi.
- Đã thay đổi thuộc tính
Khởi tạo một mô hình
- Đã di chuyển tham số
requestOptions
xuống cuối danh sách tham số để phù hợp với các nền tảng khác.
- Đã di chuyển tham số
Web
Xin lưu ý rằng Google AI SDK ứng dụng cho JavaScript đã có nhiều thay đổi kể từ thời điểm các SDK ứng dụng Firebase AI Logic tách ra từ SDK này. Danh sách sau đây là một số thay đổi tiềm ẩn mà bạn có thể cần cân nhắc khi di chuyển sang SDK ứng dụng Firebase AI Logic.
Liệt kê
- Đã xoá các giá trị khỏi các giá trị liệt kê sau:
HarmCategory
,BlockThreshold
,HarmProbability
,HarmSeverity
,BlockReason
vàFinishReason
.
- Đã xoá các giá trị khỏi các giá trị liệt kê sau:
Lý do chặn
- Đã thay đổi
blockReason
trongPromptFeedback
thành không bắt buộc.
- Đã thay đổi
Tìm kiếm thông tin cơ bản
- Xoá tất cả các cách sử dụng tính năng này vì tính năng này chưa được hỗ trợ trong SDK Firebase AI Logic.
Lỗi
- Xoá tất cả các cách sử dụng
GoogleGenerativeAIError
và chuyển sangAIError
(không bắt buộc).
- Xoá tất cả các cách sử dụng
Dart
Liệt kê
- Đã xoá các giá trị khỏi các giá trị liệt kê sau:
HarmCategory
,HarmProbability
,BlockReason
vàFinishReason
.
- Đã xoá các giá trị khỏi các giá trị liệt kê sau:
Phần dữ liệu
- Đổi tên
DataPart
thànhInlineDataPart
và hàmstatic
data
thànhinlineData
để phù hợp với các nền tảng khác.
- Đổi tên
Lựa chọn yêu cầu
- Xoá
RequestOptions
vìtimeout
không hoạt động. Chúng tôi sẽ thêm lại tính năng này trong tương lai gần, nhưng sẽ chuyển tính năng này sang loạiGenerativeModel
để phù hợp với các nền tảng khác.
- Xoá
Dừng chuỗi
- Thay đổi tham số
stopSequences
trongGenerationConfig
thành tham số không bắt buộc và mặc định lànull
thay vì một mảng trống.
- Thay đổi tham số
Trích dẫn
- Đổi tên thuộc tính
citationSources
thànhcitations
trongCitationMetadata
. LoạiCitationSource
được đổi tên thànhCitation
để phù hợp với các nền tảng khác.
- Đổi tên thuộc tính
Các loại, phương thức và thuộc tính công khai không cần thiết
- Xoá các loại, phương thức và thuộc tính sau đây đã vô tình bị lộ:
defaultTimeout
,CountTokensResponseFields
,parseCountTokensResponse
,parseEmbedContentResponse
,parseGenerateContentResponse
,parseContent
,BatchEmbedContentsResponse
,ContentEmbedding
,EmbedContentRequest
vàEmbedContentResponse
.
- Xoá các loại, phương thức và thuộc tính sau đây đã vô tình bị lộ:
Đếm số lượng mã thông báo
- Xoá các trường bổ sung không còn cần thiết khỏi hàm
countTokens
. Bạn chỉ cầncontents
.
- Xoá các trường bổ sung không còn cần thiết khỏi hàm
Khởi tạo một mô hình
- Di chuyển tham số
systemInstruction
xuống cuối danh sách tham số để phù hợp với các nền tảng khác.
- Di chuyển tham số
Chức năng nhúng
- Xoá chức năng nhúng không được hỗ trợ (
embedContent
vàbatchEmbedContents
) khỏi mô hình.
- Xoá chức năng nhúng không được hỗ trợ (
Unity
Các SDK Google AI không hỗ trợ Unity.
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