18586361686
2025-05-14 f1ebe1b526707f28933c0a56496b8a5419883cc0
chore: 优化 bot 调用插件方法
1个文件已修改
11 ■■■■■ 已修改文件
aiflowy-modules/aiflowy-module-ai/src/main/java/tech/aiflowy/ai/controller/AiBotController.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aiflowy-modules/aiflowy-module-ai/src/main/java/tech/aiflowy/ai/controller/AiBotController.java
@@ -522,21 +522,18 @@
//        }
//    }
    private void appendPluginToolFunction(BigInteger botId, HumanMessage humanMessage) {
        QueryWrapper queryWrapper = QueryWrapper.create().eq(AiBotPlugins::getBotId, botId);
        List<AiBotPlugins> aiBotPlugins = aiBotPluginsService.getMapper().selectListWithRelationsByQuery(queryWrapper);
        // 根据插件iD查询该插件下面有哪些插件工具,转换成Function
        for (AiBotPlugins aiBotPlugin: aiBotPlugins){
            BigInteger pluginId = aiBotPlugin.getPluginToolId();
        QueryWrapper queryWrapper = QueryWrapper.create().select("plugin_tool_id").eq(AiBotPlugins::getBotId, botId);
        List<BigInteger> pluginToolIds = aiBotPluginsService.getMapper().selectListWithRelationsByQueryAs(queryWrapper, BigInteger.class);
            QueryWrapper queryTool = QueryWrapper.create()
                    .select("*")
                    .from("tb_ai_plugin_tool")
                    .where("plugin_id = ?", pluginId);
                    .in("id", pluginToolIds);
            List<AiPluginTool> aiPluginTools = aiPluginToolService.getMapper().selectListWithRelationsByQuery(queryTool);
            for (AiPluginTool item: aiPluginTools){
                humanMessage.addFunction(item.toFunction());
            }
        }
    }
}