[TEST]Add sending request with and without chat (#5286)
### What this PR does / why we need it?
This PR adds the method for sending chat and non-chat request, we need
it to test much folloing cases.
### Does this PR introduce _any_ user-facing change?
No
### How was this patch tested?
by running the test
- vLLM version: release/v0.13.0
- vLLM main:
ad32e3e19c
---------
Signed-off-by: jiangyunfan1 <jiangyunfan1@h-partners.com>
This commit is contained in:
@@ -20,7 +20,7 @@ from vllm.utils.network_utils import get_open_port
|
|||||||
|
|
||||||
from tests.e2e.conftest import RemoteOpenAIServer
|
from tests.e2e.conftest import RemoteOpenAIServer
|
||||||
from tools.aisbench import run_aisbench_cases
|
from tools.aisbench import run_aisbench_cases
|
||||||
from tools.send_request import send_text_request
|
from tools.send_request import send_v1_chat_completions
|
||||||
|
|
||||||
MODELS = [
|
MODELS = [
|
||||||
"vllm-ascend/Qwen3-32B-W8A8",
|
"vllm-ascend/Qwen3-32B-W8A8",
|
||||||
@@ -90,7 +90,7 @@ async def test_models(model: str, tp_size: int) -> None:
|
|||||||
server_port=port,
|
server_port=port,
|
||||||
env_dict=env_dict,
|
env_dict=env_dict,
|
||||||
auto_port=False) as server:
|
auto_port=False) as server:
|
||||||
send_text_request(prompts[0],
|
send_v1_chat_completions(prompts[0],
|
||||||
model,
|
model,
|
||||||
server,
|
server,
|
||||||
request_args=api_keyword_args)
|
request_args=api_keyword_args)
|
||||||
|
|||||||
@@ -2,22 +2,36 @@ from typing import Any
|
|||||||
|
|
||||||
import requests
|
import requests
|
||||||
|
|
||||||
data: dict[str, Any] = {
|
|
||||||
"messages": [{
|
|
||||||
"role": "user",
|
|
||||||
"content": "",
|
|
||||||
}],
|
|
||||||
}
|
|
||||||
|
|
||||||
|
def send_v1_completions(prompt, model, server, request_args=None):
|
||||||
def send_text_request(prompt, model, server, request_args=None):
|
data: dict[str, Any] = {"model": model, "prompt": prompt}
|
||||||
data["messages"][0]["content"] = prompt
|
|
||||||
data["model"] = model
|
|
||||||
url = server.url_for("v1", "chat", "completions")
|
|
||||||
if request_args:
|
if request_args:
|
||||||
data.update(request_args)
|
data.update(request_args)
|
||||||
|
url = server.url_for("v1", "completions")
|
||||||
response = requests.post(url, json=data)
|
response = requests.post(url, json=data)
|
||||||
print("Status Code:", response.status_code)
|
print(f"Status Code: {response.status_code}")
|
||||||
response_json = response.json()
|
response_json = response.json()
|
||||||
print("Response:", response_json)
|
print(f"Response json: {response_json}")
|
||||||
assert response_json["choices"][0]["message"]["content"], "empty response"
|
response_text = response_json["choices"][0]["text"]
|
||||||
|
print(f"Response: {response_text}")
|
||||||
|
assert response_text, "empty response"
|
||||||
|
|
||||||
|
|
||||||
|
def send_v1_chat_completions(prompt, model, server, request_args=None):
|
||||||
|
data: dict[str, Any] = {
|
||||||
|
"model": model,
|
||||||
|
"messages": [{
|
||||||
|
"role": "user",
|
||||||
|
"content": prompt,
|
||||||
|
}],
|
||||||
|
}
|
||||||
|
if request_args:
|
||||||
|
data.update(request_args)
|
||||||
|
url = server.url_for("v1", "chat", "completions")
|
||||||
|
response = requests.post(url, json=data)
|
||||||
|
print(f"Status Code: {response.status_code}")
|
||||||
|
response_json = response.json()
|
||||||
|
print(f"Response json: {response_json}")
|
||||||
|
response_text = response_json["choices"][0]["message"]["content"]
|
||||||
|
print(f"Response: {response_text}")
|
||||||
|
assert response_text, "empty response"
|
||||||
|
|||||||
Reference in New Issue
Block a user