langchain_core.tools.tool

langchain_core.tools.tool(*args: Union[str, Callable, Runnable], return_direct: bool = False, args_schema: Optional[Type[BaseModel]] = None, infer_schema: bool = True) Callable[source]

将函数制作成工具,可以带参数或不带参数使用。

参数:

*args: 工具的参数。 return_direct: 是否直接从工具返回,而不是继续代理循环。 args_schema: 用户指定的可选参数模式。 infer_schema: 是否从函数的签名推断参数的模式。这还使得生成的工具接受一个字典输入到其`run()`函数。

要求:
  • 函数必须是类型为 (str) -> str

  • 函数必须有文档字符串

示例:
@tool
def search_api(query: str) -> str:
    # 搜索API以获取查询结果。
    return

@tool("search", return_direct=True)
def search_api(query: str) -> str:
    # 搜索API以获取查询结果。
    return
Parameters
  • args (Union[str, Callable, Runnable]) –

  • return_direct (bool) –

  • args_schema (Optional[Type[BaseModel]]) –

  • infer_schema (bool) –

Return type

Callable

Examples using tool