Documentation
¶
Overview ¶
Package config provides configuration management for AI models, including OpenAI, Claude, and Gemini. It handles model-specific settings, environment variable loading, and parameter validation.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ClaudeConfig ¶
type ClaudeConfig struct {
Model string // Claude model to use (e.g., "claude-3-opus-20240229", "claude-3-sonnet-20240229")
SystemMessage string // System message for Claude
}
ClaudeConfig holds Anthropic Claude-specific configuration
type GeminiConfig ¶
type GeminiConfig struct {
Model string // Gemini model to use (e.g., "gemini-pro", "gemini-1.5-pro")
SafetySettings map[string]string // Safety settings for Gemini
}
GeminiConfig holds Google Gemini-specific configuration
type ModelConfig ¶
type ModelConfig struct {
// Common parameters
Temperature float64 // Controls randomness (0.0-1.0)
MaxTokens int // Maximum response length
TopP float64 // Nucleus sampling parameter (0.0-1.0)
FrequencyPenalty float64 // Penalize frequent tokens (-2.0 to 2.0)
PresencePenalty float64 // Penalize new tokens based on presence (-2.0 to 2.0)
// Fallback configuration
FallbackModels []string // Models to fallback to if primary fails
MaxRetries int // Maximum retry attempts for each model
// Model-specific configurations
OpenAIConfig *OpenAIConfig
ClaudeConfig *ClaudeConfig
GeminiConfig *GeminiConfig
}
ModelConfig defines common configuration parameters for AI models
func DefaultModelConfig ¶
func DefaultModelConfig() *ModelConfig
DefaultModelConfig returns default configuration values
func NewModelConfig ¶
func NewModelConfig() *ModelConfig
NewModelConfig creates a new model configuration with default values
func (*ModelConfig) LoadFromEnvironment ¶
func (mc *ModelConfig) LoadFromEnvironment()
LoadFromEnvironment loads model configuration from environment variables
func (*ModelConfig) UpdateFromParams ¶
func (mc *ModelConfig) UpdateFromParams(params map[string]string) error
UpdateFromParams updates the configuration based on the provided parameters
func (*ModelConfig) Validate ¶
func (mc *ModelConfig) Validate() error
Validate validates the configuration values
type OpenAIConfig ¶
type OpenAIConfig struct {
Model string // GPT model to use (e.g., "gpt-4", "gpt-3.5-turbo")
SystemMessage string // System message for chat completions
}
OpenAIConfig holds OpenAI-specific configuration