diff --git a/requirements/common.txt b/requirements/common.txt index e7bc5682a6966..1a8fea0dd7d93 100644 --- a/requirements/common.txt +++ b/requirements/common.txt @@ -12,7 +12,7 @@ tokenizers >= 0.21.1 # Required for fast incremental detokenization. protobuf # Required by LlamaTokenizer. fastapi[standard] >= 0.115.0 # Required by FastAPI's form models in the OpenAI API server's audio transcriptions endpoint. aiohttp -openai >= 1.99.1, < 1.100.0 # For Responses API with reasoning content +openai >= 1.99.1 # For Responses API with reasoning content pydantic >= 2.10 prometheus_client >= 0.18.0 pillow # Required for image processing diff --git a/requirements/docs.txt b/requirements/docs.txt index 87a44fc99da14..a24b9c7e924bf 100644 --- a/requirements/docs.txt +++ b/requirements/docs.txt @@ -18,7 +18,7 @@ cbor2 cloudpickle fastapi msgspec -openai < 1.100.0 +openai openai-harmony partial-json-parser pillow diff --git a/vllm/entrypoints/openai/protocol.py b/vllm/entrypoints/openai/protocol.py index 543701ed144ee..61f1a09d3ac1c 100644 --- a/vllm/entrypoints/openai/protocol.py +++ b/vllm/entrypoints/openai/protocol.py @@ -20,7 +20,15 @@ from openai.types.chat.chat_completion_message import ( from openai.types.responses import (ResponseFunctionToolCall, ResponseInputItemParam, ResponseOutputItem, ResponsePrompt, ResponseReasoningItem, - ResponseStatus, ResponseTextConfig) + ResponseStatus) + +# Backward compatibility for OpenAI client versions +try: # For older openai versions (< 1.100.0) + from openai.types.responses import ResponseTextConfig +except ImportError: # For newer openai versions (>= 1.100.0) + from openai.types.responses import (ResponseFormatTextConfig as + ResponseTextConfig) + from openai.types.responses.response import ToolChoice from openai.types.responses.tool import Tool from openai.types.shared import Metadata, Reasoning