Module: OmniAI::OpenAI::Chat::ToolCallMessageSerializer

Defined in:
lib/omniai/openai/chat/tool_call_message_serializer.rb

Overview

Overrides tool-call message serialize / deserialize.

Class Method Summary collapse

Class Method Details

.deserialize(data) ⇒ OmniAI::Chat::ToolCallMessage

Parameters:

  • data (Hash)

Returns:

  • (OmniAI::Chat::ToolCallMessage)


22
23
24
25
26
# File 'lib/omniai/openai/chat/tool_call_message_serializer.rb', line 22

def self.deserialize(data, *)
  content = data["content"]
  tool_call_id = data["call_id"]
  OmniAI::Chat::ToolCallMessage.new(content:, tool_call_id:)
end

.serialize(message) ⇒ Hash

Parameters:

  • message (OmniAI::Chat::ToolCallMessage)

Returns:

  • (Hash)


11
12
13
14
15
16
17
# File 'lib/omniai/openai/chat/tool_call_message_serializer.rb', line 11

def self.serialize(message, *)
  {
    type: "function_call_output",
    call_id: message.tool_call_id,
    output: JSON.generate(message.content),
  }
end