From 29305bda5b8f9395bebd40c5cec6e53951325ef6 Mon Sep 17 00:00:00 2001 From: Chenzhipeng <2010768120@qq.com> Date: Fri, 14 Feb 2025 11:30:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=8F=92=E4=BB=B6=E6=99=BA?= =?UTF-8?q?=E8=83=BD=E6=A8=A1=E5=BC=8F=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zhenxun/configs/utils/__init__.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/zhenxun/configs/utils/__init__.py b/zhenxun/configs/utils/__init__.py index 72b4af6c..38c5c0e6 100644 --- a/zhenxun/configs/utils/__init__.py +++ b/zhenxun/configs/utils/__init__.py @@ -213,6 +213,22 @@ class Task(BaseBlock): check_args: list = Field(default_factory=list) """检查函数参数""" +class AbstractTool(BaseModel): + name: str | None = None + """工具名称""" + parameters: dict[str, Any] | None = None + """工具参数""" + description: str | None = None + """工具描述""" + func: Callable | None = None + """工具函数""" + + def to_dict(self): + return { + 'name': self.name, + 'description': self.description, + 'parameters': self.parameters + } class PluginExtraData(BaseModel): """ @@ -249,6 +265,8 @@ class PluginExtraData(BaseModel): """常用sql""" is_show: bool = True """是否显示在菜单中""" + smart_tools: list[AbstractTool] | None = None + """智能模式函数工具集""" def to_dict(self, **kwargs): return model_dump(self, **kwargs)