class Riffer::Evals::Result
Represents the result of a single evaluation.
Contains the score, reason, and metadata from running an evaluator.
result = Riffer::Evals::Result.new( evaluator: AnswerRelevancyEvaluator, score: 0.85, reason: βThe response addresses the question directly.β, higher_is_better: true )
result.score # => 0.85 result.evaluator # => AnswerRelevancyEvaluator result.higher_is_better # => true
Attributes
The evaluator class that produced this result.
Whether higher scores are better for this evaluator.
Additional metadata from the evaluation.
Human-readable explanation of the score.
The evaluation score (0.0 to 1.0).
Public Class Methods
Source
# File lib/riffer/evals/result.rb, line 40 def initialize(evaluator:, score:, reason: nil, metadata: {}, higher_is_better: true) @evaluator = evaluator @score = score.to_f validate_score! @reason = reason @metadata = metadata @higher_is_better = higher_is_better end
Initializes a new evaluation result.
Raises Riffer::ArgumentError if score is not between 0.0 and 1.0.
: (evaluator: singleton(Riffer::Evals::Evaluator), score: Float, ?reason: String?, ?metadata: Hash[Symbol, untyped], ?higher_is_better: bool) -> void
Public Instance Methods
Source
# File lib/riffer/evals/result.rb, line 52 def to_h { evaluator: evaluator.name, score: score, reason: reason, metadata: metadata, higher_is_better: higher_is_better } end
Returns a hash representation of the result.
: () -> Hash[Symbol, untyped]