diff --git a/hutool-ai/src/main/java/cn/hutool/v7/ai/AIServiceFactory.java b/hutool-ai/src/main/java/cn/hutool/v7/ai/AIServiceFactory.java index 0221feccb..c17a2d857 100644 --- a/hutool-ai/src/main/java/cn/hutool/v7/ai/AIServiceFactory.java +++ b/hutool-ai/src/main/java/cn/hutool/v7/ai/AIServiceFactory.java @@ -19,9 +19,10 @@ package cn.hutool.v7.ai; import cn.hutool.v7.ai.core.AIConfig; import cn.hutool.v7.ai.core.AIService; import cn.hutool.v7.ai.core.AIServiceProvider; +import cn.hutool.v7.core.spi.ServiceLoader; +import cn.hutool.v7.core.spi.SpiUtil; import java.util.Map; -import java.util.ServiceLoader; import java.util.concurrent.ConcurrentHashMap; /** @@ -36,7 +37,7 @@ public class AIServiceFactory { // 加载所有 AIModelProvider 实现类 static { - final ServiceLoader loader = ServiceLoader.load(AIServiceProvider.class); + final ServiceLoader loader = SpiUtil.loadList(AIServiceProvider.class); for (final AIServiceProvider provider : loader) { providers.put(provider.getServiceName().toLowerCase(), provider); } diff --git a/hutool-ai/src/main/java/cn/hutool/v7/ai/core/AIConfigRegistry.java b/hutool-ai/src/main/java/cn/hutool/v7/ai/core/AIConfigRegistry.java index afb2b4f49..da93fdb26 100644 --- a/hutool-ai/src/main/java/cn/hutool/v7/ai/core/AIConfigRegistry.java +++ b/hutool-ai/src/main/java/cn/hutool/v7/ai/core/AIConfigRegistry.java @@ -16,8 +16,10 @@ package cn.hutool.v7.ai.core; +import cn.hutool.v7.core.spi.ServiceLoader; +import cn.hutool.v7.core.spi.SpiUtil; + import java.util.Map; -import java.util.ServiceLoader; import java.util.concurrent.ConcurrentHashMap; /** @@ -32,7 +34,7 @@ public class AIConfigRegistry { // 加载所有 AIConfig 实现类 static { - final ServiceLoader loader = ServiceLoader.load(AIConfig.class); + final ServiceLoader loader = SpiUtil.loadList(AIConfig.class); for (final AIConfig config : loader) { configClasses.put(config.getModelName().toLowerCase(), config.getClass()); }