Module: LlmCostTracker::Integrations::RubyLlm::ProviderPatch

Defined in:
lib/llm_cost_tracker/integrations/ruby_llm.rb

Instance Method Summary collapse

Instance Method Details

#complete(*args, **kwargs) ⇒ Object



195
196
197
198
# File 'lib/llm_cost_tracker/integrations/ruby_llm.rb', line 195

def complete(*args, **kwargs, &)
  seam = LlmCostTracker::Integrations::RubyLlm.blocking_seam(self, :record_completion, has_block: block_given?)
  LlmCostTracker::Integrations::RubyLlm.wrap_blocking(args, kwargs, **seam) { super }
end

#embed(*args, **kwargs) ⇒ Object



200
201
202
203
# File 'lib/llm_cost_tracker/integrations/ruby_llm.rb', line 200

def embed(*args, **kwargs)
  seam = LlmCostTracker::Integrations::RubyLlm.blocking_seam(self, :record_embedding)
  LlmCostTracker::Integrations::RubyLlm.wrap_blocking(args, kwargs, **seam) { super }
end

#moderate(*args, **kwargs) ⇒ Object



215
216
217
218
# File 'lib/llm_cost_tracker/integrations/ruby_llm.rb', line 215

def moderate(*args, **kwargs)
  seam = LlmCostTracker::Integrations::RubyLlm.blocking_seam(self, :record_moderation)
  LlmCostTracker::Integrations::RubyLlm.wrap_blocking(args, kwargs, **seam) { super }
end

#paint(*args, **kwargs) ⇒ Object



210
211
212
213
# File 'lib/llm_cost_tracker/integrations/ruby_llm.rb', line 210

def paint(*args, **kwargs)
  seam = LlmCostTracker::Integrations::RubyLlm.blocking_seam(self, :record_image)
  LlmCostTracker::Integrations::RubyLlm.wrap_blocking(args, kwargs, **seam) { super }
end

#transcribe(*args, **kwargs) ⇒ Object



205
206
207
208
# File 'lib/llm_cost_tracker/integrations/ruby_llm.rb', line 205

def transcribe(*args, **kwargs)
  seam = LlmCostTracker::Integrations::RubyLlm.blocking_seam(self, :record_transcription)
  LlmCostTracker::Integrations::RubyLlm.wrap_blocking(args, kwargs, **seam) { super }
end