SpringAI+DeepSeek:輕鬆打造你的第一個AI應用

👉 這是一個或許對你有用的社群
🐱 一對一交流/面試小冊/簡歷最佳化/求職解惑,歡迎加入芋道快速開發平臺知識星球。下面是星球提供的部分資料:
👉這是一個或許對你有用的開源專案
國產 Star 破 10w+ 的開源專案,前端包括管理後臺 + 微信小程式,後端支援單體和微服務架構。
功能涵蓋 RBAC 許可權、SaaS 多租戶、資料許可權、商城、支付、工作流、大屏報表、微信公眾號、ERPCRMAI 大模型等等功能:
  • Boot 多模組架構:https://gitee.com/zhijiantianya/ruoyi-vue-pro
  • Cloud 微服務架構:https://gitee.com/zhijiantianya/yudao-cloud
  • 影片教程:https://doc.iocoder.cn
【國內首批】支援 JDK 17/21 + SpringBoot 3.3、JDK 8/11 + Spring Boot 2.7 雙版本 

前序

在當今數字化時代,人工智慧(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 開發之旅。
基於 Spring Boot + MyBatis Plus + Vue & Element 實現的後臺管理系統 + 使用者小程式,支援 RBAC 動態許可權、多租戶、資料許可權、工作流、三方登入、支付、簡訊、商城等功能
  • 專案地址:https://github.com/YunaiV/ruoyi-vue-pro
  • 影片教程:https://doc.iocoder.cn/video/

開發你的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:這裡是你自己的apikey
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 = 

"*"

)

@Slf

4j

publicclassChatBotController

{

privatefinal

 ChatClient chatClient;

publicChatBotController(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的格式輸出,系統跑完之後,直接插入資料庫,也可以做到資料採集,給企業的專案使用。

歡迎加入我的知識星球,全面提升技術能力。
👉 加入方式,長按”或“掃描”下方二維碼噢
星球的內容包括:專案實戰、面試招聘、原始碼解析、學習路線。
文章有幫助的話,在看,轉發吧。
謝謝支援喲 (*^__^*)

相關文章