Hướng dẫn này cho bạn biết cách bắt đầu thực hiện lệnh gọi đến Vertex AI Gemini API ngay từ ứng dụng của bạn bằng cách sử dụng SDK Vertex AI in Firebase cho nền tảng mà bạn đã chọn.
Điều kiện tiên quyết
Hướng dẫn này giả định rằng bạn đã quen thuộc với việc sử dụng Android Studio để phát triển ứng dụng cho Android.
Đảm bảo rằng môi trường phát triển và ứng dụng Android của bạn đáp ứng các yêu cầu sau:
- Android Studio (phiên bản mới nhất)
- Ứng dụng Android của bạn phải nhắm đến API cấp 21 trở lên.
(Không bắt buộc) Xem ứng dụng mẫu.
Bạn có thể nhanh chóng dùng thử SDK, xem cách triển khai đầy đủ nhiều trường hợp sử dụng hoặc sử dụng ứng dụng mẫu nếu không có ứng dụng Android của riêng mình. Để sử dụng ứng dụng mẫu, bạn cần kết nối ứng dụng đó với một dự án Firebase.
Bước 1: Thiết lập dự án Firebase và kết nối ứng dụng với Firebase
Nếu bạn đã có một dự án Firebase và một ứng dụng được kết nối với Firebase
Trong bảng điều khiển Firebase, hãy chuyển đến trang Tạo bằng Gemini.
Nhấp vào thẻ Vertex AI in Firebase để khởi chạy quy trình công việc giúp bạn hoàn thành các nhiệm vụ sau:
Nâng cấp dự án của bạn để sử dụng gói giá linh hoạt Blaze theo mức dùng.
Bật các API bắt buộc trong dự án của bạn (API Vertex AI và API Vertex AI in Firebase).
Tiếp tục bước tiếp theo trong hướng dẫn này để thêm SDK vào ứng dụng.
Nếu bạn chưa có dự án Firebase và ứng dụng được kết nối với Firebase
Bước 2: Thêm SDK
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 Vertex AI in Firebase vào ứng dụng.
SDK Vertex AI in Firebase cho Android (firebase-vertexai
) cung cấp quyền truy cập vào Vertex AI Gemini API.
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 Vertex AI in Firebase dành 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.
Kotlin+KTX
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.6.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") }
Java
Đối với Java, bạn cần thêm hai thư viện bổ sung.
dependencies { // ... other androidx dependencies // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.6.0")) // Add the dependency for the Vertex AI in Firebase library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-vertexai") // 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.
Bước 3: Khởi chạy dịch vụ Vertex AI và mô hình tạo sinh
Trước khi có thể thực hiện bất kỳ lệnh gọi API nào, bạn cần khởi chạy dịch vụ Vertex AI và mô hình tạo sinh.
Kotlin+KTX
Đối với Kotlin, các phương thức trong SDK này là hàm tạm ngưng và cần được gọi từ phạm vi Coroutine.// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash")
Java
Đối với Java, các phương thức truyền trực tuyến trong SDK này trả về một loạiPublisher
từ thư viện Luồng phản ứng.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-1.5-flash");
// Use the GenerativeModelFutures Java compatibility layer which offers
// support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
Khi bạn đã hoàn tất hướng dẫn bắt đầu, hãy tìm hiểu cách chọn một mô hình Gemini và (không bắt buộc) một vị trí phù hợp với trường hợp sử dụng và ứng dụng của bạn.
Bước 4: Gọi Vertex AI Gemini API
Giờ đây, khi đã kết nối ứng dụng với Firebase, thêm SDK và khởi chạy dịch vụ Vertex AI cũng như mô hình tạo sinh, bạn đã sẵn sàng gọi Vertex AI Gemini API.
Bạn có thể sử dụng generateContent()
để tạo văn bản từ một yêu cầu chỉ có văn bản:
Kotlin+KTX
Đối với Kotlin, các phương thức trong SDK này là hàm tạm ngưng và cần được gọi từ phạm vi Coroutine.// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
val generativeModel = Firebase.vertexAI.generativeModel("gemini-1.5-flash")
// Provide a prompt that contains text
val prompt = "Write a story about a magic backpack."
// To generate text output, call generateContent with the text input
val response = generativeModel.generateContent(prompt)
print(response.text)
Java
Đối với Java, các phương thức trong SDK này trả về mộtListenableFuture
.
// Initialize the Vertex AI service and the generative model
// Specify a model that supports your use case
// Gemini 1.5 models are versatile and can be used with all API capabilities
GenerativeModel gm = FirebaseVertexAI.getInstance()
.generativeModel("gemini-1.5-flash");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);
// Provide a prompt that contains text
Content prompt = new Content.Builder()
.addText("Write a story about a magic backpack.")
.build();
// To generate text output, call generateContent with the text input
ListenableFuture<GenerateContentResponse> response = model.generateContent(prompt);
Futures.addCallback(response, new FutureCallback<GenerateContentResponse>() {
@Override
public void onSuccess(GenerateContentResponse result) {
String resultText = result.getText();
System.out.println(resultText);
}
@Override
public void onFailure(Throwable t) {
t.printStackTrace();
}
}, executor);
Bạn có thể làm gì khác?
Tìm hiểu thêm về các mô hình Gemini
Tìm hiểu về các mô hình có sẵn cho nhiều trường hợp sử dụng và hạn mức và mức giá của các mô hình đó.
Thử các tính năng khác của Gemini API
- Tìm hiểu thêm về cách tạo văn bản từ lời nhắc chỉ có văn bản, bao gồm cả cách truyền trực tuyến nội dung phản hồi.
- Tạo văn bản từ câu lệnh đa phương thức (bao gồm văn bản, hình ảnh, tệp PDF, video và âm thanh).
- Xây dựng cuộc trò chuyện nhiều lượt (trò chuyện).
- Tạo kết quả có cấu trúc (như JSON) từ cả lời nhắc bằng văn bản và đa phương thức.
- Sử dụng tính năng gọi hàm để kết nối các mô hình tạo sinh với hệ thống và thông tin bên ngoài.
Tìm hiểu cách kiểm soát việc tạo nội dung
- Tìm hiểu về thiết kế câu lệnh, bao gồm cả các phương pháp hay nhất, chiến lược và câu lệnh mẫu.
- Định cấu hình các tham số của mô hình như nhiệt độ và mã thông báo đầu ra tối đa.
- Sử dụng chế độ cài đặt an toàn để điều chỉnh khả năng nhận được những câu trả lời có thể bị coi là gây hại.
Đưa ra ý kiến phản hồi về trải nghiệm của bạn với Vertex AI in Firebase