Module: Braintrust::Contrib::OpenAI::Instrumentation::Chat::ChatCompletionStream::InstanceMethods

Defined in:
lib/braintrust/contrib/openai/instrumentation/chat.rb

Instance Method Summary collapse

Instance Method Details

#each(&block) ⇒ Object



152
153
154
155
156
157
# File 'lib/braintrust/contrib/openai/instrumentation/chat.rb', line 152

def each(&block)
  ctx = Braintrust::Contrib::Context.from(self)
  return super unless ctx&.[](:tracer) && !ctx[:consumed]

  trace_consumption(ctx) { super(&block) }
end

#textObject



159
160
161
162
163
164
165
166
167
168
169
# File 'lib/braintrust/contrib/openai/instrumentation/chat.rb', line 159

def text
  ctx = Braintrust::Contrib::Context.from(self)
  return super unless ctx&.[](:tracer) && !ctx[:consumed]

  original_enum = super
  Enumerator.new do |y|
    trace_consumption(ctx) do
      original_enum.each { |t| y << t }
    end
  end
end