Module: Legion::LLM::Discovery::System

Extended by:
Legion::Logging::Helper
Defined in:
lib/legion/llm/discovery/system.rb

Class Method Summary collapse

Class Method Details

.available_memory_mbObject



16
17
18
19
# File 'lib/legion/llm/discovery/system.rb', line 16

def available_memory_mb
  ensure_available_fresh
  @available_memory_mb
end

.platformObject



21
22
23
# File 'lib/legion/llm/discovery/system.rb', line 21

def platform
  @platform ||= detect_platform
end

.refresh!Object



25
26
27
28
29
# File 'lib/legion/llm/discovery/system.rb', line 25

def refresh!
  @available_fetched_at = nil
  @available_memory_mb = nil
  @last_refreshed_at = Time.now
end

.reset!Object



31
32
33
34
35
36
37
38
# File 'lib/legion/llm/discovery/system.rb', line 31

def reset!
  @total_memory_mb = nil
  @available_memory_mb = nil
  @total_fetched_at = nil
  @available_fetched_at = nil
  @last_refreshed_at = nil
  @platform = nil
end

.stale?Boolean

Returns:

  • (Boolean)


40
41
42
43
44
45
# File 'lib/legion/llm/discovery/system.rb', line 40

def stale?
  return true if @last_refreshed_at.nil?

  ttl = discovery_settings[:refresh_seconds] || 60
  Time.now - @last_refreshed_at > ttl
end

.total_memory_mbObject



11
12
13
14
# File 'lib/legion/llm/discovery/system.rb', line 11

def total_memory_mb
  ensure_total_fresh
  @total_memory_mb
end