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