Module: Legion::LLM::Discovery
- Extended by:
- Legion::Logging::Helper
- Defined in:
- lib/legion/llm/discovery.rb,
lib/legion/llm/discovery/vllm.rb,
lib/legion/llm/discovery/ollama.rb,
lib/legion/llm/discovery/system.rb
Defined Under Namespace
Modules: Ollama, System, Vllm
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.embedding_fallback_chain ⇒ Object
Returns the value of attribute embedding_fallback_chain.
19
20
21
|
# File 'lib/legion/llm/discovery.rb', line 19
def embedding_fallback_chain
@embedding_fallback_chain
end
|
.embedding_model ⇒ Object
Returns the value of attribute embedding_model.
19
20
21
|
# File 'lib/legion/llm/discovery.rb', line 19
def embedding_model
@embedding_model
end
|
.embedding_provider ⇒ Object
Returns the value of attribute embedding_provider.
19
20
21
|
# File 'lib/legion/llm/discovery.rb', line 19
def embedding_provider
@embedding_provider
end
|
Class Method Details
.can_embed? ⇒ Boolean
21
22
23
|
# File 'lib/legion/llm/discovery.rb', line 21
def can_embed?
@can_embed == true
end
|
.detect_embedding_capability ⇒ Object
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
# File 'lib/legion/llm/discovery.rb', line 46
def detect_embedding_capability
log.debug '[llm][discovery] detect_embedding_capability.enter'
embedding_settings = Legion::LLM.settings[:embedding] || {}
found = find_embedding_provider(embedding_settings)
if found
@can_embed = true
@embedding_provider = found[:provider]
@embedding_model = found[:model]
@embedding_fallback_chain = build_embedding_fallback_chain(embedding_settings)
log.info "[llm][discovery] embedding available provider=#{@embedding_provider} model=#{@embedding_model}"
else
@can_embed = false
@embedding_fallback_chain = []
log.info '[llm][discovery] no embedding provider available'
end
rescue StandardError => e
@can_embed = false
@embedding_fallback_chain = []
handle_exception(e, level: :warn, operation: 'llm.discovery.detect_embedding_capability')
end
|
.reset! ⇒ Object
67
68
69
70
71
72
73
|
# File 'lib/legion/llm/discovery.rb', line 67
def reset!
log.debug '[llm][discovery] reset'
@can_embed = nil
@embedding_provider = nil
@embedding_model = nil
@embedding_fallback_chain = nil
end
|