|
14 | 14 | from agentrun.integration.builtin import model as _model |
15 | 15 | from agentrun.integration.builtin import ModelArgs |
16 | 16 | from agentrun.integration.builtin import sandbox_toolset as _sandbox_toolset |
| 17 | +from agentrun.integration.builtin import skill_tools as _skill_tools |
| 18 | +from agentrun.integration.builtin import tool_resource as _tool_resource |
17 | 19 | from agentrun.integration.builtin import toolset as _toolset |
18 | 20 | from agentrun.integration.utils.tool import Tool |
19 | 21 | from agentrun.model import ModelProxy, ModelService |
20 | 22 | from agentrun.sandbox import TemplateType |
| 23 | +from agentrun.tool.tool import Tool as ToolResourceType |
21 | 24 | from agentrun.toolset import ToolSet |
22 | 25 | from agentrun.utils.config import Config |
23 | 26 |
|
@@ -50,6 +53,24 @@ def toolset( |
50 | 53 | ) |
51 | 54 |
|
52 | 55 |
|
| 56 | +def tool_resource( |
| 57 | + name: Union[str, ToolResourceType], |
| 58 | + *, |
| 59 | + prefix: Optional[str] = None, |
| 60 | + modify_tool_name: Optional[Callable[[Tool], Tool]] = None, |
| 61 | + filter_tools_by_name: Optional[Callable[[str], bool]] = None, |
| 62 | + config: Optional[Config] = None, |
| 63 | +) -> List[Any]: |
| 64 | + """将 ToolResource 封装为 AgentScope 工具列表。 / AgentScope Built-in ToolResource Integration""" |
| 65 | + |
| 66 | + ts = _tool_resource(input=name, config=config) |
| 67 | + return ts.to_agentscope( |
| 68 | + prefix=prefix, |
| 69 | + modify_tool_name=modify_tool_name, |
| 70 | + filter_tools_by_name=filter_tools_by_name, |
| 71 | + ) |
| 72 | + |
| 73 | + |
53 | 74 | def sandbox_toolset( |
54 | 75 | template_name: str, |
55 | 76 | *, |
@@ -86,3 +107,18 @@ def knowledgebase_toolset( |
86 | 107 | modify_tool_name=modify_tool_name, |
87 | 108 | filter_tools_by_name=filter_tools_by_name, |
88 | 109 | ) |
| 110 | + |
| 111 | + |
| 112 | +def skill_tools( |
| 113 | + name: Optional[Union[str, List[str]]] = None, |
| 114 | + *, |
| 115 | + skills_dir: str = ".skills", |
| 116 | + prefix: Optional[str] = None, |
| 117 | + config: Optional[Config] = None, |
| 118 | +) -> List[Any]: |
| 119 | + """将 Skill 封装为 AgentScope 工具列表。 / AgentScope Built-in Skill Integration""" |
| 120 | + |
| 121 | + ts = _skill_tools(name=name, skills_dir=skills_dir, config=config) |
| 122 | + return ts.to_agentscope( |
| 123 | + prefix=prefix, |
| 124 | + ) |
0 commit comments