From 9a54b9d13ff148340dd51a2db2f7154d5e9b6062 Mon Sep 17 00:00:00 2001 From: jonasHanhan Date: Wed, 14 Jan 2026 14:43:16 +0800 Subject: [PATCH] Fix None handling in knowledge tool filter --- src/agents/common/tools.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/agents/common/tools.py b/src/agents/common/tools.py index 6ab53b07..ea7bd724 100644 --- a/src/agents/common/tools.py +++ b/src/agents/common/tools.py @@ -145,7 +145,10 @@ def get_kb_based_tools(db_names: list[str] | None = None) -> list: # 获取所有知识库 kb_tools = [] retrievers = knowledge_base.get_retrievers() - db_ids = [kb_id for kb_id, kb in retrievers.items() if kb["name"] in db_names] or None + if db_names is None: + db_ids = None + else: + db_ids = [kb_id for kb_id, kb in retrievers.items() if kb["name"] in db_names] def _create_retriever_wrapper(db_id: str, retriever_info: dict[str, Any]): """创建检索器包装函数的工厂函数,避免闭包变量捕获问题"""