Class: LaunchDarkly::Server::AI::AIConfig

Inherits:
Object
  • Object
show all
Defined in:
lib/server/ai/client.rb

Overview

The AIConfig class represents an AI configuration.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(enabled: nil, model: nil, messages: nil, tracker: nil, provider: nil) ⇒ AIConfig

Returns a new instance of AIConfig.



107
108
109
110
111
112
113
# File 'lib/server/ai/client.rb', line 107

def initialize(enabled: nil, model: nil, messages: nil, tracker: nil, provider: nil)
  @enabled = enabled
  @messages = messages
  @tracker = tracker
  @model = model
  @provider = provider
end

Instance Attribute Details

#enabledObject (readonly)

Returns the value of attribute enabled.



105
106
107
# File 'lib/server/ai/client.rb', line 105

def enabled
  @enabled
end

#messagesObject (readonly)

Returns the value of attribute messages.



105
106
107
# File 'lib/server/ai/client.rb', line 105

def messages
  @messages
end

#modelObject (readonly)

Returns the value of attribute model.



105
106
107
# File 'lib/server/ai/client.rb', line 105

def model
  @model
end

#providerObject (readonly)

Returns the value of attribute provider.



105
106
107
# File 'lib/server/ai/client.rb', line 105

def provider
  @provider
end

#trackerObject (readonly)

Returns the value of attribute tracker.



105
106
107
# File 'lib/server/ai/client.rb', line 105

def tracker
  @tracker
end

#variablesObject (readonly)

Returns the value of attribute variables.



105
106
107
# File 'lib/server/ai/client.rb', line 105

def variables
  @variables
end

Instance Method Details

#to_hObject



115
116
117
118
119
120
121
122
123
124
# File 'lib/server/ai/client.rb', line 115

def to_h
  {
    _ldMeta: {
      enabled: @enabled || false,
    },
    messages: @messages.is_a?(Array) ? @messages.map { |msg| msg&.to_h } : nil,
    model: @model&.to_h,
    provider: @provider&.to_h,
  }
end