news 2026/11/2 3:05:41

Spring AI 最新实战系列(一)完成一个简单的AI项目

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Spring AI 最新实战系列(一)完成一个简单的AI项目

使用前介绍

我们以 Alibaba 的百炼平台作为Spring-AI的模型讲解,以最新稳定版作为架构。

spring-ai 的最新版本 1.1.2 ;alibaba-spring-ai 的最新版本 1.1.0.0-RC1。

需要注意一点:最新版本的 Spring Boot 4.0.0 不能适配,需要降低版本到 3.5.8。

原因是Spring Boot 4.0.0 不存在以下两个自动配置类,则两个类在alibaba-spring-ai 自动配置类中要用到。

org.springframework.boot.autoconfigure.web.client.RestClientAutoConfiguration

org.springframework.boot.autoconfigure.web.reactive.function.client.WebClientAutoConfiguration

代码部分

实现相当简单,3步即可完成。

  1. 引入项目工程的依赖

  2. 去百炼平台创建一个api-key,配置在 application 文件中

    百炼平台注册一个账户,然后创建一个api-key即可

  3. 根据需要实现相应的功能

    模型对话、文生图、文生语音、文生视频、多模态

    必要时可以引入百炼平台的 SDK,最新版本为 2.22.3 ,即com.alibaba:dashscope-sdk-java:2.22.3

  • 项目依赖

    plugins{id("java")}group="com.yiyi"version="1.0-SNAPSHOT"repositories{mavenCentral()maven("https://repo.spring.io/milestone")maven("https://repo.spring.io/snapshot")maven{name="Central Portal Snapshots"url=uri("https://central.sonatype.com/repository/maven-snapshots/")}}dependencies{implementation(platform("org.springframework.boot:spring-boot-dependencies:3.5.8"))implementation(platform("org.springframework.ai:spring-ai-bom:1.1.2"))implementation(platform("com.alibaba.cloud.ai:spring-ai-alibaba-bom:1.1.0.0-RC1"))implementation("org.springframework.boot:spring-boot-starter-webflux")// implementation("org.springframework.ai:spring-ai-starter-model-deepseek")implementation("com.alibaba.cloud.ai:spring-ai-alibaba-starter-dashscope:1.1.0.0-RC1")implementation("com.alibaba:dashscope-sdk-java:2.22.3")// implementation("org.springframework.ai:spring-ai-redis-store")testImplementation("org.springframework.boot:spring-boot-starter-test")testImplementation(platform("org.junit:junit-bom:5.10.0"))testImplementation("org.junit.jupiter:junit-jupiter")testRuntimeOnly("org.junit.platform:junit-platform-launcher")}tasks.test{useJUnitPlatform()}
  • application.yaml配置api-key : 为了安全,可采用 api-key 配置在环境变量中,然后使用环境变量的值

    spring:ai:dashscope:api-key:${your-api-key}
  • 一个简单的实例(直接用测试用例的方式),正式项目用 webflux ,完成流式输出,提升用户体验。

    packagecom.yiyi.coding.spring.ai;importcom.alibaba.cloud.ai.dashscope.chat.DashScopeChatModel;importorg.junit.jupiter.api.Test;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;@SpringBootTestpublicclassDashScopeTest{@TestpublicvoidtestChatModel(@AutowiredDashScopeChatModeldashScopeChatModel){System.out.println(dashScopeChatModel.call("你是谁"));}}
  • 运行后输出内容

    我是通义千问,阿里巴巴集团旗下的超大规模语言模型。我能够回答问题、创作文字,如写故事、公文、邮件、剧本等,还能进行逻辑推理、编程,甚至表达观点和玩游戏。如果你有任何需要帮助的地方,欢迎随时告诉我!
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/11/1 23:07:56

思考与练习之答案与解析(第四章 程序组成与输入输出)

一、单项选择题答案及解析1、④字面量(Literal)是指在源代码中直接写出的、表示固定值的符号。例如,整数 42、浮点数 3.14、字符串 "hello"、布尔值 True 等都是字面量。它们是数据最直接的表示方式,在程序执行时会创建…

作者头像 李华
网站建设 2026/11/1 23:57:43

12月16号:分岐后机会更明显

这轮迷你周期从上周四开始,情绪和指数双冰点,航天动力逆势中表现出了气质,上周四是确认地位的买点,半路或者打板,上周五空头龙洲反助攻情绪修复,航天动力的买点在低吸。接着昨天周一受外围影响,…

作者头像 李华
网站建设 2026/11/2 0:53:44

静思闲杂语记

生活就是这样子,朋友是越交越少,金钱是越花越多。人们,不会怜悯弱者的苦难,只会同情强者的遭遇。千流万川常存世,一世芳华随风散。得一诺不如得一人,得一人不如得一心。心远则体乏,劳体则心疲。…

作者头像 李华
网站建设 2026/11/2 4:03:50

GitHub级文档美化终极方案:github-markdown-css完整指南

还在为技术文档排版杂乱无章而苦恼?还在为团队内部Markdown样式不统一而烦恼?今天我要分享一个3分钟就能让文档颜值飙升的解决方案——github-markdown-css。这个轻量级CSS库能够让你的文档瞬间拥有GitHub官方同款视觉体验,无论是个人博客、技…

作者头像 李华
网站建设 2026/11/2 2:23:00

Koodo Reader如何实现智能封面管理?电子书封面优化全攻略

Koodo Reader如何实现智能封面管理?电子书封面优化全攻略 【免费下载链接】koodo-reader A modern ebook manager and reader with sync and backup capacities for Windows, macOS, Linux and Web 项目地址: https://gitcode.com/GitHub_Trending/koo/koodo-read…

作者头像 李华
网站建设 2026/11/1 9:57:55

终极指南:如何在Android应用中快速集成Vosk中文语音识别功能

终极指南:如何在Android应用中快速集成Vosk中文语音识别功能 【免费下载链接】vosk-android-demo alphacep/vosk-android-demo: Vosk Android Demo 是一个演示项目,展示了如何在Android平台上使用Vosk语音识别引擎进行实时语音转文本功能。Vosk是开源的离…

作者头像 李华