Skip to content

agent-provider-google / Exports / GoogleProvider

Class: GoogleProvider

Google Gemini provider implementation for Robota

IMPORTANT PROVIDER-SPECIFIC RULES:

  1. This provider MUST extend BaseAIProvider from @robota-sdk/agent-core
  2. Content handling for Google Gemini API:
    • Function calls can have content (text) along with function calls
    • Content can be empty string or actual text, NOT null
  3. Use override keyword for all methods inherited from BaseAIProvider
  4. Provider-specific API behavior should be documented here

Hierarchy

  • AbstractAIProvider

    GoogleProvider

Implements

  • IImageGenerationProvider

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new GoogleProvider(options): GoogleProvider

Parameters

NameType
optionsIGoogleProviderOptions

Returns

GoogleProvider

Overrides

AbstractAIProvider.constructor

Defined in

agent-provider-google/src/provider.ts:48

Properties

name

Readonly name: "google"

Overrides

AbstractAIProvider.name

Defined in

agent-provider-google/src/provider.ts:42


version

Readonly version: "1.0.0"

Overrides

AbstractAIProvider.version

Defined in

agent-provider-google/src/provider.ts:43

Methods

configure

configure(config): Promise<void>

Configure the provider with type-safe configuration

Parameters

NameType
configIProviderConfig

Returns

Promise<void>

Inherited from

AbstractAIProvider.configure

Defined in

agent-core/dist/node/index.d.ts:2464


generateResponse

generateResponse(payload): Promise<IRawProviderResponse>

Provider-agnostic raw response API.

This is the canonical "raw payload" entrypoint required by the AIProvider contract. The default implementation delegates to chat() and adapts the result into a RawProviderResponse shape.

Parameters

NameType
payloadIProviderRequest

Returns

Promise<IRawProviderResponse>

Inherited from

AbstractAIProvider.generateResponse

Defined in

agent-core/dist/node/index.d.ts:2487


generateStreamingResponse

generateStreamingResponse(payload): AsyncIterable<IRawProviderResponse, any, any>

Provider-agnostic raw streaming API.

If a provider does not implement chatStream, it does not support streaming.

Parameters

NameType
payloadIProviderRequest

Returns

AsyncIterable<IRawProviderResponse, any, any>

Inherited from

AbstractAIProvider.generateStreamingResponse

Defined in

agent-core/dist/node/index.d.ts:2493


chat

chat(messages, options?): Promise<TUniversalMessage>

Generate response using TUniversalMessage

Parameters

NameType
messagesTUniversalMessage[]
options?IChatOptions

Returns

Promise<TUniversalMessage>

Overrides

AbstractAIProvider.chat

Defined in

agent-provider-google/src/provider.ts:62


chatStream

chatStream(messages, options?): AsyncIterable<TUniversalMessage, any, any>

Generate streaming response using TUniversalMessage

Parameters

NameType
messagesTUniversalMessage[]
options?IChatOptions

Returns

AsyncIterable<TUniversalMessage, any, any>

Overrides

AbstractAIProvider.chatStream

Defined in

agent-provider-google/src/provider.ts:89


generateImage

generateImage(request): Promise<TProviderMediaResult<IImageGenerationResult>>

Generate an image from a text prompt using the Gemini API.

Parameters

NameType
requestIImageGenerationRequest

Returns

Promise<TProviderMediaResult<IImageGenerationResult>>

Implementation of

IImageGenerationProvider.generateImage

Defined in

agent-provider-google/src/provider.ts:116


editImage

editImage(request): Promise<TProviderMediaResult<IImageGenerationResult>>

Edit an existing image based on a text prompt using the Gemini API.

Parameters

NameType
requestIImageEditRequest

Returns

Promise<TProviderMediaResult<IImageGenerationResult>>

Implementation of

IImageGenerationProvider.editImage

Defined in

agent-provider-google/src/provider.ts:148


composeImage

composeImage(request): Promise<TProviderMediaResult<IImageGenerationResult>>

Compose multiple images together based on a text prompt using the Gemini API.

Parameters

NameType
requestIImageComposeRequest

Returns

Promise<TProviderMediaResult<IImageGenerationResult>>

Implementation of

IImageGenerationProvider.composeImage

Defined in

agent-provider-google/src/provider.ts:185


supportsTools

supportsTools(): boolean

Returns

boolean

Overrides

AbstractAIProvider.supportsTools

Defined in

agent-provider-google/src/provider.ts:235


validateConfig

validateConfig(): boolean

Returns

boolean

Overrides

AbstractAIProvider.validateConfig

Defined in

agent-provider-google/src/provider.ts:239


dispose

dispose(): Promise<void>

Returns

Promise<void>

Overrides

AbstractAIProvider.dispose

Defined in

agent-provider-google/src/provider.ts:243

Released under the MIT License.