Class: LLMs::Parsers::SSEChatResponseStreamParser

Inherits:
Object
  • Object
show all
Includes:
PartialJsonParser
Defined in:
lib/llms/parsers/sse_chat_response_stream_parser.rb

Instance Method Summary collapse

Methods included from PartialJsonParser

#attempt_parse_json

Constructor Details

#initialize(emitter) ⇒ SSEChatResponseStreamParser

Returns a new instance of SSEChatResponseStreamParser.



9
10
11
12
13
# File 'lib/llms/parsers/sse_chat_response_stream_parser.rb', line 9

def initialize(emitter)
  @emitter = emitter
  @buffer = ''
  initialize_state
end

Instance Method Details

#add_data(data) ⇒ Object



15
16
17
18
# File 'lib/llms/parsers/sse_chat_response_stream_parser.rb', line 15

def add_data(data)
  @buffer += data
  process_buffer
end

#full_responseObject

Raises:

  • (NotImplementedError)


20
21
22
# File 'lib/llms/parsers/sse_chat_response_stream_parser.rb', line 20

def full_response
  raise NotImplementedError, "Subclasses must implement full_response"
end