Module: Insika::Knowledge::ConsolidatorFactory
- Defined in:
- lib/insika/knowledge.rb
Overview
Resolves WHICH model consolidates — the same slot the extractor uses
(a deployment names one knowledge.model, not two). Reuses
ExtractorFactory's ref-parsing and lazy ruby_llm ask builder rather
than duplicating them (both live in this same module).
Class Method Summary collapse
Class Method Details
.build(config, utility_model: nil, ask_factory: nil, llm: nil) ⇒ Object
490 491 492 493 494 495 496 497 |
# File 'lib/insika/knowledge.rb', line 490 def build(config, utility_model: nil, ask_factory: nil, llm: nil) ref = Coercion.presence(config && config["model"]) || Coercion.presence(utility_model) return nil if ref.nil? provider, model = ExtractorFactory.split_ref(ref) factory = ask_factory || ->(m, p) { ExtractorFactory.ruby_llm_ask(m, p, llm: llm) } Consolidator.new(ask: factory.call(model, provider), model: ref) end |