Module: PromptSanitizer

Defined in:
lib/prompt_sanitizer.rb,
lib/prompt_sanitizer/modes.rb,
lib/prompt_sanitizer/vault.rb,
lib/prompt_sanitizer/result.rb,
lib/prompt_sanitizer/railtie.rb,
lib/prompt_sanitizer/session.rb,
lib/prompt_sanitizer/version.rb,
lib/prompt_sanitizer/entities.rb,
lib/prompt_sanitizer/sanitizer.rb,
lib/prompt_sanitizer/synthetic.rb,
lib/prompt_sanitizer/audit/base.rb,
lib/prompt_sanitizer/engines/ner_engine.rb,
lib/prompt_sanitizer/engines/regex_engine.rb,
lib/prompt_sanitizer/audit/memory_audit_log.rb,
lib/prompt_sanitizer/engines/secrets_engine.rb,
lib/prompt_sanitizer/integrations/active_job.rb,
lib/prompt_sanitizer/integrations/middleware.rb,
lib/generators/prompt_sanitizer/install_generator.rb,
lib/prompt_sanitizer/integrations/action_controller.rb

Defined Under Namespace

Modules: Audit, Engines, EntityType, Generators, Integrations, Mode Classes: Configuration, ConfigurationError, DetectedEntity, Error, ModeError, PIIDetectedError, Railtie, SanitizeResult, Sanitizer, Session, SyntheticEngine, Vault

Constant Summary collapse

VERSION =
"1.0.1"

Class Method Summary collapse

Class Method Details

.configurationObject



58
59
60
# File 'lib/prompt_sanitizer.rb', line 58

def configuration
  @configuration ||= Configuration.new
end

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

PromptSanitizer.configure do |config| config.mode = :smart end

Yields:



65
66
67
# File 'lib/prompt_sanitizer.rb', line 65

def configure
  yield configuration
end

.reset!Object

Reset global state — intended for use in tests only.



82
83
84
85
# File 'lib/prompt_sanitizer.rb', line 82

def reset!
  @configuration = nil
  @sanitizer     = nil
end

.sanitizerObject

Returns (and memoises) a Sanitizer built from the global configuration. Safe to call from multiple threads once initialised.



71
72
73
74
75
76
77
78
79
# File 'lib/prompt_sanitizer.rb', line 71

def sanitizer
  @sanitizer ||= Sanitizer.new(
    mode:        configuration.mode,
    ner_backend: configuration.ner_backend,
    ner_model:   configuration.ner_model,
    audit_log:   configuration.audit_log,
    locale:      configuration.locale
  )
end