Nesta página, descrevemos as seguintes opções de configuração:
Também é possível gerar saída estruturada, incluindo JSON e tipos enumerados.
Antes de começar
Confira se você concluiu o guia para iniciantes sobre como criar experiências híbridas.
Definir um modo de inferência
Os exemplos no guia de iniciação usam o modo PREFER_ON_DEVICE, mas
esse é apenas um dos quatro
modos de inferência disponíveis.
PREFER_ON_DEVICE: use o modelo no dispositivo, se disponível. Caso contrário, recorra ao modelo hospedado na nuvem.const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_ON_DEVICE });ONLY_ON_DEVICE: use o modelo no dispositivo, se disponível. Caso contrário, gere uma exceção.const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_ON_DEVICE });PREFER_IN_CLOUD: use o modelo hospedado na nuvem, se disponível. Caso contrário, recorra ao modelo no dispositivo.const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_IN_CLOUD });ONLY_IN_CLOUD: use o modelo hospedado na nuvem, se disponível. Caso contrário, gere uma exceção.const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_IN_CLOUD });
Determinar se a inferência foi feita no dispositivo ou na nuvem
Se você usa os modos de inferência PREFER_ON_DEVICE ou PREFER_IN_CLOUD, pode ser útil saber qual modo foi usado para determinadas solicitações. Essas
informações são fornecidas pela propriedade inferenceSource de cada resposta
(disponível a partir do SDK do JS v12.5.0).
Ao acessar essa propriedade, o valor retornado será
ON_DEVICE ou IN_CLOUD.
// ...
console.log('You used: ' + result.response.inferenceSource);
console.log(result.response.text());
Substituir o modelo de substituição padrão
O modelo padrão hospedado na nuvem é
gemini-3.5-flash-lite
Esse é o modelo de fallback hospedado na nuvem quando você usa o modo
PREFER_ON_DEVICE. Ele também é o modelo padrão quando você usa o
modo ONLY_IN_CLOUD ou PREFER_IN_CLOUD.
Use a opção de configuração inCloudParams para especificar um modelo padrão alternativo hospedado na nuvem.
const model = getGenerativeModel(ai, {
mode: InferenceMode.INFERENCE_MODE,
inCloudParams: {
model: "GEMINI_MODEL_NAME"
}
});
Encontre os nomes de todos os modelos do Gemini compatíveis.
Usar a configuração do modelo para controlar as respostas
Em cada solicitação para um modelo, é possível enviar uma configuração para controlar como ele gera uma resposta. Os modelos hospedados na nuvem e no dispositivo oferecem diferentes opções de configuração.
A configuração é mantida durante o ciclo de vida da instância. Se você quiser
usar uma configuração diferente, crie uma nova instância do GenerativeModel com essa
configuração.
Configurar modelo hospedado na nuvem
Use a opção
inCloudParams
para configurar um modelo Gemini hospedado na nuvem. Saiba mais sobre os
parâmetros disponíveis.
const model = getGenerativeModel(ai, {
mode: InferenceMode.INFERENCE_MODE,
inCloudParams: {
model: "GEMINI_MODEL_NAME",
generationConfig: {
maxOutputTokens: 200,
stopSequences: ["red"]
}
}
});
Configurar o modelo no dispositivo
A inferência que usa um modelo no dispositivo usa a API Prompt do Chrome.
Use a opção
onDeviceParams
para configurar um modelo no dispositivo. Saiba mais sobre os
parâmetros disponíveis.
const model = getGenerativeModel(ai, {
mode: InferenceMode.INFERENCE_MODE,
onDeviceParams: {
createOptions: {
expectedInputs: [{ type: "text", languages: ["en"] }],
expectedOutputs: [{ type: "text", languages: ["en"] }],
initialPrompts: [
{ role: "system", content: [{ type: "text", value: "You are a helpful and concise assistant." }] }
]
}
}
});
Envie feedback sobre sua experiência com o Firebase AI Logic