Skip to content

gemini://

Scheme alias for the Vertex AI / Gemini client. gemini:// and vertex:// share the same Go package (pkg/component/vertex/) — pick whichever scheme reads better in your route. The only behavioural difference is that response headers are written under the gemini.* namespace instead of vertex.*.

URI shape

gemini://chat?model=<id>&apiKey=<key>&temperature=<float>&maxTokens=<int>&baseURL=<url>

Operation defaults to chat if omitted. embeddings is not supported.

Parameters

Param Type Default Producer/Consumer/Both Description
model string gemini-2.0-flash Producer Gemini model id.
apiKey string (from constructor) Producer Google AI Studio API key. Sent as ?key=<value> on the request URL.
baseURL string https://generativelanguage.googleapis.com/v1beta Producer Override for Vertex AI regional endpoints.
temperature float 0.7 Producer Sampling temperature.
maxTokens int 4096 Producer Output cap (maxOutputTokens).

Producer-only.

Headers

Identical to vertex://, except the producer writes gemini.model, gemini.finishReason, and gemini.usage.* headers instead of vertex.*. The systemPrompt input header behaviour (two-turn emulation) is identical.

Examples

Switch from OpenAI to Gemini Flash with a one-line URI change:

- id: chat
  from: direct://ask
  steps:
    - to: gemini://chat?model=gemini-2.0-flash&apiKey=${GOOGLE_API_KEY}

Pin Gemini Pro with a tighter token cap:

- to: gemini://chat?model=gemini-2.0-pro&apiKey=${GOOGLE_API_KEY}&maxTokens=1024&temperature=0

Behavior notes

See vertex:// — every behavioural note applies:

  • API key passed in the URL, not a header.
  • System prompts emulated via the two-turn user→model prefix.
  • 120s timeout, no retries, no streaming, no embeddings, no tool-use on this raw client.

Source

  • pkg/component/vertex/vertex.go (shared with vertex://)

See also