Alloy.Provider.Gemini (alloy v0.10.1)

Copy Markdown View Source

Provider for Google's Gemini GenerateContent API.

Normalizes Gemini's contents / parts wire format to Alloy messages, including function calling and thinking-part round-tripping.

Config

Required:

  • :api_key - Gemini API key
  • :model - Model name (for example "gemini-2.5-flash")

Optional:

  • :max_tokens - Max output tokens (default: 4096)
  • :system_prompt - System prompt string
  • :api_url - Base URL (default: "https://generativelanguage.googleapis.com")
  • :api_version - API version path (default: "v1beta")
  • :generation_config - Raw Gemini generationConfig fields
  • :tool_config - Raw Gemini toolConfig
  • :safety_settings - Raw Gemini safetySettings
  • :extra_headers - Additional headers as [{name, value}]
  • :req_options - Additional options passed to Req

Example

Alloy.run("Summarize this code.",
  provider: {Alloy.Provider.Gemini,
    api_key: System.get_env("GEMINI_API_KEY"),
    model: "gemini-2.5-flash"
  }
)