gemini

package
v0.19.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 13, 2026 License: MIT Imports: 14 Imported by: 0

Documentation

Overview

Package gemini implements engine.Engine for Google Gemini multi-modal understanding.

Gemini supports text generation with optional image/video inputs for analysis. Auth: API key as query param ?key={api_key}, env GEMINI_API_KEY or GOOGLE_API_KEY.

Endpoint: POST /models/{model}:generateContent Default model: gemini-2.0-flash

Index

Constants

View Source
const (
	ModelGemini20Flash     = "gemini-2.0-flash"
	ModelGemini15Pro       = "gemini-1.5-pro"
	ModelGemini20FlashLite = "gemini-2.0-flash-lite"
	ModelGemini15Flash     = "gemini-1.5-flash"
)

Model constants.

Variables

View Source
var (
	ErrMissingAPIKey = errors.New("gemini: missing API key (set Config.APIKey or GEMINI_API_KEY / GOOGLE_API_KEY)")
	ErrMissingPrompt = errors.New("gemini: missing prompt in workflow graph")
)

Functions

func ConfigSchema

func ConfigSchema() []engine.ConfigField

ConfigSchema returns the configuration fields for the Gemini engine.

func DefaultProvider added in v0.15.0

func DefaultProvider() engine.Provider

DefaultProvider returns preset engine configurations for gemini.

func ModelInfos added in v0.16.0

func ModelInfos() []engine.ModelInfo

ModelInfos returns i18n metadata for all Gemini models.

func ModelsByCapability

func ModelsByCapability() map[string][]string

ModelsByCapability returns known Gemini models grouped by capability.

Types

type Config

type Config struct {
	APIKey     string
	BaseURL    string // default: https://generativelanguage.googleapis.com/v1beta
	Model      string // default: gemini-2.0-flash
	HTTPClient *http.Client
}

Config configures the Gemini engine.

type Engine

type Engine struct {
	// contains filtered or unexported fields
}

Engine implements engine.Engine for Google Gemini multi-modal understanding.

func New

func New(cfg Config) *Engine

New creates a Gemini engine instance.

func (*Engine) Capabilities

func (e *Engine) Capabilities() engine.Capability

Capabilities implements engine.Describer.

func (*Engine) Execute

func (e *Engine) Execute(ctx context.Context, g workflow.Graph) (engine.Result, error)

Execute sends a multi-modal request to the Gemini API.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL