@@ -50,8 +50,8 @@ async def execute_tool_call(
5050class ToolManager (ToolManagerProtocol ):
5151 def __init__ (self , server_configs , tool_blacklist = None ):
5252 """
53- 初始化 ToolManager。
54- :param server_configs: create_server_parameters() 返回的列表
53+ Initialize ToolManager.
54+ :param server_configs: List returned by create_server_parameters()
5555 """
5656 self .server_configs = server_configs
5757 self .server_dict = {
@@ -61,7 +61,7 @@ def __init__(self, server_configs, tool_blacklist=None):
6161 self .tool_blacklist = tool_blacklist if tool_blacklist else set ()
6262
6363 logger .info (
64- f"ToolManager 初始化,已加载服务器 : { list (self .server_dict .keys ())} "
64+ f"ToolManager initialized, loaded servers : { list (self .server_dict .keys ())} "
6565 )
6666
6767 def _is_huggingface_dataset_or_space_url (self , url ):
@@ -88,14 +88,14 @@ def _should_block_hf_scraping(self, tool_name, arguments):
8888 )
8989
9090 def get_server_params (self , server_name ):
91- """获取指定服务器的参数 """
91+ """Get parameters for specified server """
9292 return self .server_dict .get (server_name )
9393
9494 async def _find_servers_with_tool (self , tool_name ):
9595 """
96- 在所有服务器中查找包含指定工具名称的服务器
97- :param tool_name: 要查找的工具名称
98- :return: 包含该工具的服务器名称列表
96+ Find servers containing the specified tool name among all servers
97+ :param tool_name: Tool name to search for
98+ :return: List of server names containing the tool
9999 """
100100 servers_with_tool = []
101101
@@ -111,7 +111,7 @@ async def _find_servers_with_tool(self, tool_name):
111111 ) as session :
112112 await session .initialize ()
113113 tools_response = await session .list_tools ()
114- # 遵循与 get_all_tool_definitions 相同的 blacklist 逻辑
114+ # Follow the same blacklist logic as get_all_tool_definitions
115115 for tool in tools_response .tools :
116116 if (server_name , tool .name ) in self .tool_blacklist :
117117 continue
@@ -129,8 +129,8 @@ async def _find_servers_with_tool(self, tool_name):
129129 await session .initialize ()
130130 tools_response = await session .list_tools ()
131131 for tool in tools_response .tools :
132- # 与 get_all_tool_definitions 保持一致: SSE 部分没有 blacklist 处理
133- # 可以在这里添加特定工具的过滤逻辑(如果需要)
132+ # Consistent with get_all_tool_definitions: SSE part has no blacklist processing
133+ # Can add specific tool filtering logic here (if needed)
134134 # if server_name == "tool-excel" and tool.name not in ["get_workbook_metadata", "read_data_from_excel"]:
135135 # continue
136136 if tool .name == tool_name :
@@ -140,28 +140,28 @@ async def _find_servers_with_tool(self, tool_name):
140140 logger .error (
141141 f"错误: 服务器 '{ server_name } ' 的参数类型未知: { type (server_params )} "
142142 )
143- # 对于未知类型,我们跳过而不是抛出异常,因为这是查找功能
143+ # For unknown types, we skip rather than throw an exception, because this is a search function
144144 continue
145145 except Exception as e :
146146 logger .error (
147- f"错误: 无法连接或获取服务器 '{ server_name } ' 的工具以查找 '{ tool_name } ': { e } "
147+ f"Error: Cannot connect or get tools from server '{ server_name } ' to find '{ tool_name } ': { e } "
148148 )
149149 continue
150150
151151 return servers_with_tool
152152
153153 async def get_all_tool_definitions (self ):
154154 """
155- 连接到所有已配置的服务器,获取它们的工具定义。
156- 返回一个适合传递给 Prompt 生成器的列表。
155+ Connect to all configured servers and get their tool definitions.
156+ Returns a list suitable for passing to Prompt generators.
157157 """
158158 all_servers_for_prompt = []
159- # 处理远程服务器工具
159+ # Handle remote server tools
160160 for config in self .server_configs :
161161 server_name = config ["name" ]
162162 server_params = config ["params" ]
163163 one_server_for_prompt = {"name" : server_name , "tools" : []}
164- logger .info (f"正在获取服务器 '{ server_name } ' 的工具定义 ..." )
164+ logger .info (f"Getting tool definitions for server '{ server_name } '..." )
165165
166166 try :
167167 if isinstance (server_params , StdioServerParameters ):
@@ -175,7 +175,7 @@ async def get_all_tool_definitions(self):
175175 for tool in tools_response .tools :
176176 if (server_name , tool .name ) in self .tool_blacklist :
177177 logger .info (
178- f"server '{ server_name } ' 中的工具 ' { tool . name } ' 被列入黑名单,跳过。 "
178+ f"Tool '{ tool . name } ' in server ' { server_name } ' is blacklisted, skipping. "
179179 )
180180 continue
181181 one_server_for_prompt ["tools" ].append (
@@ -196,7 +196,7 @@ async def get_all_tool_definitions(self):
196196 await session .initialize ()
197197 tools_response = await session .list_tools ()
198198 for tool in tools_response .tools :
199- # 可以在这里添加特定工具的过滤逻辑(如果需要)
199+ # Can add specific tool filtering logic here (if needed)
200200 # if server_name == "tool-excel" and tool.name not in ["get_workbook_metadata", "read_data_from_excel"]:
201201 # continue
202202 one_server_for_prompt ["tools" ].append (
@@ -215,13 +215,13 @@ async def get_all_tool_definitions(self):
215215 )
216216
217217 logger .info (
218- f"成功获取服务器 ' { server_name } ' 的 { len (one_server_for_prompt ['tools' ])} 个工具定义。 "
218+ f"Successfully obtained { len (one_server_for_prompt ['tools' ])} tool definitions for server ' { server_name } '. "
219219 )
220220 all_servers_for_prompt .append (one_server_for_prompt )
221221
222222 except Exception as e :
223- logger .error (f"错误: 无法连接或获取服务器 '{ server_name } ' 的工具 : { e } " )
224- # 仍然添加服务器条目,但标记工具列表为空或包含错误信息
223+ logger .error (f"Error: Cannot connect or get tools from server '{ server_name } ': { e } " )
224+ # Still add server entry, but mark tool list as empty or containing error information
225225 one_server_for_prompt ["tools" ] = [
226226 {"error" : f"Failed to fetch tools: { e } " }
227227 ]
@@ -232,11 +232,11 @@ async def get_all_tool_definitions(self):
232232 @with_timeout (600 )
233233 async def execute_tool_call (self , server_name , tool_name , arguments ) -> Any :
234234 """
235- 执行单个工具调用。
236- :param server_name: 服务器名称
237- :param tool_name: 工具名称
238- :param arguments: 工具参数字典
239- :return: 包含结果或错误的字典
235+ Execute a single tool call.
236+ :param server_name: Server name
237+ :param tool_name: Tool name
238+ :param arguments: Tool arguments dictionary
239+ :return: Dictionary containing result or error
240240 """
241241
242242 # 原远程服务器调用逻辑
0 commit comments