Module: RubyLLM::ActiveRecord::ActsAs
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/ruby_llm/active_record/acts_as.rb
Overview
Adds chat and message persistence capabilities to ActiveRecord models.
Class Method Summary collapse
-
.included(base) ⇒ Object
When ActsAs is included, ensure models are loaded from database.
Class Method Details
.included(base) ⇒ Object
When ActsAs is included, ensure models are loaded from database
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/ruby_llm/active_record/acts_as.rb', line 10 def self.included(base) super # Monkey-patch Models to use database when ActsAs is active RubyLLM::Models.class_eval do def self.load_models read_from_database rescue StandardError => e RubyLLM.logger.debug "Failed to load models from database: #{e.message}, falling back to JSON" read_from_json end def self.read_from_database model_class = RubyLLM.config.model_registry_class model_class = model_class.constantize if model_class.is_a?(String) model_class.all.map(&:to_llm) end def load_from_database! @models = self.class.read_from_database end end end |