Documentation
¶
Overview ¶
Package google exposes native Gemini chat, embedding, image, speech, transcription, and token-estimation adapters. NewChatCompletions targets Gemini's OpenAI-compatible chat endpoint.
Index ¶
- Constants
- type AudioTTSModel
- type AudioTTSModelConfig
- type AudioTranscriptionModel
- type AudioTranscriptionModelConfig
- type Chat
- type ChatCompletions
- type ChatCompletionsConfig
- type ChatConfig
- type EmbeddingModel
- type EmbeddingModelConfig
- type ImageGenerationOptions
- type ImageGoogleSearchOptions
- type ImageModel
- type ImageModelConfig
- type ImageSafetySetting
- type TextEstimator
- type TextEstimatorConfig
Constants ¶
View Source
const ( Provider = "Google" DefaultBaseURL = protocol.DefaultBaseURL BaseURLOpenAI = "https://generativelanguage.googleapis.com/v1beta/openai" RequestExtensionKey = "google/request" ResponseExtensionKey = "google/response" SpeechRequestExtensionKey = "google/speech_request" SpeechResponseExtensionKey = "google/speech_response" TranscriptionRequestExtensionKey = "google/transcription_request" TranscriptionResponseExtensionKey = "google/transcription_response" EmbeddingRequestExtensionKey = "google/embedding_request" EmbeddingResponseExtensionKey = "google/embedding_response" ImageRequestExtensionKey = "google/image_request" ImageResponseExtensionKey = "google/image_response" OpenAIRequestExtensionKey = "google/openai_request" OpenAIResponseExtensionKey = "google/openai_response" OpenAIStreamChunkExtensionKey = "google/openai_stream_chunk" ModelGemini36Flash = protocol.ModelGemini36Flash ModelGemini35Flash = protocol.ModelGemini35Flash ModelGemini35FlashLite = protocol.ModelGemini35FlashLite ModelGemini31ProPreview = protocol.ModelGemini31ProPreview ModelGemini25FlashPreviewTTS = protocol.ModelGemini25FlashPreviewTTS ModelGemini25ProPreviewTTS = protocol.ModelGemini25ProPreviewTTS ModelGemini31FlashTTSPreview = protocol.ModelGemini31FlashTTSPreview ModelGemini25FlashImage = protocol.ModelGemini25FlashImage ModelGemini3ProImage = protocol.ModelGemini3ProImage ModelGemini31FlashImage = protocol.ModelGemini31FlashImage ModelGemini31FlashLiteImage = protocol.ModelGemini31FlashLiteImage ModelGeminiEmbedding2 = protocol.ModelGeminiEmbedding2 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AudioTTSModel ¶
type AudioTTSModel struct {
// contains filtered or unexported fields
}
func NewAudioTTSModel ¶
func NewAudioTTSModel(config AudioTTSModelConfig) (*AudioTTSModel, error)
type AudioTTSModelConfig ¶
type AudioTTSModelConfig struct {
APIKey string
DefaultOptions tts.Options
BaseURL string
HTTPClient *http.Client
}
func (AudioTTSModelConfig) Validate ¶
func (a AudioTTSModelConfig) Validate() error
type AudioTranscriptionModel ¶
type AudioTranscriptionModel struct {
// contains filtered or unexported fields
}
func NewAudioTranscriptionModel ¶
func NewAudioTranscriptionModel(config AudioTranscriptionModelConfig) (*AudioTranscriptionModel, error)
func (*AudioTranscriptionModel) Call ¶
func (a *AudioTranscriptionModel) Call(ctx context.Context, req *transcription.Request) (*transcription.Response, error)
type AudioTranscriptionModelConfig ¶
type AudioTranscriptionModelConfig struct {
APIKey string
DefaultOptions transcription.Options
BaseURL string
HTTPClient *http.Client
}
func (AudioTranscriptionModelConfig) Validate ¶
func (a AudioTranscriptionModelConfig) Validate() error
type Chat ¶
type Chat struct {
// contains filtered or unexported fields
}
func NewChat ¶
func NewChat(config ChatConfig) (*Chat, error)
type ChatCompletions ¶ added in v0.13.0
type ChatCompletions = openaiprotocol.ChatCompletions
ChatCompletions is Google's OpenAI-compatible protocol model. It is a distinct endpoint from the native Gemini protocol exposed by Chat.
func NewChatCompletions ¶ added in v0.13.0
func NewChatCompletions(config ChatCompletionsConfig) (*ChatCompletions, error)
type ChatCompletionsConfig ¶ added in v0.13.0
type ChatCompletionsConfig struct {
APIKey string
DefaultOptions corechat.Options
BaseURL string
HTTPClient *http.Client
}
func (ChatCompletionsConfig) Validate ¶ added in v0.13.0
func (c ChatCompletionsConfig) Validate() error
type ChatConfig ¶
type ChatConfig struct {
APIKey string
DefaultOptions corechat.Options
BaseURL string
HTTPClient *http.Client
}
func (ChatConfig) Validate ¶
func (c ChatConfig) Validate() error
type EmbeddingModel ¶
type EmbeddingModel struct {
// contains filtered or unexported fields
}
func NewEmbeddingModel ¶
func NewEmbeddingModel(config EmbeddingModelConfig) (*EmbeddingModel, error)
type EmbeddingModelConfig ¶
type EmbeddingModelConfig struct {
APIKey string
DefaultOptions embedding.Options
BaseURL string
HTTPClient *http.Client
}
func (EmbeddingModelConfig) Validate ¶
func (e EmbeddingModelConfig) Validate() error
type ImageGenerationOptions ¶
type ImageGenerationOptions struct {
AspectRatio string `json:"aspect_ratio,omitempty"`
ImageSize string `json:"image_size,omitempty"`
Delivery string `json:"delivery,omitempty"`
PreviousInteractionID string `json:"previous_interaction_id,omitempty"`
Store *bool `json:"store,omitempty"`
ThinkingLevel string `json:"thinking_level,omitempty"`
ThinkingSummaries string `json:"thinking_summaries,omitempty"`
ServiceTier string `json:"service_tier,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
InputImages []*media.Media `json:"input_images,omitempty"`
GoogleSearch *ImageGoogleSearchOptions `json:"google_search,omitempty"`
SafetySettings []ImageSafetySetting `json:"safety_settings,omitempty"`
}
type ImageGoogleSearchOptions ¶
type ImageGoogleSearchOptions struct {
SearchTypes []string `json:"search_types,omitempty"`
}
type ImageModel ¶
type ImageModel struct {
// contains filtered or unexported fields
}
func NewImageModel ¶
func NewImageModel(config ImageModelConfig) (*ImageModel, error)
type ImageModelConfig ¶
type ImageModelConfig struct {
APIKey string
DefaultOptions image.Options
BaseURL string
HTTPClient *http.Client
}
func (ImageModelConfig) Validate ¶
func (i ImageModelConfig) Validate() error
type ImageSafetySetting ¶
type TextEstimator ¶
type TextEstimator struct {
// contains filtered or unexported fields
}
func NewTextEstimator ¶
func NewTextEstimator(config TextEstimatorConfig) (*TextEstimator, error)
func (*TextEstimator) EstimateText ¶
Directories
¶
| Path | Synopsis |
|---|---|
|
internal
|
|
|
protocol
Package protocol implements the Google Gen AI wire protocol reused by Gemini and Vertex AI provider endpoints inside the models module.
|
Package protocol implements the Google Gen AI wire protocol reused by Gemini and Vertex AI provider endpoints inside the models module. |
|
Package vertexai exposes Google Gen AI capabilities through Vertex AI's GCP backend and Application Default Credentials.
|
Package vertexai exposes Google Gen AI capabilities through Vertex AI's GCP backend and Application Default Credentials. |
Click to show internal directories.
Click to hide internal directories.