Trang này mô tả các lựa chọn cấu hình sau đây cho trải nghiệm kết hợp:
Xác định xem bạn có sử dụng tính năng suy luận trên thiết bị hay trong đám mây hay không.
Sử dụng cấu hình mô hình để kiểm soát các câu trả lời (chẳng hạn như nhiệt độ).
Đảm bảo rằng bạn đã hoàn tất hướng dẫn bắt đầu xây dựng trải nghiệm kết hợp.
Đặt chế độ suy luận
Các ví dụ trong hướng dẫn bắt đầu sử dụng dùng chế độ PREFER_ON_DEVICE, nhưng đây chỉ là một trong bốn chế độ suy luận có sẵn.
Dưới đây là các chế độ suy luận có sẵn:
PREFER_ON_DEVICE: Thử sử dụng mô hình trên thiết bị nếu có và hỗ trợ loại yêu cầu. Nếu không, hãy ghi lại lỗi trên thiết bị rồi tự động quay lại mô hình được lưu trữ trên đám mây.Kotlin
val config = OnDeviceConfig(mode = InferenceMode.PREFER_ON_DEVICE)Java
InferenceMode mode = InferenceMode.PREFER_ON_DEVICE; OnDeviceConfig config = new OnDeviceConfig(mode);ONLY_ON_DEVICE: Thử sử dụng mô hình trên thiết bị nếu có và hỗ trợ loại yêu cầu. Nếu không, hãy gửi một ngoại lệ.Kotlin
val config = OnDeviceConfig(mode = InferenceMode.ONLY_ON_DEVICE)Java
InferenceMode mode = InferenceMode.ONLY_ON_DEVICE; OnDeviceConfig config = new OnDeviceConfig(mode);PREFER_IN_CLOUD: Thử dùng mô hình được lưu trữ trên đám mây nếu thiết bị đang trực tuyến và nếu mô hình có sẵn. Nếu thiết bị không có mạng, hãy chuyển về mô hình trên thiết bị. Trong tất cả các trường hợp lỗi khác, hãy gửi một ngoại lệ.Kotlin
val config = OnDeviceConfig(mode = InferenceMode.PREFER_IN_CLOUD)Java
InferenceMode mode = InferenceMode.PREFER_IN_CLOUD; OnDeviceConfig config = new OnDeviceConfig(mode);ONLY_IN_CLOUD: Thử dùng mô hình được lưu trữ trên đám mây nếu thiết bị đang trực tuyến và nếu mô hình có sẵn. Nếu không, hãy gửi một ngoại lệ.Kotlin
val config = OnDeviceConfig(mode = InferenceMode.ONLY_IN_CLOUD)Java
InferenceMode mode = InferenceMode.ONLY_IN_CLOUD; OnDeviceConfig config = new OnDeviceConfig(mode);
Xác định xem bạn đã sử dụng suy luận trên thiết bị hay trong đám mây
Nếu bạn sử dụng chế độ suy luận PREFER_ON_DEVICE hoặc PREFER_IN_CLOUD, thì bạn nên biết chế độ nào đã được dùng cho các yêu cầu nhất định. Thông tin này do thuộc tính inferenceSource của mỗi phản hồi cung cấp.
Khi bạn truy cập vào thuộc tính này, giá trị được trả về sẽ là ON_DEVICE hoặc IN_CLOUD.
Kotlin
// ...
print("You used: ${result.response.inferenceSource}")
print(result.response.text)
Java
// ...
System.out.println("You used: " + result.getResponse().getInferenceSource());
System.out.println(result.getResponse().getText());
Chỉ định một mô hình được lưu trữ trên đám mây để sử 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. |
Nếu suy luận chính hoặc dự phòng của bạn có thể được thực hiện bằng một mô hình được lưu trữ trên đám mây, thì bạn cần chỉ định rõ ràng một mô hình đám mây để sử dụng khi tạo phiên bản generativeModel.
Kotlin
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel(
modelName = "MODEL_NAME",
onDeviceConfig = OnDeviceConfig(mode = InferenceMode.PREFER_ON_DEVICE)
)
Java
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
"MODEL_NAME",
new OnDeviceConfig(InferenceMode.PREFER_ON_DEVICE)
);
GenerativeModelFutures model = GenerativeModelFutures.from(ai);
Tìm tên mô hình cho tất cả các mô hình Gemini được hỗ trợ.
Sử dụng cấu hình mô hình để kiểm soát câu trả lời
|
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. |
Trong mỗi yêu cầu gửi đến một mô hình, bạn có thể gửi kèm theo một cấu hình mô hình để kiểm soát cách mô hình tạo ra phản hồi. Các mô hình được lưu trữ trên đám mây và mô hình trên thiết bị cung cấp các lựa chọn cấu hình khác nhau (các tham số đám mây so với trên thiết bị).
Đối với các mô hình được lưu trữ trên đám mây, hãy thiết lập cấu hình của các mô hình đó ngay trong cấu hình của mô hình. Tuy nhiên, đối với các mô hình trên thiết bị, hãy thiết lập cấu hình của chúng trong onDeviceConfig.
Cấu hình này được duy trì trong suốt thời gian hoạt động của phiên bản. Nếu bạn muốn sử dụng một cấu hình khác, hãy tạo một phiên bản GenerativeModel mới bằng cấu hình đó.
Sau đây là ví dụ minh hoạ cách thiết lập cấu hình cho các mô hình được lưu trữ trên đám mây và trên thiết bị có thể được dùng nếu bạn đặt chế độ suy luận PREFER_ON_DEVICE:
Kotlin
val model = Firebase.ai(backend = GenerativeBackend.googleAI())
.generativeModel("MODEL_NAME",
// Config for cloud-hosted model
generationConfig = generationConfig {
temperature = 0.8f,
topK = 10
},
// Config for on-device model
onDeviceConfig = onDeviceConfig {
mode = InferenceMode.PREFER_ON_DEVICE,
temperature = 0.8f,
topK = 5
})
Java
// Config for cloud-hosted model
GenerationConfig generationConfig = new GenerationConfig.Builder()
.setTemperature(0.8f)
.setTopK(10)
.build();
// Config for on-device model
OnDeviceConfig onDeviceConfig = new OnDeviceConfig.Builder()
.setMode(InferenceMode.PREFER_ON_DEVICE)
.setTemperature(0.8f)
.setTopK(5)
.build();
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
"MODEL_NAME",
generationConfig,
onDeviceConfig
);
GenerativeModelFutures model = GenerativeModelFutures.from(ai);