gemini

package
v0.2.4 Latest Latest
Warning

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

Go to latest
Published: Apr 27, 2026 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GeminiEmbeddingProvider

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

GeminiEmbeddingProvider implements the EmbeddingProvider interface for Gemini

func NewGeminiEmbeddingProvider

func NewGeminiEmbeddingProvider(apiKey, model string, dimensions int) (*GeminiEmbeddingProvider, error)

NewGeminiEmbeddingProvider creates a new Gemini embedding provider

func (*GeminiEmbeddingProvider) BatchSize

func (g *GeminiEmbeddingProvider) BatchSize() int

BatchSize returns the maximum batch size

func (*GeminiEmbeddingProvider) Dimensions

func (g *GeminiEmbeddingProvider) Dimensions() int

Dimensions returns the embedding vector dimensions

func (*GeminiEmbeddingProvider) EmbedChunks

EmbedChunks embeds multiple chunks in a batch

func (*GeminiEmbeddingProvider) EmbedQuery

func (g *GeminiEmbeddingProvider) EmbedQuery(ctx context.Context, query string) []float32

EmbedQuery embeds a single query for search

func (*GeminiEmbeddingProvider) MaxTokens

func (g *GeminiEmbeddingProvider) MaxTokens() int

MaxTokens returns the maximum token limit for the model

func (*GeminiEmbeddingProvider) Name

func (g *GeminiEmbeddingProvider) Name() string

Name returns the provider name

func (*GeminiEmbeddingProvider) Validate

func (g *GeminiEmbeddingProvider) Validate(ctx context.Context) error

Validate tests the provider connection

type GeminiLLMProvider

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

GeminiLLMProvider implements the LLMProvider interface for Gemini

func NewGeminiLLMProvider

func NewGeminiLLMProvider(apiKey, model, fallbackModel string) (*GeminiLLMProvider, error)

NewGeminiLLMProvider creates a new Gemini LLM provider

func (*GeminiLLMProvider) Call

Call makes a non-streaming LLM request

func (*GeminiLLMProvider) Name

func (g *GeminiLLMProvider) Name() string

Name returns the provider name

func (*GeminiLLMProvider) Stream

Stream makes a streaming LLM request

func (*GeminiLLMProvider) Validate

func (g *GeminiLLMProvider) Validate(ctx context.Context) error

Validate tests the provider connection

type GeminiModelSpec

type GeminiModelSpec struct {
	Dimensions int
	MaxTokens  int
}

GeminiModelSpec holds default specifications for a Gemini embedding model

Jump to

Keyboard shortcuts

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