|
[color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]面板版本:宝塔Linux面板 11.8.1 [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]系统版本:Ubuntu 24.04 LTS [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]浏览器版本:edge:150.0.4078.99 [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]问题现象: 在AI面板中配置OpenAI兼容接口后,“测试连接”正常,但实际发送任意消息(例如“你好”)都会返回以下错误: [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.54)][backcolor=color(srgb 0.996235 0.996235 0.996235)][color=oklab(0.200192 0.00000908971 0.00000399351 / 0.752)]代码· text
[color=oklab(0.200192 0.00000908971 0.00000399351 / 0.846)][size=0.7]Invalid schema for function 'Glob': In context=(), 'required' is required to be supplied and to be an array including every key in properties. Missing 'path'.
[color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]原因是AI面板生成工具Schema时设置了: [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.54)][backcolor=color(srgb 0.996235 0.996235 0.996235)][color=oklab(0.200192 0.00000908971 0.00000399351 / 0.752)]代码· json
[color=oklab(0.200192 0.00000908971 0.00000399351 / 0.846)][size=0.7]"strict": true
[color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]但Glob的properties包含pattern和path,required只有pattern。严格模式要求properties中的所有字段都包含在required中。 [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]同类问题不只影响Glob,Grep、LS、SiteList、RunCommand、Read、WebFetch等包含可选参数的工具也存在。 [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]临时解决方法: 修改文件: [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.54)][backcolor=color(srgb 0.996235 0.996235 0.996235)][color=oklab(0.200192 0.00000908971 0.00000399351 / 0.752)]代码· text
[color=oklab(0.200192 0.00000908971 0.00000399351 / 0.846)][size=0.7]/www/server/panel/mod/project/agent/chat_client/tools/__init__.py
[color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]将工具Schema生成器中的: [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.54)][backcolor=color(srgb 0.996235 0.996235 0.996235)][color=oklab(0.200192 0.00000908971 0.00000399351 / 0.752)]代码· python
[color=oklab(0.200192 0.00000908971 0.00000399351 / 0.846)][size=0.7]"strict": True,
[color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]改为: [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.54)][backcolor=color(srgb 0.996235 0.996235 0.996235)][color=oklab(0.200192 0.00000908971 0.00000399351 / 0.752)]代码· python
[color=oklab(0.200192 0.00000908971 0.00000399351 / 0.846)][size=0.7]"strict": False,
[color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]然后执行: [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.54)][backcolor=color(srgb 0.996235 0.996235 0.996235)][color=oklab(0.200192 0.00000908971 0.00000399351 / 0.752)]代码· bash
[color=oklab(0.200192 0.00000908971 0.00000399351 / 0.846)][size=0.7]bt restart
[color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]修改后,普通对话、完整工具集请求以及Glob工具调用均恢复正常。 [color=color(srgb 0.0862745 0.0862745 0.0862745 / 0.94)][backcolor=color(srgb 0.996235 0.996235 0.996235)]重现方式: - 在宝塔AI面板中添加OpenAI兼容接口;
- 模型测试连接成功;
- 打开AI对话,发送任意文本,例如“你好”;
- 请求立即返回Glob工具Schema HTTP 400错误;
- 将Schema生成器的strict改为False并重启面板后,问题消失。
|