@tduncan / Nvidia-Optimization-Stack-VLLM Mirror · read-only / commits / 996222f4bf
Fork 0

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

[CI] Reorganize entrypoints CI (#44947)

Signed-off-by: wang.yuqi <yuqi.wang@daocloud.io>

wang.yuqi committed Jun 9, 2026 at 15:46 UTC 996222f4bffc7b0c1e50bb18b42e9f0f09867d7b
20 files changed +125 -124
.buildkite/test-amd.yaml
+73 -70
@@ -88,16 +88,16 @@
88 # - Do NOT remove `VLLM_WORKER_MULTIPROC_METHOD=spawn` setting as ROCm requires this for certain models to function. #
89 # * [Transformers Nightly Models]: Whisper needs `VLLM_WORKER_MULTIPROC_METHOD=spawn` to avoid deadlock. #
90 # * [Plugin Tests (2 GPUs)]: #
91 -# - {`pytest -v -s entrypoints/openai/test_oot_registration.py`}: It needs a clean process #
92 -# - {`pytest -v -s models/test_oot_registration.py`}: It needs a clean process #
93 -# - {`pytest -v -s plugins/lora_resolvers`}: Unit tests for in-tree lora resolver plugins #
91 +# - {`pytest -v -s plugins_tests/test_oot_registration_online.py`}: It needs a clean process #
92 +# - {`pytest -v -s plugins_tests/test_oot_registration_offline.py`}: It needs a clean process #
93 +# - {`pytest -v -s plugins_tests/lora_resolvers`}: Unit tests for in-tree lora resolver plugins #
94 # * [LoRA TP (Distributed)]: #
95 # - There is some Tensor Parallelism related processing logic in LoRA that requires multi-GPU testing for validation. #
96 # - {`pytest -v -s -x lora/test_gptoss_tp.py`}: Disabled for now because MXFP4 backend on non-cuda platform doesn't support #
97 # LoRA yet. #
98 # * [Distributed Tests (NxGPUs)(HW-TAG)]: Don't test llama model here, it seems hf implementation is buggy. See: #
99 # https://github.com/vllm-project/vllm/pull/5689 #
100 -# * [Distributed Tests (NxGPUs)(HW-TAG)]: Some old E2E tests were removed in https://github.com/vllm-project/vllm/pull/33293 #
100 +# * [Distributed Tests (NxGPUs)(HW-TAG)]: Some old E2E tests were removed in https://github.com/vllm-project/vllm/pull/33293 #
101 # in favor of new tests in fusions_e2e. We avoid replicating the new jobs in #
102 # this file as it's deprecated. #
103 # #
@@ -617,9 +617,9 @@ steps:
617 - pytest -v -s plugins_tests/test_scheduler_plugins.py
618 - pip install -e ./plugins/vllm_add_dummy_model
619 - pytest -v -s distributed/test_distributed_oot.py
620 - - pytest -v -s entrypoints/openai/chat_completion/test_oot_registration.py
621 - - pytest -v -s models/test_oot_registration.py
622 - - pytest -v -s plugins/lora_resolvers
620 + - pytest -v -s plugins_tests/test_oot_registration_online.py # it needs a clean process
621 + - pytest -v -s plugins_tests/test_oot_registration_offline.py # it needs a clean process
622 + - pytest -v -s plugins_tests/lora_resolvers # unit tests for in-tree lora resolver plugins
623
624 #------------------------------------------------------------ mi250 · v1 -------------------------------------------------------------#
625
@@ -1187,39 +1187,39 @@ steps:
1187
1188 #-------------------------------------------------------- mi300 · entrypoints --------------------------------------------------------#
1189
1190 -- label: Entrypoints Integration (API Server 2) # TBD
1190 +- label: Entrypoints Unit Tests # TBD
1191 timeout_in_minutes: 180
1192 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1193 agent_pool: mi300_1
1194 - optional: true
1194 fast_check: true
1196 - torch_nightly: true
1195 working_dir: "/vllm-workspace/tests"
1196 source_file_dependencies:
1199 - - vllm/
1200 - - tests/entrypoints/serve
1197 + - vllm/entrypoints
1198 + - tests/entrypoints/unit_tests
1199 + - tests/entrypoints/weight_transfer
1200 + - vllm/platforms/rocm.py
1201 commands:
1202 - - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1203 - - pytest -v -s entrypoints/serve --ignore=entrypoints/serve/dev/rpc
1204 - - PYTHONPATH=/vllm-workspace pytest -v -s entrypoints/serve/dev/rpc
1202 + - pytest -v -s entrypoints/unit_tests
1203 + - pytest -v -s entrypoints/weight_transfer
1204
1206 -- label: Entrypoints Integration (API Server openai - Part 1) # TBD
1205 +- label: Entrypoints Integration (LLM) # TBD
1206 timeout_in_minutes: 180
1207 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1208 agent_pool: mi300_1
1209 + optional: true
1210 fast_check: true
1211 torch_nightly: true
1212 - optional: true
1212 working_dir: "/vllm-workspace/tests"
1213 source_file_dependencies:
1214 - vllm/
1216 - - tests/entrypoints/openai
1217 - - tests/entrypoints/test_chat_utils
1215 + - tests/entrypoints/llm
1216 commands:
1217 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1220 - - pytest -v -s entrypoints/openai/chat_completion --ignore=entrypoints/openai/chat_completion/test_oot_registration.py
1218 + - pytest -v -s entrypoints/llm --ignore=entrypoints/llm/test_generate.py --ignore=entrypoints/llm/test_collective_rpc.py --ignore=entrypoints/llm/offline_mode
1219 + - pytest -v -s entrypoints/llm/test_generate.py # it needs a clean process
1220 + - pytest -v -s entrypoints/llm/offline_mode # Needs to avoid interference with other tests
1221
1222 -- label: Entrypoints Integration (API Server openai - Part 2) # TBD
1222 +- label: Entrypoints Integration (API Server) # TBD
1223 timeout_in_minutes: 180
1224 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1225 agent_pool: mi300_1
@@ -1229,24 +1229,19 @@ steps:
1229 working_dir: "/vllm-workspace/tests"
1230 source_file_dependencies:
1231 - vllm/
1232 - - tests/entrypoints/openai
1233 - - tests/entrypoints/test_chat_utils
1234 - - tests/entrypoints/generate
1235 - - tests/tool_use
1232 + - tests/entrypoints/serve
1233 commands:
1234 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1238 - - pytest -v -s entrypoints/openai/completion --ignore=entrypoints/openai/completion/test_tensorizer_entrypoint.py
1239 - - pytest -v -s entrypoints/test_chat_utils.py
1240 - - pytest -v -s entrypoints/generate
1241 - - pytest -v -s tool_use
1235 + - pytest -v -s entrypoints/serve --ignore=entrypoints/serve/dev/rpc
1236 + - PYTHONPATH=/vllm-workspace pytest -v -s entrypoints/serve/dev/rpc
1237
1243 -- label: Entrypoints Integration (API Server openai - Part 3) # TBD
1238 +- label: Entrypoints Integration (API Server OpenAI - Part 1) # TBD
1239 timeout_in_minutes: 180
1240 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1241 agent_pool: mi300_1
1247 - optional: true
1242 fast_check: true
1243 torch_nightly: true
1244 + optional: true
1245 working_dir: "/vllm-workspace/tests"
1246 source_file_dependencies:
1247 - vllm/
@@ -1254,54 +1249,61 @@ steps:
1249 - tests/entrypoints/test_chat_utils
1250 commands:
1251 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1257 - - pytest -v -s entrypoints/openai --ignore=entrypoints/openai/chat_completion --ignore=entrypoints/openai/completion --ignore=entrypoints/openai/correctness/ --ignore=entrypoints/openai/tool_parsers/ --ignore=entrypoints/openai/responses --ignore=entrypoints/openai/test_multi_api_servers.py
1252 + - pytest -v -s entrypoints/openai/ --ignore=entrypoints/openai/completion --ignore=entrypoints/openai/chat_completion --ignore=entrypoints/openai/responses --ignore=entrypoints/openai/correctness
1253
1259 -- label: Entrypoints Integration (Speech to Text) # TBD
1254 +- label: Entrypoints Integration (API Server OpenAI - Part 2) # TBD
1255 timeout_in_minutes: 180
1256 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1257 agent_pool: mi300_1
1258 fast_check: true
1259 torch_nightly: true
1260 + optional: true
1261 working_dir: "/vllm-workspace/tests"
1262 source_file_dependencies:
1263 - vllm/
1268 - - tests/entrypoints/speech_to_text
1264 + - tests/entrypoints/openai
1265 + - tests/entrypoints/test_chat_utils
1266 commands:
1267 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1271 - - pytest -v -s entrypoints/speech_to_text
1268 + - pytest -v -s entrypoints/openai/chat_completion
1269 + - pytest -v -s entrypoints/openai/completion --ignore=entrypoints/openai/completion/test_tensorizer_entrypoint.py
1270
1273 -- label: Entrypoints Integration (Multimodal)
1271 +- label: Entrypoints Integration (API Server Generate) # TBD
1272 timeout_in_minutes: 180
1273 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1274 agent_pool: mi300_1
1275 + optional: true
1276 fast_check: true
1277 torch_nightly: true
1278 working_dir: "/vllm-workspace/tests"
1279 source_file_dependencies:
1280 - vllm/
1282 - - tests/entrypoints/multimodal
1281 + - tests/tool_use
1282 + - tests/entrypoints/tool_parsers
1283 + - tests/entrypoints/anthropic
1284 + - tests/entrypoints/generate
1285 commands:
1286 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1285 - - pytest -v -s entrypoints/multimodal
1287 + - pytest -v -s tool_use
1288 + - pytest -v -s entrypoints/tool_parsers
1289 + - pytest -v -s entrypoints/generate
1290 + - pytest -v -s entrypoints/anthropic
1291
1287 -- label: Entrypoints Integration (LLM) # TBD
1292 +- label: Entrypoints Integration (Responses API) # TBD
1293 timeout_in_minutes: 180
1294 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1295 agent_pool: mi300_1
1291 - optional: true
1296 fast_check: true
1297 torch_nightly: true
1298 working_dir: "/vllm-workspace/tests"
1299 source_file_dependencies:
1300 - vllm/
1297 - - tests/entrypoints/llm
1301 + - tests/entrypoints/openai/responses
1302 commands:
1303 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1300 - - pytest -v -s entrypoints/llm --ignore=entrypoints/llm/test_generate.py --ignore=entrypoints/llm/test_collective_rpc.py --ignore=entrypoints/llm/offline_mode
1301 - - pytest -v -s entrypoints/llm/test_generate.py # it needs a clean process
1302 - - pytest -v -s entrypoints/llm/offline_mode # Needs to avoid interference with other tests
1304 + - pytest -v -s entrypoints/openai/responses
1305
1304 -- label: Entrypoints Integration (Pooling) # TBD
1306 +- label: Entrypoints Integration (Speech to Text) # TBD
1307 timeout_in_minutes: 180
1308 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1309 agent_pool: mi300_1
@@ -1310,12 +1312,12 @@ steps:
1312 working_dir: "/vllm-workspace/tests"
1313 source_file_dependencies:
1314 - vllm/
1313 - - tests/entrypoints/pooling
1315 + - tests/entrypoints/speech_to_text
1316 commands:
1317 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1316 - - pytest -v -s entrypoints/pooling
1318 + - pytest -v -s entrypoints/speech_to_text
1319
1318 -- label: Entrypoints Integration (Responses API) # TBD
1320 +- label: Entrypoints Integration (Multimodal)
1321 timeout_in_minutes: 180
1322 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1323 agent_pool: mi300_1
@@ -1324,24 +1326,24 @@ steps:
1326 working_dir: "/vllm-workspace/tests"
1327 source_file_dependencies:
1328 - vllm/
1327 - - tests/entrypoints/openai/responses
1329 + - tests/entrypoints/multimodal
1330 commands:
1331 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1330 - - pytest -v -s entrypoints/openai/responses
1332 + - pytest -v -s entrypoints/multimodal
1333
1332 -- label: Entrypoints Unit Tests # TBD
1334 +- label: Entrypoints Integration (Pooling) # TBD
1335 timeout_in_minutes: 180
1336 mirror_hardwares: [amdexperimental, amdproduction, amdgfx942nightly, amdmi300]
1337 agent_pool: mi300_1
1338 fast_check: true
1339 + torch_nightly: true
1340 working_dir: "/vllm-workspace/tests"
1341 source_file_dependencies:
1339 - - vllm/entrypoints
1340 - - tests/entrypoints/
1341 - - vllm/platforms/rocm.py
1342 + - vllm/
1343 + - tests/entrypoints/pooling
1344 commands:
1343 - - pytest -v -s entrypoints/openai/tool_parsers
1344 - - pytest -v -s entrypoints/ --ignore=entrypoints/llm --ignore=entrypoints/openai --ignore=entrypoints/serve --ignore=entrypoints/test_chat_utils.py --ignore=entrypoints/pooling --ignore=entrypoints/speech_to_text --ignore=entrypoints/pooling --ignore=entrypoints/multimodal --ignore=entrypoints/generate
1345 + - export VLLM_WORKER_MULTIPROC_METHOD=spawn
1346 + - pytest -v -s entrypoints/pooling
1347
1348 - label: OpenAI API correctness # TBD
1349 timeout_in_minutes: 180
@@ -1352,7 +1354,6 @@ steps:
1354 source_file_dependencies:
1355 - csrc/
1356 - vllm/entrypoints/openai/
1355 - - vllm/model_executor/models/whisper.py
1357 - vllm/model_executor/layers/
1358 - vllm/v1/attention/backends/
1359 - vllm/v1/attention/selector.py
@@ -2797,7 +2798,7 @@ steps:
2798
2799 #-------------------------------------------------------- mi355 · entrypoints --------------------------------------------------------#
2800
2800 -- label: Entrypoints Integration (API Server 2) # TBD
2801 +- label: Entrypoints Integration (API Server) # TBD
2802 timeout_in_minutes: 180
2803 mirror_hardwares: [amdexperimental, amdproduction, amdgfx950nightly, amdmi355]
2804 agent_pool: mi355_1
@@ -2813,7 +2814,7 @@ steps:
2814 - pytest -v -s entrypoints/serve --ignore=entrypoints/serve/dev/rpc
2815 - PYTHONPATH=/vllm-workspace pytest -v -s entrypoints/serve/dev/rpc
2816
2816 -- label: Entrypoints Integration (API Server openai - Part 1) # TBD
2817 +- label: Entrypoints Integration (API Server OpenAI - Part 1) # TBD
2818 timeout_in_minutes: 180
2819 mirror_hardwares: [amdexperimental, amdproduction, amdgfx950nightly, amdmi355]
2820 agent_pool: mi355_1
@@ -2827,9 +2828,9 @@ steps:
2828 - tests/entrypoints/test_chat_utils
2829 commands:
2830 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
2830 - - pytest -v -s entrypoints/openai/chat_completion --ignore=entrypoints/openai/chat_completion/test_oot_registration.py
2831 + - pytest -v -s entrypoints/openai --ignore=entrypoints/openai/completion --ignore=entrypoints/openai/chat_completion --ignore=entrypoints/openai/responses --ignore=entrypoints/openai/correctness
2832
2832 -- label: Entrypoints Integration (API Server openai - Part 2) # TBD
2833 +- label: Entrypoints Integration (API Server OpenAI - Part 2) # TBD
2834 timeout_in_minutes: 180
2835 mirror_hardwares: [amdexperimental, amdproduction, amdgfx950nightly, amdmi355]
2836 agent_pool: mi355_1
@@ -2841,29 +2842,31 @@ steps:
2842 - vllm/
2843 - tests/entrypoints/openai
2844 - tests/entrypoints/test_chat_utils
2844 - - tests/entrypoints/generate
2845 - - tests/tool_use
2845 commands:
2846 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
2847 + - pytest -v -s entrypoints/openai/chat_completion
2848 - pytest -v -s entrypoints/openai/completion --ignore=entrypoints/openai/completion/test_tensorizer_entrypoint.py
2849 - - pytest -v -s entrypoints/test_chat_utils.py
2850 - - pytest -v -s entrypoints/generate
2851 - - pytest -v -s tool_use
2849
2853 -- label: Entrypoints Integration (API Server openai - Part 3) # TBD
2850 +- label: Entrypoints Integration (API Server Generate) # TBD
2851 timeout_in_minutes: 180
2852 mirror_hardwares: [amdexperimental, amdproduction, amdgfx950nightly, amdmi355]
2853 agent_pool: mi355_1
2854 fast_check: true
2855 torch_nightly: true
2856 + optional: true
2857 working_dir: "/vllm-workspace/tests"
2858 source_file_dependencies:
2859 - vllm/
2862 - - tests/entrypoints/openai
2863 - - tests/entrypoints/test_chat_utils
2860 + - tests/tool_use
2861 + - tests/entrypoints/tool_parsers
2862 + - tests/entrypoints/anthropic
2863 + - tests/entrypoints/generate
2864 commands:
2865 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
2866 - - pytest -v -s entrypoints/openai --ignore=entrypoints/openai/chat_completion --ignore=entrypoints/openai/completion --ignore=entrypoints/openai/correctness/ --ignore=entrypoints/openai/tool_parsers/ --ignore=entrypoints/openai/responses --ignore=entrypoints/openai/test_multi_api_servers.py
2866 + - pytest -v -s tool_use
2867 + - pytest -v -s entrypoints/tool_parsers
2868 + - pytest -v -s entrypoints/generate
2869 + - pytest -v -s entrypoints/anthropic
2870
2871 - label: Entrypoints Integration (Speech to Text) # TBD
2872 timeout_in_minutes: 180
.buildkite/test_areas/entrypoints.yaml
+44 -44
@@ -8,10 +8,11 @@ steps:
8 working_dir: "/vllm-workspace/tests"
9 source_file_dependencies:
10 - vllm/entrypoints
11 - - tests/entrypoints/
11 + - tests/entrypoints/unit_tests
12 + - tests/entrypoints/weight_transfer
13 commands:
13 - - pytest -v -s entrypoints/openai/tool_parsers
14 - - pytest -v -s entrypoints/ --ignore=entrypoints/llm --ignore=entrypoints/openai --ignore=entrypoints/serve --ignore=entrypoints/test_chat_utils.py --ignore=entrypoints/pooling --ignore=entrypoints/speech_to_text --ignore=entrypoints/multimodal --ignore=entrypoints/generate
14 + - pytest -v -s entrypoints/unit_tests
15 + - pytest -v -s entrypoints/weight_transfer
16
17 - label: Entrypoints Integration (LLM)
18 key: entrypoints-integration-llm
@@ -31,50 +32,45 @@ steps:
32 depends_on:
33 - image-build-amd
34
34 -- label: Entrypoints Integration (API Server openai - Part 1)
35 - key: entrypoints-integration-api-server-openai-part-1
36 - timeout_in_minutes: 50
35 +- label: Entrypoints Integration (API Server)
36 + key: entrypoints-integration-api-server
37 + device: h200_35gb
38 + timeout_in_minutes: 130
39 working_dir: "/vllm-workspace/tests"
40 source_file_dependencies:
41 - vllm/
40 - - tests/entrypoints/openai
41 - - tests/entrypoints/test_chat_utils
42 + - tests/entrypoints/serve
43 commands:
44 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
44 - - pytest -v -s entrypoints/openai/chat_completion --ignore=entrypoints/openai/chat_completion/test_oot_registration.py
45 + - pytest -v -s entrypoints/serve --ignore=entrypoints/serve/dev/rpc
46 + - PYTHONPATH=/vllm-workspace pytest -v -s entrypoints/serve/dev/rpc
47 mirror:
48 amd:
49 device: mi300_1
48 - timeout_in_minutes: 80
50 depends_on:
51 - image-build-amd
52
52 -- label: Entrypoints Integration (API Server openai - Part 2)
53 - key: entrypoints-integration-api-server-openai-part-2
53 +- label: Entrypoints Integration (API Server OpenAI - Part 1)
54 + key: entrypoints-integration-api-server-openai-part-1
55 timeout_in_minutes: 50
56 working_dir: "/vllm-workspace/tests"
57 source_file_dependencies:
58 - vllm/
59 - tests/entrypoints/openai
60 - tests/entrypoints/test_chat_utils
60 - - tests/entrypoints/generate
61 - - tests/tool_use
61 commands:
63 - - pytest -v -s entrypoints/openai/completion --ignore=entrypoints/openai/completion/test_tensorizer_entrypoint.py
64 - - pytest -v -s entrypoints/test_chat_utils.py
65 - - pytest -v -s entrypoints/generate
66 - - pytest -v -s tool_use
62 + - export VLLM_WORKER_MULTIPROC_METHOD=spawn
63 + - pytest -v -s entrypoints/openai --ignore=entrypoints/openai/completion --ignore=entrypoints/openai/chat_completion --ignore=entrypoints/openai/responses --ignore=entrypoints/openai/correctness
64 mirror:
65 amd:
66 device: mi300_1
70 - timeout_in_minutes: 60
67 + timeout_in_minutes: 80
68 depends_on:
69 - image-build-amd
70
74 -- label: Entrypoints Integration (API Server openai - Part 3)
75 - key: entrypoints-integration-api-server-openai-part-3
71 +- label: Entrypoints Integration (API Server OpenAI - Part 2)
72 + key: entrypoints-integration-api-server-openai-part-2
73 timeout_in_minutes: 50
77 - device: h200_18gb
74 working_dir: "/vllm-workspace/tests"
75 source_file_dependencies:
76 - vllm/
@@ -82,32 +78,47 @@ steps:
78 - tests/entrypoints/test_chat_utils
79 commands:
80 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
85 - - pytest -v -s entrypoints/openai --ignore=entrypoints/openai/chat_completion --ignore=entrypoints/openai/completion --ignore=entrypoints/openai/correctness/ --ignore=entrypoints/openai/tool_parsers/ --ignore=entrypoints/openai/responses --ignore=entrypoints/openai/test_multi_api_servers.py
81 + - pytest -v -s entrypoints/openai/chat_completion
82 + - pytest -v -s entrypoints/openai/completion --ignore=entrypoints/openai/completion/test_tensorizer_entrypoint.py
83 mirror:
84 amd:
88 - device: mi325_1
89 - timeout_in_minutes: 60
85 + device: mi300_1
86 + timeout_in_minutes: 80
87 depends_on:
88 - image-build-amd
89
93 -- label: Entrypoints Integration (API Server 2)
94 - device: h200_35gb
95 - key: entrypoints-integration-api-server-2
96 - timeout_in_minutes: 130
90 +- label: Entrypoints Integration (API Server Generate)
91 + key: entrypoints-integration-api-server-generate
92 + timeout_in_minutes: 50
93 working_dir: "/vllm-workspace/tests"
94 source_file_dependencies:
95 - vllm/
100 - - tests/entrypoints/serve
96 + - tests/tool_use
97 + - tests/entrypoints/tool_parsers
98 + - tests/entrypoints/anthropic
99 + - tests/entrypoints/generate
100 commands:
102 - - export VLLM_WORKER_MULTIPROC_METHOD=spawn
103 - - pytest -v -s entrypoints/serve --ignore=entrypoints/serve/dev/rpc
104 - - PYTHONPATH=/vllm-workspace pytest -v -s entrypoints/serve/dev/rpc
101 + - pytest -v -s tool_use
102 + - pytest -v -s entrypoints/tool_parsers
103 + - pytest -v -s entrypoints/generate
104 + - pytest -v -s entrypoints/anthropic
105 mirror:
106 amd:
107 device: mi300_1
108 + timeout_in_minutes: 60
109 depends_on:
110 - image-build-amd
111
112 +- label: Entrypoints Integration (Responses API)
113 + key: entrypoints-integration-responses-api
114 + timeout_in_minutes: 50
115 + working_dir: "/vllm-workspace/tests"
116 + source_file_dependencies:
117 + - vllm/
118 + - tests/entrypoints/openai/responses
119 + commands:
120 + - pytest -v -s entrypoints/openai/responses
121 +
122 - label: Entrypoints Integration (Speech to Text)
123 device: h200_35gb
124 key: entrypoints-integration-speech_to_text
@@ -143,16 +154,6 @@ steps:
154 - export VLLM_WORKER_MULTIPROC_METHOD=spawn
155 - pytest -v -s entrypoints/pooling
156
146 -- label: Entrypoints Integration (Responses API)
147 - key: entrypoints-integration-responses-api
148 - timeout_in_minutes: 50
149 - working_dir: "/vllm-workspace/tests"
150 - source_file_dependencies:
151 - - vllm/
152 - - tests/entrypoints/openai/responses
153 - commands:
154 - - pytest -v -s entrypoints/openai/responses
155 -
157 - label: OpenAI API Correctness
158 key: openai-api-correctness
159 timeout_in_minutes: 30
@@ -170,7 +171,6 @@ steps:
171 source_file_dependencies:
172 - csrc/
173 - vllm/entrypoints/openai/
173 - - vllm/model_executor/models/whisper.py
174 - vllm/model_executor/layers/
175 - vllm/v1/attention/backends/
176 - vllm/v1/attention/selector.py
.buildkite/test_areas/plugins.yaml
+3 -3
@@ -37,6 +37,6 @@ steps:
37 - pytest -v -s plugins_tests/test_scheduler_plugins.py
38 - pip install -e ./plugins/vllm_add_dummy_model
39 - pytest -v -s distributed/test_distributed_oot.py
40 - - pytest -v -s entrypoints/openai/chat_completion/test_oot_registration.py # it needs a clean process
41 - - pytest -v -s models/test_oot_registration.py # it needs a clean process
42 - - pytest -v -s plugins/lora_resolvers # unit tests for in-tree lora resolver plugins
40 + - pytest -v -s plugins_tests/test_oot_registration_online.py # it needs a clean process
41 + - pytest -v -s plugins_tests/test_oot_registration_offline.py # it needs a clean process
42 + - pytest -v -s plugins_tests/lora_resolvers # unit tests for in-tree lora resolver plugins
tests/distributed/test_distributed_oot.py
+1 -1
@@ -1,7 +1,7 @@
1 # SPDX-License-Identifier: Apache-2.0
2 # SPDX-FileCopyrightText: Copyright contributors to the vLLM project
3
4 -from tests.entrypoints.openai.chat_completion.test_oot_registration import (
4 +from tests.plugins_tests.test_oot_registration_online import (
5 run_and_test_dummy_opt_api_server,
6 )
7
tests/entrypoints/tool_parsers/__init__.py renamed
tests/entrypoints/tool_parsers/test_granite4_tool_parser.py renamed
+1 -1
@@ -5,7 +5,7 @@ import json
5 import openai
6 import pytest
7
8 -from ....utils import RemoteOpenAIServer
8 +from tests.utils import RemoteOpenAIServer
9
10 MODEL = "ibm-granite/granite-4.0-h-tiny"
11
tests/entrypoints/tool_parsers/test_hermes_tool_parser.py renamed
+1 -2
@@ -9,12 +9,11 @@ import pytest_asyncio
9 from huggingface_hub import snapshot_download
10 from typing_extensions import TypedDict
11
12 +from tests.utils import RemoteOpenAIServer
13 from vllm.tool_parsers.abstract_tool_parser import ToolParser
14 from vllm.tool_parsers.granite4_tool_parser import Granite4ToolParser
15 from vllm.tool_parsers.hermes_tool_parser import Hermes2ProToolParser
16
16 -from ....utils import RemoteOpenAIServer
17 -
17 LORA_MODEL = "minpeter/LoRA-Llama-3.2-1B-tool-vllm-ci"
18
19 TOOLS = [
tests/entrypoints/tool_parsers/test_openai_tool_parser.py renamed
+1 -1
@@ -9,7 +9,7 @@ import pytest
9 import pytest_asyncio
10 from rapidfuzz import fuzz
11
12 -from ....utils import RemoteOpenAIServer
12 +from tests.utils import RemoteOpenAIServer
13
14 MODEL_NAME = "openai/gpt-oss-20b"
15
tests/entrypoints/unit_tests/__init__.py renamed
tests/entrypoints/unit_tests/test_api_server_process_manager.py renamed
tests/entrypoints/unit_tests/test_chat_utils.py renamed
tests/entrypoints/unit_tests/test_context.py renamed
tests/entrypoints/unit_tests/test_grpc_health.py renamed
tests/entrypoints/unit_tests/test_launch_cli.py renamed
tests/plugins_tests/__init__.py
tests/plugins_tests/lora_resolvers/__init__.py
tests/plugins_tests/lora_resolvers/test_filesystem_resolver.py renamed
tests/plugins_tests/lora_resolvers/test_hf_hub_resolver.py renamed
tests/plugins_tests/test_oot_registration_offline.py renamed
+1 -2
@@ -3,12 +3,11 @@
3
4 import pytest
5
6 +from tests.utils import create_new_process_for_each_test
7 from vllm import LLM, SamplingParams
8 from vllm.assets.image import ImageAsset
9 from vllm.multimodal.image import convert_image_mode
10
10 -from ..utils import create_new_process_for_each_test
11 -
11
12 @create_new_process_for_each_test()
13 def test_plugin(
tests/plugins_tests/test_oot_registration_online.py renamed