module Sashiko::Adapters::Anthropic::Wrapper
Public Instance Methods
Source
# File lib/sashiko/adapters/anthropic.rb, line 147 def create(**params) attrs = { "gen_ai.system" => "anthropic", "gen_ai.operation.name" => "chat" } attrs["gen_ai.request.model"] = params[:model] if params.key?(:model) attrs["gen_ai.request.max_tokens"] = params[:max_tokens] if params.key?(:max_tokens) attrs["gen_ai.request.temperature"] = params[:temperature] if params.key?(:temperature) attrs["gen_ai.request.top_p"] = params[:top_p] if params.key?(:top_p) tracer = self.class.instance_variable_get(:@__sashiko_tracer) || Sashiko.tracer tracer.in_span("chat #{params[:model]}", attributes: attrs, kind: :client) do |span| response = super(**params) Anthropic.record_response(span, response) response rescue => e span.record_exception(e) span.status = OpenTelemetry::Trace::Status.error(e.message) raise end end
Calls superclass method