国产大模型也能无缝接入!Spring AI + 智谱 AI 实战指南



大家好呀,我是小米,31岁,依然活蹦乱跳,最近又在研究新东西啦!

还记得我前段时间玩过 Spring AI 集成 OpenAI 的小案例嘛?那次我在公司茶水间里给同事们演示,一下子把他们都惊艳到了。结果昨天 Leader 又抛来一个需求:"小米,能不能用我们国产的 智谱 AI 模型(GLM 系列) 来对接 Spring AI,顺便整理一份最佳实践?"

这还用说?当场拍着胸脯答应了。于是,今天的故事就发生了:我熬了两杯咖啡,撸起袖子,从 Spring AI 的源码到 ZhiPuAI 的 API 文档,研究了一整天,最后成功把它们优雅地结合在了一起。

这篇文章就给大家完整分享一下,如何基于 Spring AI 集成智谱 AI 聊天模型,包括前提条件、配置方式、自动/手动模式、运行时选项,甚至还有低级 API 客户端。干货满满,不止能跑起来,还能玩出花儿!

智谱 AI 聊天模型

先来认识一下咱们的主角:智谱 AI(Zhipu AI)

它是国内头部大模型厂商之一,推出了 GLM 系列模型(ChatGLM、GLM-4、GLM-4-Plus 等)。这些模型不仅能写代码、写文章,还能做知识问答、推理,甚至多模态。

对我们开发者来说,最重要的是:它提供了标准的 API 接口,和 OpenAI 接口风格高度相似,所以 Spring AI 可以非常丝滑地接入。

所以今天,我们就基于 Spring AI 的 ZhiPuAiChatModel 来搞定聊天任务。

前提条件

要跑起来,必须先准备好这几样东西:

  • 一个 智谱 AI 的账号 (在open.bigmodel.cn/注册就行)。
  • 获取 API Key(管理中心一键生成)。
  • 本地要有 JDK 17+ ,Spring Boot 3.x。
  • 已经引入 Spring AI 依赖(咱们下面会配)。

是不是很像做饭之前要备好葱姜蒜?没有 API Key,炒菜没油,啥都白搭~

添加仓库和 BOM

在 pom.xml 中先加上 Spring AI 的 BOM 依赖管理:

然后添加具体的智谱 AI 依赖:

到这里,我们的锅已经放上灶台,火也点起来了,就差下菜了!

自动配置

Spring AI 为智谱 AI 提供了自动配置。只要我们在 application.yml 中写上 Key 和模型名,就能直接用。

是不是很优雅?一句配置,模型就能"自动上线"。

聊天属性

聊到这儿,很多小伙伴一定好奇:"自动配置固然好,但能不能玩点花的?比如配置重试次数、连接池参数啥的?"

当然可以!Spring AI 贴心地给我们准备了一堆属性。

1、重试属性

2.、连接属性

3、配置属性表格

是不是很像点外卖时的"自定义加料"?辣度、咸度、配料,全凭你喜欢!

运行时选项

除了全局配置,我们还可以在运行时动态传参数。

这种方式就像"临时加菜",特别适合测试不同效果。

示例控制器

来个最简单的 Demo 控制器:

启动项目后,访问:

Boom!智谱 AI 会秒回一句温柔的回答。

手动配置

如果你想更灵活一些,可以自己注入 Bean:

这种方式就像自己炒菜,不依赖厨师长的"套餐模式",自由度更高。

低级智谱 AI API 客户端

最后,如果你是底层控,想要直接玩 API,也完全没问题。

这样你就能直接跟 API 对话,连 Spring AI 的封装都不用。

总结

整整一天的折腾,我发现:

  • 智谱 AI 的接口很友好,几乎和 OpenAI 一致;
  • Spring AI 的集成很丝滑,自动配置一开,轻轻松松跑起来;
  • 如果要玩高级玩法,ZhiPuAiChatOptions、ZhiPuAiChatModel、ZhiPuAiApi 都能满足需求。

写到这里,感觉就像我请了一位新的"AI 朋友"进家门,它能帮我写代码、写诗、陪我聊天,真香!

大家要是也想试试,就动手集成一把,保证你也能体会到那种"代码里开了个外挂"的快乐!

END

我是小米,一个喜欢分享技术的31岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号"软件求生",获取更多技术干货!

相关推荐
悟空码字2 小时前
阿里通义开源啦,源码地址+部署脚本,让AI会“做研究”
后端·阿里巴巴
GalaxyMeteor2 小时前
nodejs (express / koa)项目用ghooks + validate-commit-msg 实现 git提交时校验eslint+提交消息规范验证
后端
用户90555842148052 小时前
spymemcached重要组成部分-IO源码解析
java
生无谓2 小时前
@AutoConfiguration和@Configuration区别
后端
吟风于春2 小时前
Spring 中 REQUIRED 事务的回滚机制详解
java
IT_陈寒4 小时前
SpringBoot 3.2新特性实战:这5个隐藏技巧让你的启动速度提升50%
前端·人工智能·后端
阿杆4 小时前
国产神级开源 OCR 模型,GitHub 55k Star!再次起飞!
后端·github·图像识别
武子康4 小时前
大数据-102 Spark Streaming 与 Kafka 集成全解析:Receiver 与 Direct 两种方式详解 附代码案例
大数据·后端·spark
生无谓4 小时前
spring.factories作用
后端