Class: LangExtract::Core::PromptValidation
- Inherits:
-
Object
- Object
- LangExtract::Core::PromptValidation
- Defined in:
- lib/langextract/core/prompt_validation.rb
Constant Summary collapse
- MODES =
%i[off warning error].freeze
Instance Method Summary collapse
-
#initialize(mode: :warning, warning_io: $stderr) ⇒ PromptValidation
constructor
A new instance of PromptValidation.
- #validate!(examples) ⇒ Object
Constructor Details
#initialize(mode: :warning, warning_io: $stderr) ⇒ PromptValidation
Returns a new instance of PromptValidation.
11 12 13 14 15 |
# File 'lib/langextract/core/prompt_validation.rb', line 11 def initialize(mode: :warning, warning_io: $stderr) @mode = mode.to_sym @warning_io = warning_io raise ArgumentError, "invalid prompt validation mode" unless MODES.include?(@mode) end |
Instance Method Details
#validate!(examples) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/langextract/core/prompt_validation.rb', line 17 def validate!(examples) return if mode == :off issues = examples.flat_map.with_index { |example, index| issues_for(example, index) } return if issues.empty? = "Prompt examples failed validation: #{issues.join('; ')}" raise PromptValidationError, if mode == :error warning_io.puts() end |