Class: Phronomy::Agent::ContextRequest

Inherits:
Data
  • Object
show all
Defined in:
lib/phronomy/agent/context_request.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**values) ⇒ ContextRequest

Returns a new instance of ContextRequest.

Raises:

  • (ArgumentError)


18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/phronomy/agent/context_request.rb', line 18

def initialize(**values)
  super(**values.merge(
    agent_id: values.fetch(:agent_id).to_s.freeze,
    execution_id: values[:execution_id]&.to_s&.freeze,
    call_sequence: Integer(values.fetch(:call_sequence)),
    call_mode: values.fetch(:call_mode).to_sym,
    candidates: Array(values[:candidates]).freeze,
    model_config: Immutable.copy(values[:model_config] || {}),
    required_coverage: Array(values[:required_coverage]).map(&:to_s).freeze,
    parts: (values[:parts] || {}).dup.freeze,
    metadata: Immutable.copy(values[:metadata] || {})
  ))
  raise ArgumentError, "ContextRequest call_sequence must be positive" unless call_sequence.positive?
  freeze
end

Instance Attribute Details

#agent_idObject (readonly)

Returns the value of attribute agent_id

Returns:

  • (Object)

    the current value of agent_id



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def agent_id
  @agent_id
end

#call_modeObject (readonly)

Returns the value of attribute call_mode

Returns:

  • (Object)

    the current value of call_mode



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def call_mode
  @call_mode
end

#call_sequenceObject (readonly)

Returns the value of attribute call_sequence

Returns:

  • (Object)

    the current value of call_sequence



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def call_sequence
  @call_sequence
end

#candidatesObject (readonly)

Returns the value of attribute candidates

Returns:

  • (Object)

    the current value of candidates



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def candidates
  @candidates
end

#execution_idObject (readonly)

Returns the value of attribute execution_id

Returns:

  • (Object)

    the current value of execution_id



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def execution_id
  @execution_id
end

#metadataObject (readonly)

Returns the value of attribute metadata

Returns:

  • (Object)

    the current value of metadata



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def 
  @metadata
end

#model_configObject (readonly)

Returns the value of attribute model_config

Returns:

  • (Object)

    the current value of model_config



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def model_config
  @model_config
end

#partsObject (readonly)

Returns the value of attribute parts

Returns:

  • (Object)

    the current value of parts



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def parts
  @parts
end

#previous_manifestObject (readonly)

Returns the value of attribute previous_manifest

Returns:

  • (Object)

    the current value of previous_manifest



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def previous_manifest
  @previous_manifest
end

#required_coverageObject (readonly)

Returns the value of attribute required_coverage

Returns:

  • (Object)

    the current value of required_coverage



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def required_coverage
  @required_coverage
end

#token_budgetObject (readonly)

Returns the value of attribute token_budget

Returns:

  • (Object)

    the current value of token_budget



5
6
7
# File 'lib/phronomy/agent/context_request.rb', line 5

def token_budget
  @token_budget
end