From ca8a022cd937ba398bb5544f4428f6ceafe56b84 Mon Sep 17 00:00:00 2001 From: Hieu Lam Date: Tue, 5 Dec 2023 02:43:04 +0700 Subject: [PATCH] Fixed OpenAIFunctionsAgent not returning when receiving AgentFinish (#14236) **Description:** The way the condition is checked in the `return_stopped_response` function of `OpenAIAgent` may not be correct, when the value returned is `AgentFinish` from the tools it does not work properly. Thanks for review, @baskaryan, @eyurtsev, @hwchase17. --- libs/langchain/langchain/agents/openai_functions_agent/base.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/langchain/langchain/agents/openai_functions_agent/base.py b/libs/langchain/langchain/agents/openai_functions_agent/base.py index 9045d836c8f..1af9ff39ac0 100644 --- a/libs/langchain/langchain/agents/openai_functions_agent/base.py +++ b/libs/langchain/langchain/agents/openai_functions_agent/base.py @@ -162,7 +162,7 @@ def return_stopped_response( agent_decision = self.plan( intermediate_steps, with_functions=False, **kwargs ) - if type(agent_decision) == AgentFinish: + if isinstance(agent_decision, AgentFinish): return agent_decision else: raise ValueError(