Class: DSPy::Teleprompt::GEPA::InstructionProposer

Inherits:
Object
  • Object
show all
Extended by:
T::Sig
Defined in:
lib/dspy/teleprompt/gepa.rb

Overview

InstructionProposer: Analyzes execution traces and generates improved instructions using LLM reflection

Instance Method Summary collapse

Constructor Details

#initialize(config:) ⇒ InstructionProposer

Returns a new instance of InstructionProposer.



1580
1581
1582
# File 'lib/dspy/teleprompt/gepa.rb', line 1580

def initialize(config:)
  @config = config
end

Instance Method Details

#propose_instruction(original_instruction:, execution_traces:, failed_examples:) ⇒ Object



1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
# File 'lib/dspy/teleprompt/gepa.rb', line 1586

def propose_instruction(original_instruction:, execution_traces:, failed_examples:)
  if execution_traces.empty? && failed_examples.empty?
    # No traces or failures to analyze, return original
    return original_instruction
  end

  # Use LLM-based reflection to generate improved instruction
  reflect_and_propose(
    original_instruction: original_instruction,
    execution_traces: execution_traces,
    failed_examples: failed_examples
  )
rescue => e
  # Fallback to original instruction on error
  original_instruction
end