⭐⭐⭐ Spring Boot 项目实战 ⭐⭐⭐ Spring Cloud 项目实战
《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 网络 「网络」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言都将得到认真回复。甚至不知道如何读源码也可以请教噢。
  4. 新的源码解析文章实时收到通知。每周更新一篇左右。
  5. 认真的源码交流微信群。

前序

在当今数字化时代,人工智能(AI)已成为推动技术进步和创新的核心力量。从智能语音助手到图像识别系统,从个性化推荐引擎到自动化流程,AI 的应用无处不在,正深刻地改变着我们的生活和工作方式。

与此同时,软件开发领域也在不断演进,以适应快速变化的技术需求和业务场景。Spring Boot 作为 Java 生态系统中最受欢迎的框架之一,以其 “约定优于配置” 的理念和丰富的功能,为开发者提供了一种高效、便捷的方式来构建企业级应用程序。

DeepSeek 则是 AI 领域的一颗新星,致力于开发先进的大语言模型(LLM)和相关技术 。它的出现为 AI 技术的发展注入了新的活力,其模型在性能和成本效益方面展现出了卓越的优势,在多项测试中表现出色,甚至超越了一些行业领先的模型,且设计成本相对较低。

当 Spring Boot 与 DeepSeek 相遇,两者的结合为开发 AI 应用程序带来了前所未有的机遇。Spring Boot 的强大功能和便捷性,使得开发者能够快速搭建稳定的后端服务,而 DeepSeek 的先进大语言模型则为应用赋予了强大的智能交互和处理能力。通过将 DeepSeek 的 AI 能力集成到 Spring Boot 应用中,我们可以轻松实现智能聊天机器人、智能文档处理、智能代码生成等各种创新应用,为用户提供更加智能化、个性化的服务体验。

在接下来的内容中,我将带领大家一步步深入了解如何使用 Spring Boot 和 DeepSeek 开发你的第一个 AI 程序。无论你是经验丰富的开发者,还是刚刚踏入 AI 领域的新手,都能从本文中获得实用的知识和技能,开启你的 AI 开发之旅。

开发你的AI程序

创建项目,点击下一步,我这边为了演示,选择了web和openai

点击完成后,进入项目,会自动导入web和ai相关的依赖包

<properties>
<java.version>17</java.version>
<spring-ai.version>1.0.0-M5</spring-ai.version>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-openai-spring-boot-starter</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-bom</artifactId>
<version>${spring-ai.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>

配置openai相关的参数

如何获取Key呢,我这里使用的是deepseek和硅基流动再加华为这三家公司合作的一个联合首发的一个平台注册的,注册地址 如下:

https://cloud.siliconflow.cn/i/pCa1dBVX

我选择了一个对话功能的免费模型,你如果你想用其他,生图,视频,语音相关,里面也可以自行选择。

硅基流动官网注册后后,找到API密钥菜单,生成一个你自己的Key;

这样,你的API Key 和模型都配置好了。

spring:
ai:
openai:
api-key: 这里是你自己的api key
base-url: https://api.siliconflow.cn
chat:
options:
model: deepseek-ai/DeepSeek-R1-Distill-Llama-8B

model: deepseek-ai/DeepSeek-R1-Distill-Llama-8B 这个模型,就是硅基流动模型广场选择的模型名称

下面开发AI了

package com.summer.springai.controller;

import groovy.util.logging.Slf4j;
import org.springframework.ai.chat.client.ChatClient;
import org.springframework.web.bind.annotation.*;

@RestController
@CrossOrigin(origins = "*")
@Slf4j
public class ChatBotController {

private final ChatClient chatClient;

public ChatBotController(ChatClient.Builder builder) {
this.chatClient = builder.defaultSystem("你是一个天气预报员,当有人输入日期的时候,你输出苏州的天气预报信息," +
"生成结果在html页面中以markdown的格式输出,最后输出结尾的时候始终以下面的语句结尾:感谢您的咨询,我是舆情君。").build();
}

@GetMapping(value = "/chat/{message}")
public String chat(@PathVariable("message") String message) {
return chatClient.prompt()
.user(message)
.call()
.content();
}
}

我这里设置了一个系统角色,给的是苏州天气预报员,对话只要输入日期,就给你输出天气情况。

开发完毕,启动项目,地址栏输入:http://localhost:8080/ai/chat/2025年2月12日

看最终效果:

这里只是简单的演示,项目中可以直接写程序,通过大模型的能力,直接以json的格式输出,系统跑完之后,直接插入数据库,也可以做到数据采集,给企业的项目使用。

文章目录
  1. 1. 前序
  2. 2. 开发你的AI程序