Class: EvalRuby::Judges::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/eval_ruby/judges/base.rb

Overview

Abstract base class for LLM judges. Subclasses must implement #call to send prompts to an LLM and parse JSON responses.

Direct Known Subclasses

Anthropic, OpenAI

Instance Method Summary collapse

Constructor Details

#initialize(config) ⇒ Base

Returns a new instance of Base.

Parameters:



9
10
11
# File 'lib/eval_ruby/judges/base.rb', line 9

def initialize(config)
  @config = config
end

Instance Method Details

#call(prompt) ⇒ Hash?

Sends a prompt to the LLM and returns parsed JSON.

Parameters:

  • prompt (String)

    the evaluation prompt

Returns:

  • (Hash, nil)

    parsed JSON response

Raises:

  • (NotImplementedError)


17
18
19
# File 'lib/eval_ruby/judges/base.rb', line 17

def call(prompt)
  raise NotImplementedError, "#{self.class}#call must be implemented"
end