This commit is contained in:
SengokuCola
2025-04-13 21:18:05 +08:00
2 changed files with 15 additions and 24 deletions

View File

@@ -4,23 +4,19 @@ from typing import Dict, Any
logger = get_module_logger("compare_numbers_tool") logger = get_module_logger("compare_numbers_tool")
class CompareNumbersTool(BaseTool): class CompareNumbersTool(BaseTool):
"""比较两个数大小的工具""" """比较两个数大小的工具"""
name = "compare_numbers" name = "compare_numbers"
description = "比较两个数的大小,返回较大的数" description = "比较两个数的大小,返回较大的数"
parameters = { parameters = {
"type": "object", "type": "object",
"properties": { "properties": {
"num1": { "num1": {"type": "number", "description": "第一个数字"},
"type": "number", "num2": {"type": "number", "description": "第二个数字"},
"description": "第一个数字"
}, },
"num2": { "required": ["num1", "num2"],
"type": "number",
"description": "第二个数字"
}
},
"required": ["num1", "num2"]
} }
async def execute(self, function_args: Dict[str, Any], message_txt: str = "") -> Dict[str, Any]: async def execute(self, function_args: Dict[str, Any], message_txt: str = "") -> Dict[str, Any]:
@@ -44,16 +40,11 @@ class CompareNumbersTool(BaseTool):
else: else:
result = f"{num1} 等于 {num2}" result = f"{num1} 等于 {num2}"
return { return {"name": self.name, "content": result}
"name": self.name,
"content": result
}
except Exception as e: except Exception as e:
logger.error(f"比较数字失败: {str(e)}") logger.error(f"比较数字失败: {str(e)}")
return { return {"name": self.name, "content": f"比较数字失败: {str(e)}"}
"name": self.name,
"content": f"比较数字失败: {str(e)}"
}
# 注册工具 # 注册工具
register_tool(CompareNumbersTool) register_tool(CompareNumbersTool)