本页面介绍了以下配置选项:
您还可以生成结构化输出,包括 JSON 和枚举。
准备工作
请确保您已完成打造混合体验入门指南。
设置推理模式
快速入门指南中的示例使用 PREFER_ON_DEVICE 模式,但此模式只是四种可用的推理模式之一。
PREFER_ON_DEVICE:如果设备端模型可用,则使用该模型;否则,回退到云托管模型。const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_ON_DEVICE });ONLY_ON_DEVICE:使用设备端模型(如果可用);否则,抛出异常。const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_ON_DEVICE });PREFER_IN_CLOUD:如果云托管模型可用,则使用该模型;否则,回退到设备端模型。const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_IN_CLOUD });ONLY_IN_CLOUD:如果云托管模型可用,则使用该模型;否则,抛出异常。const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_IN_CLOUD });
确定是使用了设备端推理还是云端推理
如果您使用 PREFER_ON_DEVICE 或 PREFER_IN_CLOUD 推理模式,那么了解给定请求使用了哪种模式可能会很有帮助。此信息由每个响应的 inferenceSource 属性提供(从 JS SDK v12.5.0 开始提供)。
当您访问此属性时,返回的值将为 ON_DEVICE 或 IN_CLOUD。
// ...
console.log('You used: ' + result.response.inferenceSource);
console.log(result.response.text());
替换默认后备模型
默认的云托管模型为 gemini-2.5-flash-lite
当您使用 PREFER_ON_DEVICE 模式时,此模型是回退的云端托管模型。当您使用 ONLY_IN_CLOUD 模式或 PREFER_IN_CLOUD 模式时,它也是默认模型。
您可以使用 inCloudParams 配置选项来指定其他默认的云托管模型。
const model = getGenerativeModel(ai, {
mode: InferenceMode.INFERENCE_MODE,
inCloudParams: {
model: "GEMINI_MODEL_NAME"
}
});
查找所有受支持的 Gemini 模型的模型名称。
使用模型配置来控制回答
在向模型发送的每个请求中,您都可以同时发送模型配置,以控制模型如何生成回答。云端托管模型和设备端模型提供不同的配置选项。
该配置在实例的整个生命周期内保持不变。如果您想使用其他配置,请使用该配置创建新的 GenerativeModel 实例。
配置云托管的模型
使用 inCloudParams 选项配置云托管的 Gemini 模型。了解可用参数。
const model = getGenerativeModel(ai, {
mode: InferenceMode.INFERENCE_MODE,
inCloudParams: {
model: "GEMINI_MODEL_NAME"
temperature: 0.8,
topK: 10
}
});
配置设备端模型
请注意,使用设备端模型进行推理时,会使用 Chrome 的 Prompt API。
使用 onDeviceParams 选项配置设备端模型。了解可用参数。
const model = getGenerativeModel(ai, {
mode: InferenceMode.INFERENCE_MODE,
onDeviceParams: {
createOptions: {
temperature: 0.8,
topK: 8
}
}
});