Module: Rack::AI

Defined in:
lib/rack/ai.rb,
lib/rack/ai/version.rb,
lib/rack/ai/middleware.rb,
lib/rack/ai/utils/logger.rb,
lib/rack/ai/configuration.rb,
lib/rack/ai/utils/metrics.rb,
lib/rack/ai/providers/base.rb,
lib/rack/ai/providers/local.rb,
lib/rack/ai/utils/sanitizer.rb,
lib/rack/ai/features/caching.rb,
lib/rack/ai/features/logging.rb,
lib/rack/ai/features/routing.rb,
lib/rack/ai/providers/openai.rb,
lib/rack/ai/features/security.rb,
lib/rack/ai/features/moderation.rb,
lib/rack/ai/features/enhancement.rb,
lib/rack/ai/features/rate_limiter.rb,
lib/rack/ai/providers/huggingface.rb,
lib/rack/ai/utils/enhanced_logger.rb,
lib/rack/ai/features/rate_limiting.rb,
lib/rack/ai/features/classification.rb,
lib/rack/ai/features/security_scanner.rb,
lib/rack/ai/features/anomaly_detection.rb

Defined Under Namespace

Modules: Features, Providers, Utils Classes: Configuration, ConfigurationError, Error, FeatureError, Middleware, ProviderError

Constant Summary collapse

VERSION =
"0.4.0"

Class Method Summary collapse

Class Method Details

.configurationObject



39
40
41
# File 'lib/rack/ai.rb', line 39

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Global configuration

Yields:



35
36
37
# File 'lib/rack/ai.rb', line 35

def configure
  yield(configuration)
end

.middleware(**options) ⇒ Object

Convenience method for creating middleware



48
49
50
# File 'lib/rack/ai.rb', line 48

def middleware(**options)
  Middleware.new(nil, **options)
end

.reset_configuration!Object



43
44
45
# File 'lib/rack/ai.rb', line 43

def reset_configuration!
  @configuration = nil
end