Class: NitroIntelligence::Client::Handlers::Observed::ChatHandler

Inherits:
Object
  • Object
show all
Defined in:
lib/nitro_intelligence/client/handlers/observed/chat_handler.rb

Instance Method Summary collapse

Constructor Details

#initialize(base_handler:, observer:) ⇒ ChatHandler

Returns a new instance of ChatHandler.



6
7
8
9
# File 'lib/nitro_intelligence/client/handlers/observed/chat_handler.rb', line 6

def initialize(base_handler:, observer:)
  @base_handler = base_handler
  @observer = observer
end

Instance Method Details

#create(message: "", parameters: {}) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/nitro_intelligence/client/handlers/observed/chat_handler.rb', line 11

def create(message: "", parameters: {})
  @base_handler.validate_and_resolve!(parameters, message)

  prompt = handle_prompt(parameters:)
  trace_name = parameters[:trace_name] || prompt&.name || @observer.project_client.project.slug

  @observer.observe(
    "chat-completion",
    type: :generation,
    parameters:,
    trace_name:,
    prompt:
  ) do |_generation|
    workflow(parameters:)
  end
end