legion-llm 0.9.51 → 0.9.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e0cae7c608acb8fe3f09852e7833639c08998bb944b2df026d9c1999c03ff017
4
- data.tar.gz: bbea922035cf6f38eb43139ea5d33deaca70cbbea8693edccb3811bdc5f43608
3
+ metadata.gz: '08d2a4d13f38bdf0c305da0965e688c317deffdad792796daf66f0168bddd37a'
4
+ data.tar.gz: 9c36b44103590f45b9947fee8c3dfaf9651fcec57c193b7c7b4dbfe839e57aed
5
5
  SHA512:
6
- metadata.gz: cc620102bcfdbd73387ba3da2e31e80e4fd9c9b9fd3ceeb85b00417972deeda55bbc427702df3a86ec7a2d3f07be34f99383bf9141b79679e394e66c45eda7c1
7
- data.tar.gz: 4f5b8e4739873d147be2ddfed81c6a04297a016f9c7c4c143b6ad0409f61a9f75c39a14c6de4b30f37119b4e5aa577e4faba813917da0a9c771c016500e079a2
6
+ metadata.gz: 5fec699d874dff0e91c83735becbfb825657c1d9da13e7034c8e6a843dba481e85a30c7975c959282ca8da5e9140eeeff92489a3e32fdad164685d33f83f9e42
7
+ data.tar.gz: 3e149f5061993af9a16f4644b83385a0c3a60fcaa394a2454c88cdecd99890d4fd083c08491fe22715739507875bb544b61747947d2805cc198ed72f9cabde3c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Legion LLM Changelog
2
2
 
3
+ ## [0.9.52] - 2026-05-27
4
+
5
+ ### Fixed
6
+ - Discovery: `verify_embedding` now checks `model_available?` for Ollama instead of blindly returning true — prevents `can_embed?` from reporting true when the embedding model (e.g. `mxbai-embed-large`) hasn't been pulled on the local node
7
+ - Discovery: `detect_embedding_from_registry` now calls `verify_embedding` before setting `@can_embed = true`, closing a gap where registry-declared capability metadata was trusted without verifying the model exists locally
8
+
3
9
  ## [0.9.51] - 2026-05-23
4
10
 
5
11
  ### Changed
@@ -266,6 +266,12 @@ module Legion
266
266
  return false
267
267
  end
268
268
 
269
+ unless verify_embedding(provider, resolved)
270
+ log.debug '[llm][discovery] action=detect_embedding_from_registry verify_failed ' \
271
+ "provider=#{provider} model=#{resolved} — falling through to legacy probe"
272
+ return false
273
+ end
274
+
269
275
  @embedding_provider = provider
270
276
  @embedding_model = resolved
271
277
  @embedding_instance = instance
@@ -324,16 +330,9 @@ module Legion
324
330
 
325
331
  def verify_embedding(provider, model)
326
332
  log.debug "[llm][discovery] verify_embedding provider=#{provider} model=#{model}"
327
- return true if provider == :ollama
328
- return true if provider == :azure
329
- return false unless provider_supports_embeddings?(provider)
330
333
  return true unless model
331
334
 
332
- start_time = Time.now
333
- Call::Dispatch.call(provider: provider, capability: :embed, model: model, text: 'health check')
334
- elapsed = ((Time.now - start_time) * 1000).round
335
- log.info "[llm][discovery] embedding health check ok provider=#{provider} model=#{model} elapsed_ms=#{elapsed}"
336
- true
335
+ model_available?(model, provider: provider)
337
336
  rescue StandardError => e
338
337
  handle_exception(e, level: :warn, operation: 'llm.discovery.verify_embedding', provider: provider, model: model)
339
338
  false
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Legion
4
4
  module LLM
5
- VERSION = '0.9.51'
5
+ VERSION = '0.9.52'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: legion-llm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.51
4
+ version: 0.9.52
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esity