被卖的Hutool出AI模块了!它如何让Java调用大模型变得如此简单?

关注我的公众号:【编程朝花夕拾】,可获取首发内容。

01 引言

Hutool这款工具开源依赖备受瞩目,争议也不断。尤其2025年2月由开源组织Dromara迁出,被贵州不够科技有限公司(chinabugotech)收购更是引起了不少的关注。

Hutool以其极简的API风格,收到广大开发者的喜爱。喜欢的喜欢的不行,嫌弃的也不在少数。嫌弃的觉得不安全、Bug多等。总之仁者见仁智者见智,众说纷纭。

我们暂且不去评论。今天来介绍一下被收购后新增的一个全新模块Hutool-ai,融合了主流的大模型,不再依赖框架,调用大模型就像调用一般方法一样简单,降低使用门槛。

02 简介

Hutool-ai是在5.8.38版本里面新增的模块,是 Hutool 工具库中用于对接各大 AI 模型的工具模块,提供了统一的 API 接口来访问不同的 AI 服务。目前支持 DeepSeekOpenAIGrokOllama 和豆包等主流 AI 大模型。

截止小编更新(2025.10.30),Hutool的版本已经到5.8.41了。

官方文档:hutool.cn/

GitHub地址:github.com/chinabugote...

Gitee地址:gitee.com/chinabugote...

03 小试牛刀

Hutool的每个模块都是可以单独引入的,为了方便,小编直接引入所有的模块。

3.1 Maven依赖

xml 复制代码
<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.41</version>
</dependency>

也可以单独引入AI的模块。

xml 复制代码
<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-ai</artifactId>
    <version>${latest.version}</version>
</dependency>

3.2 调用测试

Deepseek调用

java 复制代码
 @Test
void test01() {
    String chat = AIUtil.chat(new AIConfigBuilder(
            ModelName.DEEPSEEK.getValue())
            .setApiUrl("https://api.deepseek.com/v1")
            .setApiKey("******")
            .setModel("deepseek-chat")
            .build(), "夸一下帅气的我");
    System.out.println(chat);
}

需要指定apiKey和模型。

Ollama调用

java 复制代码
String apiUrl = "http://127.0.0.1:11434";
String model = "qwen2.5:3b";

@Test
void test03() {
    String chat = AIUtil.chat(new OllamaConfig(apiUrl, model), "夸一下帅气的我");
    System.out.println(chat);
}

也可以通过调用具体的服务:

java 复制代码
@Test
void test02() throws IOException {
    OllamaService ollamaService = AIUtil.getAIService(
            new OllamaConfig(apiUrl, model), 
            OllamaService.class);
    System.out.println(ollamaService);

    ollamaService.generate("夸一下帅气的我", (result) -> {
        System.out.println(result);
    });
    
    // 阻塞程序结束,等待Tokens返回
    System.in.read();
}

3.3 AIUtil源码解读

AIUtil真正调用的方法只有chat()大模型对话功能。也就是最终返回所有的tokens

其他的方法分别获取具体的大模型服务如:Deepseek、豆包、GrokOpenAI等。

其中AIConfig为具体的配置,可以通过具体的实现,也可以通过AIConfigBuilder构建自己的模型配置。

以下是具体的实现:

04 小结

Hutool-AI无疑降低了大模型调用的门槛,给使用者带来了很大的方便。我们不管Hutool以后的走向,无论是走向商业还是继续保持开源,我们都可以从工具的设计理念中得到一些启发。

相关推荐
冰河团队4 分钟前
一个拉胯的分库分表方案有多绝望?整个部门都在救火!
java·高并发·分布式数据库·分库分表·高性能
洛_尘8 分钟前
Java EE进阶:Linux的基本使用
java·java-ee
宸津-代码粉碎机10 分钟前
Spring Boot 4.0虚拟线程实战调优技巧,最大化发挥并发优势
java·人工智能·spring boot·后端·python
MaCa .BaKa12 分钟前
47-心里健康咨询平台/心理咨询系统
java·spring boot·mysql·tomcat·maven·intellij-idea·个人开发
木子欢儿31 分钟前
Docker Hub 镜像发布指南
java·spring cloud·docker·容器·eureka
Devin~Y41 分钟前
高并发电商与AI智能客服场景下的Java面试实战:从Spring Boot到RAG与向量数据库落地
java·spring boot·redis·elasticsearch·spring cloud·kafka·rag
蜡台1 小时前
IDEA 一些 使用配置和插件
java·ide·intellij-idea
小码哥_常1 小时前
一个Starter搞定六种防护,Spring Boot API的超强护盾来了
后端
磊 子1 小时前
redis详解2
java·spring boot·redis
白露与泡影1 小时前
Java面试题库及答案解析(2026版)
java·开发语言·面试