feat: get_node_infos减少toolcall次数,未知报错,回滚

This commit is contained in:
ai-business-hql
2025-08-14 06:57:05 +08:00
parent 70cbe3907f
commit d6c5a4f449
+13 -12
View File
@@ -62,6 +62,7 @@ def get_current_workflow() -> str:
return json.dumps({"error": "No workflow data found for this session"})
return json.dumps(workflow_data)
@function_tool
async def get_node_info(node_class: str) -> str:
"""获取节点的详细信息,包括输入输出参数"""
try:
@@ -80,18 +81,18 @@ async def get_node_info(node_class: str) -> str:
except Exception as e:
return json.dumps({"error": f"Failed to get node info: {str(e)}"})
@function_tool
async def get_node_infos(node_class_list: List[str]) -> str:
"""获取多个节点的详细信息,包括输入输出参数"""
try:
node_infos = []
for node_class in node_class_list:
node_info = await get_node_info(node_class)
if node_info:
node_infos.append(node_info)
return json.dumps(node_infos)
except Exception as e:
return json.dumps({"error": f"Failed to get node infos of {','.join(node_class_list)}: {str(e)}"})
# @function_tool
# async def get_node_infos(node_class_list: List[str]) -> str:
# """获取多个节点的详细信息,包括输入输出参数"""
# try:
# node_infos = []
# for node_class in node_class_list:
# node_info = await get_node_info(node_class)
# if node_info:
# node_infos.append(node_info)
# return json.dumps(node_infos)
# except Exception as e:
# return json.dumps({"error": f"Failed to get node infos of {','.join(node_class_list)}: {str(e)}"})
def save_checkpoint_before_modification(session_id: str, action_description: str) -> Optional[int]:
"""在修改工作流前保存checkpoint,返回checkpoint_id"""