fix(core): _should_stream respects streaming param

This commit is contained in:
Mason Daugherty
2025-08-26 22:16:07 -04:00
parent c6c7fce6c9
commit 6432647743
3 changed files with 11 additions and 7 deletions

View File

@@ -451,6 +451,10 @@ class BaseChatModel(BaseLanguageModel[BaseMessage], ABC):
if self.disable_streaming == "tool_calling" and kwargs.get("tools"):
return False
# Check if streaming has been disabled via the streaming parameter.
if hasattr(self, "streaming") and not self.streaming:
return False
# Check if a runtime streaming flag has been passed in.
if "stream" in kwargs:
return kwargs["stream"]

View File

@@ -350,7 +350,7 @@ def mock_glm4_completion() -> list:
async def test_glm4_astream(mock_glm4_completion: list) -> None:
llm_name = "glm-4"
llm = ChatOpenAI(model=llm_name, stream_usage=True)
llm = ChatOpenAI(model=llm_name, stream_usage=True, streaming=True)
mock_client = AsyncMock()
async def mock_create(*args: Any, **kwargs: Any) -> MockAsyncContextManager:
@@ -375,7 +375,7 @@ async def test_glm4_astream(mock_glm4_completion: list) -> None:
def test_glm4_stream(mock_glm4_completion: list) -> None:
llm_name = "glm-4"
llm = ChatOpenAI(model=llm_name, stream_usage=True)
llm = ChatOpenAI(model=llm_name, stream_usage=True, streaming=True)
mock_client = MagicMock()
def mock_create(*args: Any, **kwargs: Any) -> MockSyncContextManager:
@@ -431,7 +431,7 @@ def mock_deepseek_completion() -> list[dict]:
async def test_deepseek_astream(mock_deepseek_completion: list) -> None:
llm_name = "deepseek-chat"
llm = ChatOpenAI(model=llm_name, stream_usage=True)
llm = ChatOpenAI(model=llm_name, stream_usage=True, streaming=True)
mock_client = AsyncMock()
async def mock_create(*args: Any, **kwargs: Any) -> MockAsyncContextManager:
@@ -455,7 +455,7 @@ async def test_deepseek_astream(mock_deepseek_completion: list) -> None:
def test_deepseek_stream(mock_deepseek_completion: list) -> None:
llm_name = "deepseek-chat"
llm = ChatOpenAI(model=llm_name, stream_usage=True)
llm = ChatOpenAI(model=llm_name, stream_usage=True, streaming=True)
mock_client = MagicMock()
def mock_create(*args: Any, **kwargs: Any) -> MockSyncContextManager:
@@ -499,7 +499,7 @@ def mock_openai_completion() -> list[dict]:
async def test_openai_astream(mock_openai_completion: list) -> None:
llm_name = "gpt-4o"
llm = ChatOpenAI(model=llm_name, stream_usage=True)
llm = ChatOpenAI(model=llm_name, stream_usage=True, streaming=True)
mock_client = AsyncMock()
async def mock_create(*args: Any, **kwargs: Any) -> MockAsyncContextManager:
@@ -523,7 +523,7 @@ async def test_openai_astream(mock_openai_completion: list) -> None:
def test_openai_stream(mock_openai_completion: list) -> None:
llm_name = "gpt-4o"
llm = ChatOpenAI(model=llm_name, stream_usage=True)
llm = ChatOpenAI(model=llm_name, stream_usage=True, streaming=True)
mock_client = MagicMock()
def mock_create(*args: Any, **kwargs: Any) -> MockSyncContextManager:

View File

@@ -621,7 +621,7 @@ def _strip_none(obj: Any) -> Any:
def test_responses_stream() -> None:
llm = ChatOpenAI(model="o4-mini", output_version="responses/v1")
llm = ChatOpenAI(model="o4-mini", output_version="responses/v1", streaming=True)
mock_client = MagicMock()
def mock_create(*args: Any, **kwargs: Any) -> MockSyncContextManager: