Opciones de configuración para experiencias híbridas en apps web

En esta página, se describen las siguientes opciones de configuración:

También puedes generar resultados estructurados, incluidos JSON y enumeraciones.

Antes de comenzar

Asegúrate de haber completado la guía de introducción para crear experiencias híbridas.

Establece un modo de inferencia

En los ejemplos de la guía de introducción, se usa el modo PREFER_ON_DEVICE, pero este es solo uno de los cuatro modos de inferencia disponibles.

  • PREFER_ON_DEVICE: Usa el modelo integrado en el dispositivo si está disponible; de lo contrario, recurre al modelo alojado en la nube.

    const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_ON_DEVICE });
    
  • ONLY_ON_DEVICE: Usa el modelo integrado en el dispositivo si está disponible; de lo contrario, arroja una excepción.

    const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_ON_DEVICE });
    
  • PREFER_IN_CLOUD: Utilice el modelo alojado en la nube si está disponible; de ​​lo contrario, recurra al modelo integrado en el dispositivo.

    const model = getGenerativeModel(ai, { mode: InferenceMode.PREFER_IN_CLOUD });
    
  • ONLY_IN_CLOUD: Usa el modelo alojado en la nube si está disponible; de lo contrario, arroja una excepción.

    const model = getGenerativeModel(ai, { mode: InferenceMode.ONLY_IN_CLOUD });
    

Determina si se usó la inferencia integrada en el dispositivo o en la nube

Si usas los modos de inferencia PREFER_ON_DEVICE o PREFER_IN_CLOUD, puede ser útil saber qué modo se usó para las solicitudes dadas. Esta información se proporciona en la propiedad inferenceSource de cada respuesta (disponible a partir de la versión 12.5.0 del SDK de JS).

Cuando accedas a esta propiedad, el valor que se mostrará será ON_DEVICE o IN_CLOUD.

// ...

console.log('You used: ' + result.response.inferenceSource);

console.log(result.response.text());

Anula el modelo de resguardo predeterminado

El modelo alojado en la nube predeterminado es gemini-3.5-flash-lite (a partir del SDK de JS v13.0.0).

Este es el modelo de resguardo alojado en la nube cuando usas el modo PREFER_ON_DEVICE. También es el modelo predeterminado cuando usas el modo ONLY_IN_CLOUD o el modo PREFER_IN_CLOUD.

Puedes usar la opción de configuración inCloudParams para especificar un modelo alternativo alojado en la nube predeterminado.

const model = getGenerativeModel(ai, {
  mode: InferenceMode.INFERENCE_MODE,
  inCloudParams: {
    model: "GEMINI_MODEL_NAME"
  }
});

Busca nombres de modelos para todos los modelos de Gemini compatibles.

Usa la configuración del modelo para controlar las respuestas

En cada solicitud a un modelo, puedes enviar una configuración del modelo para controlar cómo este genera una respuesta. Los modelos alojados en la nube y los modelos integrados en el dispositivo ofrecen diferentes opciones de configuración.

La configuración se mantiene durante el ciclo de vida de la instancia. Si quieres usar una configuración diferente, crea una instancia de GenerativeModel nueva con esa configuración.

Configura un modelo alojado en la nube

Usa la opción inCloudParams para configurar un modelo de Gemini alojado en la nube. Obtén información sobre los parámetros disponibles.

const model = getGenerativeModel(ai, {
  mode: InferenceMode.INFERENCE_MODE,
  inCloudParams: {
    model: "GEMINI_MODEL_NAME",
    generationConfig: {
      maxOutputTokens: 200,
      stopSequences: ["red"]
    }
  }
});

Configura el modelo integrado en el dispositivo

Ten en cuenta que la inferencia con un modelo integrado en el dispositivo usa la API de Prompt de Chrome.

Usa la opción onDeviceParams para configurar un modelo integrado en el dispositivo. Obtén información sobre los parámetros disponibles.

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." }] }
      ]
    }
  }
});


Envía comentarios sobre tu experiencia con Firebase AI Logic