glean/models/gemini

Google Gemini models.

Supported parameters: max_output_tokens, temperature, top_p, top_k, seed, stop_sequences.

Types

A Gemini model builder. Pick a model with one of the constructors (or custom), chain setters, then call build().

pub opaque type Gemini

Values

pub fn build(m: Gemini) -> model.Model

Build a Model to use with agent.new.

pub fn configure(
  m: Gemini,
  f: fn(config.ProviderConfig) -> config.ProviderConfig,
) -> Gemini

Change the provider configuration: base URL, timeout, headers, retries.

|> configure(config.timeout(_, 120_000))
pub fn custom(
  api_key key: String,
  model model_id: String,
) -> Gemini

Any other model ID served by this API, such as one released after this version of glean. Only this module’s setters are available, so check the model accepts them.

pub fn flash_2_5(api_key key: String) -> Gemini

Gemini 2.5 Flash. Model ID: gemini-2.5-flash.

pub fn flash_3(api_key key: String) -> Gemini

Gemini 3 Flash (preview). Model ID: gemini-3-flash-preview.

pub fn flash_3_6(api_key key: String) -> Gemini

Gemini 3.6 Flash. Model ID: gemini-3.6-flash.

pub fn flash_3_8(api_key key: String) -> Gemini

Gemini 3.8 Flash. Model ID: gemini-3.8-flash.

pub fn flash_image_3_1(api_key key: String) -> Gemini

Gemini 3.1 Flash Image (preview). Model ID: gemini-3.1-flash-image-preview.

pub fn flash_lite_2_5(api_key key: String) -> Gemini

Gemini 2.5 Flash-Lite. Model ID: gemini-2.5-flash-lite.

pub fn flash_lite_3_1(api_key key: String) -> Gemini

Gemini 3.1 Flash-Lite. Model ID: gemini-3.1-flash-lite.

pub fn flash_lite_3_5(api_key key: String) -> Gemini

Gemini 3.5 Flash-Lite. Model ID: gemini-3.5-flash-lite.

pub fn max_output_tokens(m: Gemini, n: Int) -> Gemini

Set the maximum number of output tokens.

pub fn pro_2_5(api_key key: String) -> Gemini

Gemini 2.5 Pro. Model ID: gemini-2.5-pro.

pub fn pro_3_1(api_key key: String) -> Gemini

Gemini 3.1 Pro (preview). Model ID: gemini-3.1-pro-preview.

pub fn pro_image_3(api_key key: String) -> Gemini

Gemini 3 Pro Image (preview). Model ID: gemini-3-pro-image-preview.

pub fn seed(m: Gemini, s: Int) -> Gemini

Set the random seed for more repeatable output.

pub fn stop_sequences(m: Gemini, stops: List(String)) -> Gemini

Stop generating when the model writes any of these strings.

pub fn temperature(m: Gemini, t: Float) -> Gemini

Set the sampling temperature.

pub fn top_k(m: Gemini, k: Int) -> Gemini

Set the top-k sampling value.

pub fn top_p(m: Gemini, p: Float) -> Gemini

Set the top-p (nucleus sampling) value.

✨ Search Document