重要通知:spring-ai-hunyuan 已兼容 Spring AI 稳定版!

最近有小伙伴在使用 mvn 仓库中的 1.0.0-M6 版本时,已经遇到一些兼容性问题和未知异常。本着更好地维护 spring-ai-hunyuan 仓库,我这几天熬夜更新并整理了对 Spring AI 稳定版(即 1.0.0)的支持。

项目源码地址:

👉 https://github.com/StudiousXiaoYu/spring-ai-hunyuan

当前已支持的功能包括:

✅ Chat(支持流式回答与图片理解)

✅ Embedding (文本向量生成)

混元官方的其他能力我也会逐步实现,欢迎更多小伙伴试用并通过 issue 提出反馈。如果一时联系不上我,也可以直接在相关文章下方留言,我会定期查看并及时回复。

如何使用

环境准备

确保你已安装以下工具:

✅ JDK 17+

✅ Maven 3.8+

✅ 腾讯云账号 + HunYuan 秘钥(Secret ID / Secret Key)

创建 Spring Boot 项目并集成

在你的 Spring Boot 项目中添加如下依赖(以 pom.xml 为例):

xml 复制代码
<dependency>
    <groupId>io.github.studiousxiaoyu</groupId>
    <artifactId>spring-ai-starter-model-hunyuan</artifactId>
    <version>1.0.0</version>
</dependency>

配置 HunYuan 参数

在 application.properties 或 application.yml 中添加 HunYuan 认证信息和模型配置:

properties 复制代码
spring.ai.hunyuan.secret-id=你的-secret-id
spring.ai.hunyuan.secret-key=你的-secret-key
spring.ai.hunyuan.chat.options.model=hunyuan-pro
spring.ai.hunyuan.embedding.options.model=hunyuan-embedding
spring.ai.hunyuan.embedding.options.dimensions=1024

编写测试代码

使用 ChatClient 发起对话

java 复制代码
public class HunYuanService {

    private final ChatClient chatClient;

    public HunYuanService(ChatClient chatClient) {
        this.chatClient = ChatClient.builder(chatModel).build();
    }

    public String askQuestion(String question) {
        return chatClient.prompt()
                .user(question)
                .call()
                .content();
    }
}

控制器示例

java 复制代码
@RestController
@RequestMapping("/chat")
public class ChatController {

    private final HunYuanService hunYuanService;

    public ChatController(HunYuanService hunYuanService) {
        this.hunYuanService = hunYuanService;
    }

    @GetMapping("/q")
    public String chat(@RequestParam("text") String text) {
        return hunYuanService.askQuestion(text);
    }
}

启动并测试

启动 Spring Boot 应用,访问:

http://localhost:8080/chat/q?text=你好

你应该能收到来自 HunYuan Pro 模型的回复。

总结

目前默认模型为HunYuan Pro,如果想要使用其他模型,可以自行配置model参数进行调整。如果觉得有所帮助欢迎star~~

如果还有对Spring AI未上手的小伙伴,可以查看我写的demo示例,仓库地址在:https://github.com/StudiousXiaoYu/spring-ai-courses

这个仓库包含了专栏中各个模块的源码,帮助你深入学习每个环节的内容,快速上手 Spring AI。具体的模块包括:

  • 01-course-quickstart: 快速入门,带你搭建 Spring AI 开发环境,快速了解框架基础。
  • 02-course-prompt: 了解如何高效地与 AI 进行交互,掌握 AI 提示工程的核心技能。
  • 03-course-output: 学习如何处理 AI 输出,并实现更加智能的交互功能。
  • 03-course-image_audio: 涉及图像和音频处理,展示如何将多媒体功能集成到 Spring AI 应用中。
  • 04-course-embedding: 讲解如何使用 Spring AI 进行高效的文本和数据嵌入。
  • 05-course-advisor: 理解 AI 在智能系统中的应用,并学习如何创建智能顾问系统。
  • 06-course-document: 实战操作,处理和解析文档数据,提升开发效率。
  • 07-course-function-call: 深入探讨如何在 Spring AI 中实现的函数调用和数据交互。
相关推荐
造梦师阿鹏6 小时前
004.从 API 裸调到 LangChain
经验分享·ai·大模型·ai技术·大模型应用开发
汇能感知19 小时前
摄像头模块在运动相机中的应用
经验分享·笔记·科技
前路不黑暗@1 天前
C语言:操作符详解(二)
c语言·开发语言·经验分享·笔记·学习·学习方法·visual studio
Better Rose1 天前
【数模国奖冲刺】备赛过程中的常见问题
经验分享·数学建模·数模国赛
TeleostNaCl2 天前
OpenWrt 编译 | 一种使用 git submodule 方式实现一键更新多个外部软件包
网络·经验分享·git·智能路由器
天意生信云2 天前
生信分析自学攻略 | R软件和Rstudio的安装
经验分享·r语言
Vallelonga2 天前
Rust 异步中的 Waker
经验分享·rust·异步·底层
大阳1232 天前
线程(基本概念和相关命令)
开发语言·数据结构·经验分享·算法·线程·学习经验
yaya_1923 天前
想要PDF翻译保留格式?用对工具是关键
经验分享
草莓熊Lotso3 天前
《详解 C++ Date 类的设计与实现:从运算符重载到功能测试》
开发语言·c++·经验分享·笔记·其他