From 6bada5357c2f7dfe2862601ed8a1dfa177323e71 Mon Sep 17 00:00:00 2001 From: WenjinXie Date: Fri, 31 Oct 2025 11:48:08 +0800 Subject: [PATCH 1/2] [hotfix] Increase request timeout in ollama test to avoid read timeout exception. --- .../integrations/chat_models/tests/test_ollama_chat_model.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/python/flink_agents/integrations/chat_models/tests/test_ollama_chat_model.py b/python/flink_agents/integrations/chat_models/tests/test_ollama_chat_model.py index b230a3b6..653fb76b 100644 --- a/python/flink_agents/integrations/chat_models/tests/test_ollama_chat_model.py +++ b/python/flink_agents/integrations/chat_models/tests/test_ollama_chat_model.py @@ -60,7 +60,7 @@ client is None, reason="Ollama client is not available or test model is missing" ) def test_ollama_chat() -> None: # noqa :D103 - server = OllamaChatModelConnection(name="ollama") + server = OllamaChatModelConnection(name="ollama", request_timeout=120.0) response = server.chat( [ChatMessage(role=MessageRole.USER, content="Hello!")], model=test_model ) @@ -94,7 +94,7 @@ def get_tool(name: str, type: ResourceType) -> FunctionTool: # noqa :D103 client is None, reason="Ollama client is not available or test model is missing" ) def test_ollama_chat_with_tools() -> None: # noqa :D103 - connection = OllamaChatModelConnection(name="ollama") + connection = OllamaChatModelConnection(name="ollama", request_timeout=120.0) def get_resource(name: str, type: ResourceType) -> Resource: if type == ResourceType.TOOL: From e083898c55fecd3cbb7da5e15a37242813cd57a1 Mon Sep 17 00:00:00 2001 From: WenjinXie Date: Fri, 31 Oct 2025 11:20:28 +0800 Subject: [PATCH 2/2] [hotfix] Adapt ollama example after supporting explicit tool call handling in OllamaChatModel. --- .../agents/integration/test/AgentWithOllama.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/e2e-test/integration-test/src/main/java/org/apache/flink/agents/integration/test/AgentWithOllama.java b/e2e-test/integration-test/src/main/java/org/apache/flink/agents/integration/test/AgentWithOllama.java index 00c41448..d651db46 100644 --- a/e2e-test/integration-test/src/main/java/org/apache/flink/agents/integration/test/AgentWithOllama.java +++ b/e2e-test/integration-test/src/main/java/org/apache/flink/agents/integration/test/AgentWithOllama.java @@ -30,6 +30,8 @@ import org.apache.flink.agents.api.chat.messages.MessageRole; import org.apache.flink.agents.api.chat.model.BaseChatModelSetup; import org.apache.flink.agents.api.context.RunnerContext; +import org.apache.flink.agents.api.event.ChatRequestEvent; +import org.apache.flink.agents.api.event.ChatResponseEvent; import org.apache.flink.agents.api.resource.ResourceDescriptor; import org.apache.flink.agents.api.resource.ResourceType; import org.apache.flink.agents.integrations.chatmodels.ollama.OllamaChatModelConnection; @@ -126,10 +128,15 @@ public static double createRandomNumber() { public static void process(InputEvent event, RunnerContext ctx) throws Exception { BaseChatModelSetup chatModel = (BaseChatModelSetup) ctx.getResource("ollamaChatModel", ResourceType.CHAT_MODEL); - ChatMessage response = - chatModel.chat( + ctx.sendEvent( + new ChatRequestEvent( + "ollamaChatModel", Collections.singletonList( - new ChatMessage(MessageRole.USER, (String) event.getInput()))); - ctx.sendEvent(new OutputEvent(response.getContent())); + new ChatMessage(MessageRole.USER, (String) event.getInput())))); + } + + @Action(listenEvents = {ChatResponseEvent.class}) + public static void processChatResponse(ChatResponseEvent event, RunnerContext ctx) { + ctx.sendEvent(new OutputEvent(event.getResponse().getContent())); } }