class Vellum::WorkflowResultEventOutputDataChatHistory

A Chat History output streamed from a Workflow execution.

def self.from_json(json_object:)

Returns:
  • (WorkflowResultEventOutputDataChatHistory) -

Parameters:
  • json_object (JSON) --
def self.from_json(json_object:)
  struct = JSON.parse(json_object, object_class: OpenStruct)
  parsed_json = JSON.parse(json_object)
  id = struct.id
  name = struct.name
  state = WORKFLOW_NODE_RESULT_EVENT_STATE.key(parsed_json["state"]) || parsed_json["state"]
  node_id = struct.node_id
  delta = struct.delta
  value = parsed_json["value"].map do |v|
    v = v.to_json
    ChatMessage.from_json(json_object: v)
  end
  new(id: id, name: name, state: state, node_id: node_id, delta: delta, value: value, additional_properties: struct)
end

def self.validate_raw(obj:)

Returns:
  • (Void) -

Parameters:
  • obj (Object) --
def self.validate_raw(obj:)
  obj.id&.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.")
  obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.")
  obj.state.is_a?(WORKFLOW_NODE_RESULT_EVENT_STATE) != false || raise("Passed value for field obj.state is not the expected type, validation failed.")
  obj.node_id.is_a?(String) != false || raise("Passed value for field obj.node_id is not the expected type, validation failed.")
  obj.delta&.is_a?(String) != false || raise("Passed value for field obj.delta is not the expected type, validation failed.")
  obj.value&.is_a?(Array) != false || raise("Passed value for field obj.value is not the expected type, validation failed.")
end

def initialize(name:, state:, node_id:, id: nil, delta: nil, value: nil, additional_properties: nil)

Returns:
  • (WorkflowResultEventOutputDataChatHistory) -

Parameters:
  • additional_properties (OpenStruct) -- Additional properties unmapped to the current class definition
  • value (Array) --
  • delta (String) -- The newly output string value. Only relevant for string outputs with a state of STREAMING.
  • node_id (String) --
  • state (WORKFLOW_NODE_RESULT_EVENT_STATE) --
  • name (String) --
  • id (String) --
def initialize(name:, state:, node_id:, id: nil, delta: nil, value: nil, additional_properties: nil)
  # @type [String]
  @id = id
  # @type [String]
  @name = name
  # @type [WORKFLOW_NODE_RESULT_EVENT_STATE]
  @state = state
  # @type [String]
  @node_id = node_id
  # @type [String] The newly output string value. Only relevant for string outputs with a state of STREAMING.
  @delta = delta
  # @type [Array<ChatMessage>]
  @value = value
  # @type [OpenStruct] Additional properties unmapped to the current class definition
  @additional_properties = additional_properties
end

def to_json(*_args)

Returns:
  • (JSON) -
def to_json(*_args)
  {
    "id": @id,
    "name": @name,
    "state": WORKFLOW_NODE_RESULT_EVENT_STATE[@state] || @state,
    "node_id": @node_id,
    "delta": @delta,
    "value": @value
  }.to_json
end