每个模型工具使用一个独立 Python 文件,或一个包含 tool.py 的文件夹。
文件必须定义静态 TOOL 字典,以及 run(arguments, context) 函数:
TOOL = {
'id': 'example',
'name': '示例模型工具',
'description': '说明模型何时调用。',
'parameters': {'type': 'object', 'properties': {}},
}
async def run(arguments, context):
return {'ok': True}文件夹根目录必须包含 tool.py,其格式与单文件相同。其余 Python 模块、静态数据和资源放在同一文件夹内;模型工具可使用相对导入。
context 可能包含消息事件对象。网络请求应使用中央注入的 http_json,它会执行公网 HTTPS 与 SSRF 校验。
web_search.py:互联网搜索。music.py:搜索并发送歌曲语音。calculator.py:安全计算数学表达式。current_time.py:查询指定时区的当前日期和时间。unit_converter.py:换算常见物理量和数据容量单位。random_picker.py:抽签和随机选择。text_stats.py:统计中英文文本。json_tool.py:校验、格式化和压缩 JSON。weather.py:查询城市当前天气和未来天气预报。fetch_url.py:提取公开网页的标题和摘要信息。date_calculator.py:日期加减与日期差计算。encoder.py:Base64、URL 和 HTML 实体编解码。hash_tool.py:计算文本哈希或 HMAC 摘要。number_converter.py:在 2 到 36 进制之间转换整数。schedule_reminder.py:根据当前消息触发者创建、查看或取消一次性定时提醒;任务目标由程序固定在当前会话。