Class: ActiveHarness::Configuration
- Inherits:
-
Object
- Object
- ActiveHarness::Configuration
- Defined in:
- lib/active_harness/core/configuration.rb
Instance Attribute Summary collapse
-
#anthropic_api_key ⇒ Object
Returns the value of attribute anthropic_api_key.
-
#debug ⇒ Object
Returns the value of attribute debug.
-
#default_language ⇒ Object
Returns the value of attribute default_language.
-
#default_temperature ⇒ Object
Returns the value of attribute default_temperature.
-
#default_timeout ⇒ Object
Returns the value of attribute default_timeout.
-
#google_api_key ⇒ Object
Returns the value of attribute google_api_key.
-
#guard_retries ⇒ Object
Returns the value of attribute guard_retries.
-
#http_client ⇒ Object
HTTP transport.
-
#log_requests ⇒ Object
Returns the value of attribute log_requests.
-
#log_responses ⇒ Object
Returns the value of attribute log_responses.
-
#on_model_attempt ⇒ Object
Returns the value of attribute on_model_attempt.
-
#on_model_failure ⇒ Object
Returns the value of attribute on_model_failure.
-
#openai_api_key ⇒ Object
Returns the value of attribute openai_api_key.
-
#openrouter_api_key ⇒ Object
Returns the value of attribute openrouter_api_key.
-
#request_limiter ⇒ Object
Sliding-window rate limiter (10 req/min per user_id by default).
-
#risk_holdback ⇒ Object
Progressive hold-back after repeated risky requests.
Instance Method Summary collapse
-
#initialize ⇒ Configuration
constructor
A new instance of Configuration.
Constructor Details
#initialize ⇒ Configuration
Returns a new instance of Configuration.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/active_harness/core/configuration.rb', line 17 def initialize @openai_api_key = ENV["OPENAI_API_KEY"] @openrouter_api_key = ENV["OPENROUTER_API_KEY"] @anthropic_api_key = ENV["ANTHROPIC_API_KEY"] @google_api_key = ENV["GOOGLE_API_KEY"] @default_timeout = 20 @default_temperature = 0.2 @default_language = :en @guard_retries = 2 # up to 3 total attempts (1 initial + 2 retries) @log_requests = true @log_responses = false @debug = false end |
Instance Attribute Details
#anthropic_api_key ⇒ Object
Returns the value of attribute anthropic_api_key.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def anthropic_api_key @anthropic_api_key end |
#debug ⇒ Object
Returns the value of attribute debug.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def debug @debug end |
#default_language ⇒ Object
Returns the value of attribute default_language.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def default_language @default_language end |
#default_temperature ⇒ Object
Returns the value of attribute default_temperature.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def default_temperature @default_temperature end |
#default_timeout ⇒ Object
Returns the value of attribute default_timeout.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def default_timeout @default_timeout end |
#google_api_key ⇒ Object
Returns the value of attribute google_api_key.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def google_api_key @google_api_key end |
#guard_retries ⇒ Object
Returns the value of attribute guard_retries.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def guard_retries @guard_retries end |
#http_client ⇒ Object
HTTP transport. Swap for a Faraday-backed client if needed:
config.http_client = MyFaradayClient.new
Set to nil to let providers manage their own transport.
36 37 38 |
# File 'lib/active_harness/core/configuration.rb', line 36 def http_client @http_client ||= Http::Client.new end |
#log_requests ⇒ Object
Returns the value of attribute log_requests.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def log_requests @log_requests end |
#log_responses ⇒ Object
Returns the value of attribute log_responses.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def log_responses @log_responses end |
#on_model_attempt ⇒ Object
Returns the value of attribute on_model_attempt.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def on_model_attempt @on_model_attempt end |
#on_model_failure ⇒ Object
Returns the value of attribute on_model_failure.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def on_model_failure @on_model_failure end |
#openai_api_key ⇒ Object
Returns the value of attribute openai_api_key.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def openai_api_key @openai_api_key end |
#openrouter_api_key ⇒ Object
Returns the value of attribute openrouter_api_key.
3 4 5 |
# File 'lib/active_harness/core/configuration.rb', line 3 def openrouter_api_key @openrouter_api_key end |
#request_limiter ⇒ Object
Sliding-window rate limiter (10 req/min per user_id by default). Set to nil to disable.
43 44 45 |
# File 'lib/active_harness/core/configuration.rb', line 43 def request_limiter @request_limiter ||= RateLimit::RequestLimiter.new end |
#risk_holdback ⇒ Object
Progressive hold-back after repeated risky requests. Set to nil to disable.
50 51 52 |
# File 'lib/active_harness/core/configuration.rb', line 50 def risk_holdback @risk_holdback ||= RateLimit::RiskHoldback.new end |