{ "test_id": "tests/integration/inference/test_tools_with_schemas.py::TestChatCompletionWithTools::test_simple_tool_call[txt=vllm/Qwen/Qwen3-0.6B]", "request": { "method": "POST", "url": "http://localhost:8000/v1/v1/chat/completions", "headers": {}, "body": { "model": "Qwen/Qwen3-0.6B", "messages": [ { "role": "user", "content": "What's the weather in San Francisco?" } ], "max_tokens": 4096, "tools": [ { "type": "function", "function": { "name": "get_weather", "description": "Get weather for a location", "parameters": { "type": "object", "properties": { "location": { "type": "string", "description": "City name" } }, "required": [ "location" ] } } } ] }, "endpoint": "/v1/chat/completions", "model": "Qwen/Qwen3-0.6B" }, "response": { "body": { "__type__": "openai.types.chat.chat_completion.ChatCompletion", "__data__": { "id": "rec-e89112e7735f", "choices": [ { "finish_reason": "tool_calls", "index": 0, "logprobs": null, "message": { "content": "\nOkay, the user is asking for the weather in San Francisco. I need to check if there's a function available for that. Looking at the tools provided, there's a function called get_weather that requires a location parameter. The description says it gets weather for a location, and the parameter is the city name. The user provided \"San Francisco\" as the location, so I should call the get_weather function with \"San Francisco\" as the argument. I don't see any other parameters needed here, so the tool call should be straightforward. Just make sure the city name is correctly formatted in JSON.\n\n\n", "refusal": null, "role": "assistant", "annotations": null, "audio": null, "function_call": null, "tool_calls": [ { "id": "chatcmpl-tool-feead29842dc40b2831c41ed397f555f", "function": { "arguments": "{\"location\": \"San Francisco\"}", "name": "get_weather" }, "type": "function" } ], "reasoning_content": null }, "stop_reason": null } ], "created": 0, "model": "Qwen/Qwen3-0.6B", "object": "chat.completion", "service_tier": null, "system_fingerprint": null, "usage": { "completion_tokens": 146, "prompt_tokens": 161, "total_tokens": 307, "completion_tokens_details": null, "prompt_tokens_details": null }, "prompt_logprobs": null, "kv_transfer_params": null } }, "is_streaming": false }, "id_normalization_mapping": {} }