@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / 4f02cb2eac
Fork 0

A high-throughput and memory-efficient inference and serving engine for LLMs

Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git

Synced Nov 10, 05:15 UTC

[Refactor] [7/N] to simplify the vLLM lora serving architecture (#32251)

Signed-off-by: chaunceyjiang <chaunceyjiang@gmail.com>

Chauncey committed Jan 13, 2026 at 23:37 UTC 4f02cb2eac20a1281784914acca80cd1fe2bfd15
5 files changed +23 -13
tests/entrypoints/openai/test_serving_models.py
+3 -1
@@ -10,10 +10,12 @@ from vllm.config import ModelConfig
10 from vllm.engine.protocol import EngineClient
11 from vllm.entrypoints.openai.engine.protocol import (
12 ErrorResponse,
13 +)
14 +from vllm.entrypoints.openai.serving_models import BaseModelPath, OpenAIServingModels
15 +from vllm.entrypoints.serve.lora.protocol import (
16 LoadLoRAAdapterRequest,
17 UnloadLoRAAdapterRequest,
18 )
16 -from vllm.entrypoints.openai.serving_models import BaseModelPath, OpenAIServingModels
19 from vllm.lora.request import LoRARequest
20
21 MODEL_NAME = "hmellor/tiny-random-LlamaForCausalLM"
vllm/entrypoints/openai/engine/protocol.py
-10
@@ -1247,16 +1247,6 @@ StreamingResponsesResponse: TypeAlias = (
1247 )
1248
1249
1250 -class LoadLoRAAdapterRequest(BaseModel):
1251 - lora_name: str
1252 - lora_path: str
1253 -
1254 -
1255 -class UnloadLoRAAdapterRequest(BaseModel):
1256 - lora_name: str
1257 - lora_int_id: int | None = Field(default=None)
1258 -
1259 -
1250 ## Protocols for Audio
1251 AudioResponseFormat: TypeAlias = Literal["json", "text", "srt", "verbose_json", "vtt"]
1252
vllm/entrypoints/openai/serving_models.py
+3 -1
@@ -10,10 +10,12 @@ from vllm.engine.protocol import EngineClient
10 from vllm.entrypoints.openai.engine.protocol import (
11 ErrorInfo,
12 ErrorResponse,
13 - LoadLoRAAdapterRequest,
13 ModelCard,
14 ModelList,
15 ModelPermission,
16 +)
17 +from vllm.entrypoints.serve.lora.protocol import (
18 + LoadLoRAAdapterRequest,
19 UnloadLoRAAdapterRequest,
20 )
21 from vllm.logger import init_logger
vllm/entrypoints/serve/lora/api_router.py
+3 -1
@@ -10,10 +10,12 @@ from vllm import envs
10 from vllm.entrypoints.openai.api_server import models, validate_json_request
11 from vllm.entrypoints.openai.engine.protocol import (
12 ErrorResponse,
13 +)
14 +from vllm.entrypoints.openai.serving_models import OpenAIServingModels
15 +from vllm.entrypoints.serve.lora.protocol import (
16 LoadLoRAAdapterRequest,
17 UnloadLoRAAdapterRequest,
18 )
16 -from vllm.entrypoints.openai.serving_models import OpenAIServingModels
19 from vllm.logger import init_logger
20
21 logger = init_logger(__name__)
vllm/entrypoints/serve/lora/protocol.py new
+14
@@ -0,0 +1,14 @@
1 +# SPDX-License-Identifier: Apache-2.0
2 +# SPDX-FileCopyrightText: Copyright contributors to the vLLM project
3 +
4 +from pydantic import BaseModel, Field
5 +
6 +
7 +class LoadLoRAAdapterRequest(BaseModel):
8 + lora_name: str
9 + lora_path: str
10 +
11 +
12 +class UnloadLoRAAdapterRequest(BaseModel):
13 + lora_name: str
14 + lora_int_id: int | None = Field(default=None)