创建自定义工具
在crewAI中创建和使用工具¶
本指南提供了在crewAI框架中创建自定义工具的详细说明,以及如何高效管理和使用这些工具,包括最新的功能如工具委派、错误处理和动态工具调用。同时强调了协作工具的重要性,使代理能够执行广泛的操作。
前置条件¶
在创建自己的工具之前,请确保已安装crewAI额外工具包:
继承 BaseTool¶
要创建个性化工具,请从 BaseTool 继承并定义必要的属性和 _run 方法。
from crewai_tools import BaseTool
class MyCustomTool(BaseTool):
name: str = "我的工具名称"
description: str = "这个工具的作用。这对有效利用至关重要。"
def _run(self, argument: str) -> str:
# 你的工具逻辑在这里
return "工具的结果"
使用 tool 装饰器¶
或者,你可以使用工具装饰器 @tool。这种方法允许你直接在函数内定义工具的属性和功能,提供了一种简洁高效的方式来创建符合你需求的专用工具。
from crewai_tools import tool
@tool("工具名称")
def my_simple_tool(question: str) -> str:
"""工具描述,以便清晰了解。"""
# 工具逻辑在这里
return "工具输出"
为工具定义缓存函数¶
为了通过缓存优化工具性能,使用 cache_function 属性定义自定义缓存策略。