Class: Noiseless::AST::Conversation

Inherits:
Node
  • Object
show all
Defined in:
lib/noiseless/ast/conversation.rb

Overview

Conversational search node for RAG (Retrieval Augmented Generation) Typesense and Elasticsearch support conversational/RAG search

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Node

#to_h

Constructor Details

#initialize(model_id:, conversation_id: nil, system_prompt: nil) ⇒ Conversation

Returns a new instance of Conversation.

Parameters:

  • model_id (String)

    The LLM model identifier

  • conversation_id (String, nil) (defaults to: nil)

    ID for multi-turn conversations (optional)

  • system_prompt (String, nil) (defaults to: nil)

    Custom system prompt (optional)



13
14
15
16
17
18
# File 'lib/noiseless/ast/conversation.rb', line 13

def initialize(model_id:, conversation_id: nil, system_prompt: nil)
  super()
  @model_id = model_id
  @conversation_id = conversation_id
  @system_prompt = system_prompt
end

Instance Attribute Details

#conversation_idObject (readonly)

Returns the value of attribute conversation_id.



8
9
10
# File 'lib/noiseless/ast/conversation.rb', line 8

def conversation_id
  @conversation_id
end

#model_idObject (readonly)

Returns the value of attribute model_id.



8
9
10
# File 'lib/noiseless/ast/conversation.rb', line 8

def model_id
  @model_id
end

#system_promptObject (readonly)

Returns the value of attribute system_prompt.



8
9
10
# File 'lib/noiseless/ast/conversation.rb', line 8

def system_prompt
  @system_prompt
end

Instance Method Details

#custom_prompt?Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/noiseless/ast/conversation.rb', line 24

def custom_prompt?
  !@system_prompt.nil?
end

#multi_turn?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/noiseless/ast/conversation.rb', line 20

def multi_turn?
  !@conversation_id.nil?
end