Skip to content

Commit 56aea05

Browse files
committed
Add vLLM disable_log_stats config test
1 parent 2135145 commit 56aea05

File tree

2 files changed

+50
-10
lines changed

2 files changed

+50
-10
lines changed

ci/L0_backend_vllm/metrics_test/test.sh

Lines changed: 32 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@ sed -i 's/"gpu_memory_utilization": 0.5/"gpu_memory_utilization": 0.4/' models/v
5858

5959
RET=0
6060

61+
# test vLLM metrics
6162
run_server
6263
if [ "$SERVER_PID" == "0" ]; then
6364
cat $SERVER_LOG
@@ -66,7 +67,37 @@ if [ "$SERVER_PID" == "0" ]; then
6667
fi
6768

6869
set +e
69-
python3 $CLIENT_PY -v > $CLIENT_LOG 2>&1
70+
python3 $CLIENT_PY VLLMTritonMetricsTest.test_vllm_metrics -v > $CLIENT_LOG 2>&1
71+
72+
if [ $? -ne 0 ]; then
73+
cat $CLIENT_LOG
74+
echo -e "\n***\n*** Running $CLIENT_PY FAILED. \n***"
75+
RET=1
76+
else
77+
check_test_results $TEST_RESULT_FILE $EXPECTED_NUM_TESTS
78+
if [ $? -ne 0 ]; then
79+
cat $CLIENT_LOG
80+
echo -e "\n***\n*** Test Result Verification FAILED.\n***"
81+
RET=1
82+
fi
83+
fi
84+
set -e
85+
86+
kill $SERVER_PID
87+
wait $SERVER_PID
88+
89+
# test disabling vLLM metrics with disable_log_stats set to true
90+
sed -i 's/"disable_log_stats": false/"disable_log_stats": true/' models/vllm_opt/1/model.json
91+
92+
run_server
93+
if [ "$SERVER_PID" == "0" ]; then
94+
cat $SERVER_LOG
95+
echo -e "\n***\n*** Failed to start $SERVER\n***"
96+
exit 1
97+
fi
98+
99+
set +e
100+
python3 $CLIENT_PY VLLMTritonMetricsTest.test_vllm_metrics_disabled -v > $CLIENT_LOG 2>&1
70101

71102
if [ $? -ne 0 ]; then
72103
cat $CLIENT_LOG

ci/L0_backend_vllm/metrics_test/vllm_metrics_test.py

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ def setUp(self):
5050
]
5151
self.sampling_parameters = {"temperature": "0", "top_p": "1"}
5252

53-
def get_metrics(self):
53+
def get_vllm_metrics(self):
5454
"""
5555
Store vllm metrics in a dictionary.
5656
"""
@@ -112,21 +112,30 @@ def vllm_infer(
112112
self.triton_client.stop_stream()
113113

114114
def test_vllm_metrics(self):
115-
# All vLLM metrics from tritonserver
116-
expected_metrics_dict = {
117-
"vllm:prompt_tokens_total": 0,
118-
"vllm:generation_tokens_total": 0,
119-
}
115+
# Test vLLM metrics
116+
self.vllm_infer(
117+
prompts=self.prompts,
118+
sampling_parameters=self.sampling_parameters,
119+
model_name=self.vllm_model_name,
120+
)
121+
metrics_dict = self.get_vllm_metrics()
120122

123+
# vllm:prompt_tokens_total
124+
self.assertEqual(metrics_dict["vllm:prompt_tokens_total"], 18)
125+
# vllm:generation_tokens_total
126+
self.assertEqual(metrics_dict["vllm:generation_tokens_total"], 48)
127+
128+
def test_vllm_metrics_disabled(self):
121129
# Test vLLM metrics
122130
self.vllm_infer(
123131
prompts=self.prompts,
124132
sampling_parameters=self.sampling_parameters,
125133
model_name=self.vllm_model_name,
126134
)
127-
expected_metrics_dict["vllm:prompt_tokens_total"] = 18
128-
expected_metrics_dict["vllm:generation_tokens_total"] = 48
129-
self.assertEqual(self.get_metrics(), expected_metrics_dict)
135+
metrics_dict = self.get_vllm_metrics()
136+
137+
# No vLLM metric found
138+
self.assertEqual(len(metrics_dict), 0)
130139

131140
def tearDown(self):
132141
self.triton_client.close()

0 commit comments

Comments
 (0)