Class: Ragnar::UmapTransformServiceSingleton

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/ragnar/umap_transform_service.rb

Overview

Singleton service for backwards compatibility This allows the old UmapTransformService.instance pattern to work

Instance Method Summary collapse

Constructor Details

#initializeUmapTransformServiceSingleton

Returns a new instance of UmapTransformServiceSingleton.



175
176
177
178
# File 'lib/ragnar/umap_transform_service.rb', line 175

def initialize
  @database = Database.new(Config.instance.database_path)
  @service = UmapTransformService.new(database: @database)
end

Instance Method Details

#model_available?(model_path = nil) ⇒ Boolean

Returns:

  • (Boolean)


190
191
192
193
194
195
196
# File 'lib/ragnar/umap_transform_service.rb', line 190

def model_available?(model_path = nil)
  if model_path
    File.exist?(model_path)
  else
    @service.model_exists?
  end
end

#transform_query(embedding, model_path = nil) ⇒ Object



180
181
182
183
184
185
186
187
188
# File 'lib/ragnar/umap_transform_service.rb', line 180

def transform_query(embedding, model_path = nil)
  if model_path && model_path != @service.model_path
    # Create a new service with different model path
    service = UmapTransformService.new(model_path: model_path, database: @database)
    service.transform_query(embedding)
  else
    @service.transform_query(embedding)
  end
end