Class: Riffer::Guardrail

Inherits:
Object
  • Object
show all
Defined in:
lib/riffer/guardrail.rb

Overview

Base class for guardrails that process input and output in the agent pipeline.

class MyGuardrail < Riffer::Guardrail
  def process_input(messages, context:)
    # Return pass(messages), transform(modified_messages), or block(reason)
    pass(messages)
  end

  def process_output(response, messages:, context:)
    # Return pass(response), transform(modified_response), or block(reason)
    pass(response)
  end
end

Instance Method Summary collapse

Instance Method Details

#process_input(messages, context:) ⇒ Object

Processes input messages before they’re sent to the LLM; override in subclasses. – : (Array, context: untyped) -> Riffer::Guardrails::Result



22
23
24
# File 'lib/riffer/guardrail.rb', line 22

def process_input(messages, context:)
  pass(messages)
end

#process_output(response, messages:, context:) ⇒ Object

Processes the output response after it’s received from the LLM; override in subclasses. – : (Riffer::Messages::Assistant, messages: Array, context: untyped) -> Riffer::Guardrails::Result



30
31
32
# File 'lib/riffer/guardrail.rb', line 30

def process_output(response, messages:, context:)
  pass(response)
end