Class: Aigen::Google::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/aigen/google/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



8
9
10
11
12
13
# File 'lib/aigen/google/configuration.rb', line 8

def initialize
  @api_key = ENV.fetch("GOOGLE_API_KEY", nil)
  @default_model = "gemini-pro"
  @timeout = 30
  @retry_count = 3
end

Instance Attribute Details

#api_keyObject

Returns the value of attribute api_key.



6
7
8
# File 'lib/aigen/google/configuration.rb', line 6

def api_key
  @api_key
end

#default_modelObject

Returns the value of attribute default_model.



6
7
8
# File 'lib/aigen/google/configuration.rb', line 6

def default_model
  @default_model
end

#retry_countObject

Returns the value of attribute retry_count.



6
7
8
# File 'lib/aigen/google/configuration.rb', line 6

def retry_count
  @retry_count
end

#timeoutObject

Returns the value of attribute timeout.



6
7
8
# File 'lib/aigen/google/configuration.rb', line 6

def timeout
  @timeout
end

Instance Method Details

#validate!Object

Raises:



15
16
17
# File 'lib/aigen/google/configuration.rb', line 15

def validate!
  raise ConfigurationError, "API key is required. Set via Aigen::Google.configure or ENV['GOOGLE_API_KEY']" if api_key.nil? || api_key.empty?
end