Class: GeminiProvider

Defined in: providers/gemini-native.ts:83

GeminiNativeProvider implements LLMProvider using the native Google Gen AI SDK

Benefits over OpenAI-compatible endpoint:

  • Automatic thought signature handling for Gemini 3
  • Native streaming support
  • Full access to Gemini-specific features

Implements

Constructors

Constructor

new GeminiProvider(config): GeminiNativeProvider;

Defined in: providers/gemini-native.ts:91

Parameters

Parameter Type
config GeminiProviderConfig

Returns

GeminiNativeProvider

Properties

name

readonly name: "gemini" = 'gemini';

Defined in: providers/gemini-native.ts:84

Provider identifier (e.g., ‘claude’, ‘openai’, ‘gemini’)

Implementation of

LLMProvider.name

Methods

chat()

chat(messages, options?): AsyncIterable<StreamChunk>;

Defined in: providers/gemini-native.ts:110

Send messages and stream the response

Parameters

Parameter Type
messages Message[]
options? ChatOptions

Returns

AsyncIterable<StreamChunk>

Implementation of

LLMProvider.chat

countTokens()

countTokens(messages): Promise<number>;

Defined in: providers/gemini-native.ts:233

Count tokens in messages using tiktoken (cl100k_base encoding)

Parameters

Parameter Type
messages Message[]

Returns

Promise<number>

Implementation of

LLMProvider.countTokens

getModel()

getModel(): string;

Defined in: providers/gemini-native.ts:99

Get the current default model ID.

Returns

string

Implementation of

LLMProvider.getModel

setModel()

setModel(modelId): void;

Defined in: providers/gemini-native.ts:103

Change the default model for subsequent calls. Same provider only. Takes effect on the next chat() call, not mid-stream.

Parameters

Parameter Type Description
modelId string The new model ID (e.g., ‘claude-opus-4-20250514’)

Returns

void

Implementation of

LLMProvider.setModel