lex-llm-vllm 0.1.1 → 0.1.3
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 +4 -4
- data/.gitignore +1 -0
- data/CHANGELOG.md +13 -1
- data/Gemfile +2 -6
- data/README.md +5 -3
- data/lex-llm-vllm.gemspec +1 -5
- data/lib/legion/extensions/llm/vllm/provider.rb +4 -4
- data/lib/legion/extensions/llm/vllm/version.rb +1 -1
- data/lib/legion/extensions/llm/vllm.rb +2 -2
- metadata +3 -60
- data/lib/lex_llm_vllm.rb +0 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: dca0ffb2e1335cffd3b857e687ff1d0bb51846af7f9bcaaa108a61a227058286
|
|
4
|
+
data.tar.gz: 71811d068ce3df025d7e83225ff048c7e75f293004565531287678601468aac1
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 82427659e263f7427c0371e4a3b53af87bc7f93242038e61ea249e3a1fb5b4ef1d5c89b0689c82102b294bfd76bd7453f4e8b795216fe2452c5756af6aad56cd
|
|
7
|
+
data.tar.gz: 88688cb6c5a56bdbc59e4ae5189816c0979d38cf37f1fc70ad2f3628d3939e32bf313efffa4eae81ac917bc18c6c2a597ad051906410c2c07144ee8dfb912858
|
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.1.3 - 2026-04-28
|
|
4
|
+
|
|
5
|
+
- Remove the leftover compatibility entrypoint outside the Legion namespace.
|
|
6
|
+
- Load specs through the canonical `legion/extensions/llm/vllm` namespace path.
|
|
7
|
+
- Keep provider gemspec dependencies scoped to the shared `lex-llm` base gem.
|
|
8
|
+
|
|
9
|
+
## 0.1.2 - 2026-04-28
|
|
10
|
+
|
|
11
|
+
- Replace fork-era namespace references with the standard Legion::Extensions::Llm provider contract.
|
|
12
|
+
- Remove GitHub-based lex-llm Gemfile fallback so test installs use only a guarded local path or released gem dependency.
|
|
13
|
+
- Require lex-llm >= 0.1.3 for the cleaned Legion-native base extension.
|
|
14
|
+
|
|
3
15
|
## 0.1.1 - 2026-04-27
|
|
4
16
|
|
|
5
|
-
- Added the vLLM `
|
|
17
|
+
- Added the vLLM `Legion::Extensions::Llm::Provider` implementation using the shared OpenAI-compatible adapter.
|
|
6
18
|
- Moved provider defaults to shared `Legion::Extensions::Llm.provider_settings`.
|
|
7
19
|
- Added vLLM OpenAI-compatible endpoint and management helper coverage.
|
|
8
20
|
- Removed tracked `Gemfile.lock` and ignored future lockfiles for gem development.
|
data/Gemfile
CHANGED
|
@@ -3,12 +3,8 @@
|
|
|
3
3
|
source 'https://rubygems.org'
|
|
4
4
|
|
|
5
5
|
group :test do
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
else
|
|
9
|
-
gem 'lex-llm', git: 'https://github.com/LegionIO/lex-llm',
|
|
10
|
-
branch: ENV.fetch('LEX_LLM_BRANCH', 'main')
|
|
11
|
-
end
|
|
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)
|
|
12
8
|
end
|
|
13
9
|
|
|
14
10
|
gemspec
|
data/README.md
CHANGED
|
@@ -4,10 +4,12 @@ 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
|
-
- `
|
|
10
|
-
- shared `
|
|
11
|
+
- `Legion::Extensions::Llm::Provider` registration as `:vllm`
|
|
12
|
+
- shared `Legion::Extensions::Llm::Provider::OpenAICompatible` request and response handling
|
|
11
13
|
- chat requests through `POST /v1/chat/completions`
|
|
12
14
|
- streaming chat support
|
|
13
15
|
- model discovery through `GET /v1/models`
|
|
@@ -36,7 +38,7 @@ Legion::Extensions::Llm::Vllm.default_settings
|
|
|
36
38
|
## Configuration
|
|
37
39
|
|
|
38
40
|
```ruby
|
|
39
|
-
|
|
41
|
+
Legion::Extensions::Llm.configure do |config|
|
|
40
42
|
config.vllm_api_base = "http://localhost:8000"
|
|
41
43
|
config.vllm_api_key = ENV["VLLM_API_KEY"]
|
|
42
44
|
config.default_model = "meta-llama/Llama-3.1-8B-Instruct"
|
data/lex-llm-vllm.gemspec
CHANGED
|
@@ -23,9 +23,5 @@ 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 '
|
|
27
|
-
spec.add_dependency 'legion-json', '>= 1.0'
|
|
28
|
-
spec.add_dependency 'legion-logging', '>= 1.0'
|
|
29
|
-
spec.add_dependency 'legion-settings', '>= 1.3.14'
|
|
30
|
-
spec.add_dependency 'lex-llm', '>= 0.1.2'
|
|
26
|
+
spec.add_dependency 'lex-llm', '>= 0.1.3'
|
|
31
27
|
end
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
-
require '
|
|
3
|
+
require 'legion/extensions/llm'
|
|
4
4
|
require 'uri'
|
|
5
5
|
|
|
6
6
|
module Legion
|
|
7
7
|
module Extensions
|
|
8
8
|
module Llm
|
|
9
9
|
module Vllm
|
|
10
|
-
# vLLM provider implementation for the
|
|
11
|
-
class Provider <
|
|
12
|
-
include
|
|
10
|
+
# vLLM provider implementation for the Legion::Extensions::Llm base provider contract.
|
|
11
|
+
class Provider < Legion::Extensions::Llm::Provider
|
|
12
|
+
include Legion::Extensions::Llm::Provider::OpenAICompatible
|
|
13
13
|
|
|
14
14
|
class << self
|
|
15
15
|
def slug = 'vllm'
|
|
@@ -34,5 +34,5 @@ module Legion
|
|
|
34
34
|
end
|
|
35
35
|
end
|
|
36
36
|
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
Legion::Extensions::Llm::Provider.register(Legion::Extensions::Llm::Vllm::PROVIDER_FAMILY,
|
|
38
|
+
Legion::Extensions::Llm::Vllm::Provider)
|
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.
|
|
4
|
+
version: 0.1.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- LegionIO
|
|
@@ -9,76 +9,20 @@ 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
|
-
- !ruby/object:Gem::Dependency
|
|
27
|
-
name: legion-json
|
|
28
|
-
requirement: !ruby/object:Gem::Requirement
|
|
29
|
-
requirements:
|
|
30
|
-
- - ">="
|
|
31
|
-
- !ruby/object:Gem::Version
|
|
32
|
-
version: '1.0'
|
|
33
|
-
type: :runtime
|
|
34
|
-
prerelease: false
|
|
35
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
36
|
-
requirements:
|
|
37
|
-
- - ">="
|
|
38
|
-
- !ruby/object:Gem::Version
|
|
39
|
-
version: '1.0'
|
|
40
|
-
- !ruby/object:Gem::Dependency
|
|
41
|
-
name: legion-logging
|
|
42
|
-
requirement: !ruby/object:Gem::Requirement
|
|
43
|
-
requirements:
|
|
44
|
-
- - ">="
|
|
45
|
-
- !ruby/object:Gem::Version
|
|
46
|
-
version: '1.0'
|
|
47
|
-
type: :runtime
|
|
48
|
-
prerelease: false
|
|
49
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
50
|
-
requirements:
|
|
51
|
-
- - ">="
|
|
52
|
-
- !ruby/object:Gem::Version
|
|
53
|
-
version: '1.0'
|
|
54
|
-
- !ruby/object:Gem::Dependency
|
|
55
|
-
name: legion-settings
|
|
56
|
-
requirement: !ruby/object:Gem::Requirement
|
|
57
|
-
requirements:
|
|
58
|
-
- - ">="
|
|
59
|
-
- !ruby/object:Gem::Version
|
|
60
|
-
version: 1.3.14
|
|
61
|
-
type: :runtime
|
|
62
|
-
prerelease: false
|
|
63
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
64
|
-
requirements:
|
|
65
|
-
- - ">="
|
|
66
|
-
- !ruby/object:Gem::Version
|
|
67
|
-
version: 1.3.14
|
|
68
12
|
- !ruby/object:Gem::Dependency
|
|
69
13
|
name: lex-llm
|
|
70
14
|
requirement: !ruby/object:Gem::Requirement
|
|
71
15
|
requirements:
|
|
72
16
|
- - ">="
|
|
73
17
|
- !ruby/object:Gem::Version
|
|
74
|
-
version: 0.1.
|
|
18
|
+
version: 0.1.3
|
|
75
19
|
type: :runtime
|
|
76
20
|
prerelease: false
|
|
77
21
|
version_requirements: !ruby/object:Gem::Requirement
|
|
78
22
|
requirements:
|
|
79
23
|
- - ">="
|
|
80
24
|
- !ruby/object:Gem::Version
|
|
81
|
-
version: 0.1.
|
|
25
|
+
version: 0.1.3
|
|
82
26
|
description: vLLM provider integration for the LegionIO LLM routing framework.
|
|
83
27
|
email:
|
|
84
28
|
- matthewdiverson@gmail.com
|
|
@@ -99,7 +43,6 @@ files:
|
|
|
99
43
|
- lib/legion/extensions/llm/vllm.rb
|
|
100
44
|
- lib/legion/extensions/llm/vllm/provider.rb
|
|
101
45
|
- lib/legion/extensions/llm/vllm/version.rb
|
|
102
|
-
- lib/lex_llm_vllm.rb
|
|
103
46
|
homepage: https://github.com/LegionIO/lex-llm-vllm
|
|
104
47
|
licenses:
|
|
105
48
|
- MIT
|
data/lib/lex_llm_vllm.rb
DELETED