lex-llm-vllm 0.1.2 → 0.1.5

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: 492ce87e8f4259c9b7f711aaf7e28a47a9770b9c864f8a0bd542535faf0d46c9
4
- data.tar.gz: 8519f97449e475ee1f5ecafd1e7f41c666ee7fc9dbe0ce3eefadc6f0b42e860d
3
+ metadata.gz: '09f2552a0f25448494068e45c5ae44d199b7311b3f1256893341c5e4fea6db45'
4
+ data.tar.gz: 4ca2f6e31f494983d97d67ab4d45c56e7c0e8a768c322fbfa313119789c96557
5
5
  SHA512:
6
- metadata.gz: f2da9242f3cdf4d56924976228dc9e671d8b5fc6e33137b7a09185d310a379cc8786f2c5f344c9d4cd42d3eabaec6d31ebd22512e3fc91fe28f6d3a79bf16ee0
7
- data.tar.gz: 3ad280d2659d82b102f0480237ebba3a8f446bf131fa3f628a1d1904925996d53f4f3dabe5653c691812779f6cf2c2cdf291e40a9da2df753ece0b88b9a1cb3a
6
+ metadata.gz: 964bb4761e53e9141337266c38f470bc358d479f001dd3cb106ce21daeaf63fa3fe777b7f80f7200aeed3cbbcfcb121195614afbaecb26de4a13f618ae882146
7
+ data.tar.gz: 367efe9b428ca024db4d2de25ffef52e79207b17934a68b47eaa6a10d7b95f6e0dcc05a43d758b09d06fd7db27246b6e4acb9b901fc950fc9b636ec555822f34
data/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.5 - 2026-04-28
4
+
5
+ - Require current shared Legion JSON, logging, settings, and LLM extension gems.
6
+
7
+ ## 0.1.4 - 2026-04-28
8
+
9
+ - Require `lex-llm >= 0.1.4` so OpenAI-compatible model discovery exposes normalized capabilities and modalities.
10
+ - Add explicit discovered-model capability mapping for vLLM routing metadata.
11
+
12
+ ## 0.1.3 - 2026-04-28
13
+
14
+ - Remove the leftover compatibility entrypoint outside the Legion namespace.
15
+ - Load specs through the canonical `legion/extensions/llm/vllm` namespace path.
16
+ - Keep provider gemspec dependencies scoped to the shared `lex-llm` base gem.
17
+
3
18
  ## 0.1.2 - 2026-04-28
4
19
 
5
20
  - Replace fork-era namespace references with the standard Legion::Extensions::Llm provider contract.
data/Gemfile CHANGED
@@ -3,8 +3,8 @@
3
3
  source 'https://rubygems.org'
4
4
 
5
5
  group :test do
6
- lex_llm_path = ENV.fetch('LEX_LLM_PATH', File.expand_path('../lex-llm', __dir__))
7
- gem 'lex-llm', path: lex_llm_path if File.directory?(lex_llm_path)
6
+ llm_base_path = ENV.fetch('LEX_LLM_PATH', File.expand_path('../lex-llm', __dir__))
7
+ gem 'lex-llm', path: llm_base_path if File.directory?(llm_base_path)
8
8
  end
9
9
 
10
10
  gemspec
data/README.md CHANGED
@@ -4,6 +4,8 @@ LegionIO LLM provider extension for vLLM.
4
4
 
5
5
  This gem lives under `Legion::Extensions::Llm::Vllm` and depends on `lex-llm` for shared provider-neutral routing, fleet, and schema primitives.
6
6
 
7
+ Load it with `require 'legion/extensions/llm/vllm'`.
8
+
7
9
  ## What It Provides
8
10
 
9
11
  - `Legion::Extensions::Llm::Provider` registration as `:vllm`
@@ -13,6 +15,7 @@ This gem lives under `Legion::Extensions::Llm::Vllm` and depends on `lex-llm` fo
13
15
  - model discovery through `GET /v1/models`
14
16
  - embeddings through `POST /v1/embeddings`
15
17
  - vLLM management helpers for `/health`, `/version`, `/reset_prefix_cache`, `/reset_mm_cache`, `/sleep`, and `/wake_up`
18
+ - normalized OpenAI-compatible capability and modality metadata for discovered models
16
19
  - shared fleet/default settings via `Legion::Extensions::Llm.provider_settings`
17
20
 
18
21
  ## Defaults
data/lex-llm-vllm.gemspec CHANGED
@@ -23,9 +23,8 @@ Gem::Specification.new do |spec|
23
23
  spec.files = `git ls-files -z`.split("\x0").reject { |file| file.match(%r{^(spec|test|features|tmp|coverage)/}) }
24
24
  spec.require_paths = ['lib']
25
25
 
26
- spec.add_dependency 'faraday', '>= 2.0'
27
- spec.add_dependency 'legion-json', '>= 1.0'
28
- spec.add_dependency 'legion-logging', '>= 1.0'
26
+ spec.add_dependency 'legion-json', '>= 1.2.1'
27
+ spec.add_dependency 'legion-logging', '>= 1.3.2'
29
28
  spec.add_dependency 'legion-settings', '>= 1.3.14'
30
- spec.add_dependency 'lex-llm', '>= 0.1.3'
29
+ spec.add_dependency 'lex-llm', '>= 0.1.5'
31
30
  end
@@ -28,6 +28,15 @@ module Legion
28
28
  def vision?(_model) = true
29
29
  def functions?(_model) = true
30
30
  def embeddings?(_model) = true
31
+
32
+ def critical_capabilities_for(model)
33
+ [
34
+ ('streaming' if streaming?(model)),
35
+ ('function_calling' if functions?(model)),
36
+ ('vision' if vision?(model)),
37
+ ('embeddings' if embeddings?(model))
38
+ ].compact
39
+ end
31
40
  end
32
41
 
33
42
  def api_base
@@ -4,7 +4,7 @@ module Legion
4
4
  module Extensions
5
5
  module Llm
6
6
  module Vllm
7
- VERSION = '0.1.2'
7
+ VERSION = '0.1.5'
8
8
  end
9
9
  end
10
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lex-llm-vllm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - LegionIO
@@ -9,48 +9,34 @@ bindir: bin
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
- - !ruby/object:Gem::Dependency
13
- name: faraday
14
- requirement: !ruby/object:Gem::Requirement
15
- requirements:
16
- - - ">="
17
- - !ruby/object:Gem::Version
18
- version: '2.0'
19
- type: :runtime
20
- prerelease: false
21
- version_requirements: !ruby/object:Gem::Requirement
22
- requirements:
23
- - - ">="
24
- - !ruby/object:Gem::Version
25
- version: '2.0'
26
12
  - !ruby/object:Gem::Dependency
27
13
  name: legion-json
28
14
  requirement: !ruby/object:Gem::Requirement
29
15
  requirements:
30
16
  - - ">="
31
17
  - !ruby/object:Gem::Version
32
- version: '1.0'
18
+ version: 1.2.1
33
19
  type: :runtime
34
20
  prerelease: false
35
21
  version_requirements: !ruby/object:Gem::Requirement
36
22
  requirements:
37
23
  - - ">="
38
24
  - !ruby/object:Gem::Version
39
- version: '1.0'
25
+ version: 1.2.1
40
26
  - !ruby/object:Gem::Dependency
41
27
  name: legion-logging
42
28
  requirement: !ruby/object:Gem::Requirement
43
29
  requirements:
44
30
  - - ">="
45
31
  - !ruby/object:Gem::Version
46
- version: '1.0'
32
+ version: 1.3.2
47
33
  type: :runtime
48
34
  prerelease: false
49
35
  version_requirements: !ruby/object:Gem::Requirement
50
36
  requirements:
51
37
  - - ">="
52
38
  - !ruby/object:Gem::Version
53
- version: '1.0'
39
+ version: 1.3.2
54
40
  - !ruby/object:Gem::Dependency
55
41
  name: legion-settings
56
42
  requirement: !ruby/object:Gem::Requirement
@@ -71,14 +57,14 @@ dependencies:
71
57
  requirements:
72
58
  - - ">="
73
59
  - !ruby/object:Gem::Version
74
- version: 0.1.3
60
+ version: 0.1.5
75
61
  type: :runtime
76
62
  prerelease: false
77
63
  version_requirements: !ruby/object:Gem::Requirement
78
64
  requirements:
79
65
  - - ">="
80
66
  - !ruby/object:Gem::Version
81
- version: 0.1.3
67
+ version: 0.1.5
82
68
  description: vLLM provider integration for the LegionIO LLM routing framework.
83
69
  email:
84
70
  - matthewdiverson@gmail.com
@@ -99,7 +85,6 @@ files:
99
85
  - lib/legion/extensions/llm/vllm.rb
100
86
  - lib/legion/extensions/llm/vllm/provider.rb
101
87
  - lib/legion/extensions/llm/vllm/version.rb
102
- - lib/lex_llm_vllm.rb
103
88
  homepage: https://github.com/LegionIO/lex-llm-vllm
104
89
  licenses:
105
90
  - MIT
data/lib/lex_llm_vllm.rb DELETED
@@ -1,3 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'legion/extensions/llm/vllm'