Class: Riffer::Tracing::StreamRecorder
- Inherits:
-
Object
- Object
- Riffer::Tracing::StreamRecorder
- Defined in:
- lib/riffer/tracing/stream_recorder.rb
Overview
Wraps a stream yielder to observe terminal events for span stamping while forwarding every event downstream untouched.
Instance Attribute Summary collapse
-
#content ⇒ Object
readonly
: String?.
-
#finish_reason ⇒ Object
readonly
: Symbol?.
-
#raw_finish_reason ⇒ Object
readonly
: String?.
-
#token_usage ⇒ Object
readonly
Returns the value of attribute token_usage.
-
#tool_calls ⇒ Object
readonly
: Array.
Instance Method Summary collapse
-
#<<(event) ⇒ Object
– : (Riffer::StreamEvents::Base) -> self.
-
#initialize(yielder) ⇒ StreamRecorder
constructor
– : (Enumerator::Yielder) -> void.
Constructor Details
#initialize(yielder) ⇒ StreamRecorder
– : (Enumerator::Yielder) -> void
21 22 23 24 |
# File 'lib/riffer/tracing/stream_recorder.rb', line 21 def initialize(yielder) @yielder = yielder @tool_calls = [] #: Array[Riffer::Messages::Assistant::ToolCall] end |
Instance Attribute Details
#content ⇒ Object (readonly)
: String?
15 16 17 |
# File 'lib/riffer/tracing/stream_recorder.rb', line 15 def content @content end |
#finish_reason ⇒ Object (readonly)
: Symbol?
11 12 13 |
# File 'lib/riffer/tracing/stream_recorder.rb', line 11 def finish_reason @finish_reason end |
#raw_finish_reason ⇒ Object (readonly)
: String?
13 14 15 |
# File 'lib/riffer/tracing/stream_recorder.rb', line 13 def raw_finish_reason @raw_finish_reason end |
#token_usage ⇒ Object (readonly)
Returns the value of attribute token_usage.
9 10 11 |
# File 'lib/riffer/tracing/stream_recorder.rb', line 9 def token_usage @token_usage end |
#tool_calls ⇒ Object (readonly)
: Array
17 18 19 |
# File 'lib/riffer/tracing/stream_recorder.rb', line 17 def tool_calls @tool_calls end |
Instance Method Details
#<<(event) ⇒ Object
– : (Riffer::StreamEvents::Base) -> self
28 29 30 31 32 |
# File 'lib/riffer/tracing/stream_recorder.rb', line 28 def <<(event) record(event) @yielder << event self end |