淺嘗 Spring AI【使用超級簡單~】

一直想要體驗下 Spring AI,最近自己的一個工具有這個需求,所以這里準備使用下。其實使用起來超級簡單。

1.IDEA 新建 Spring項目

1)這里可以根據自己的喜好選擇 項目名、jdk版本等

image-20250711115133493

2)這里選擇 在ai中選擇 openAI 即可。然后我另外選擇了一個 Spring Web,因為我是需要對外提供API的。

image-20250711115054272

2.項目代碼與配置

項目目錄文件結構:
在這里插入圖片描述

1)配置 application.yml

這里我對接的是 硅基流動的api,然后選擇的模型是 deepseek-ai/DeepSeek-V3。這些都可以自由選擇,如果你之前沒有注冊使用過這種模型api提供商,可以先看下第三節。

spring:application:name: x-aiai:openai:api-key: sk-qoiiuryvclnaqbmhqqquyg*****vyrincprsfvirxafrrbase-url: https://api.siliconflow.cn/chat:options:model: deepseek-ai/DeepSeek-V3

2)配置客戶端

package com.xr.xai.config;import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.openai.OpenAiChatModel;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class CommonConfiguration {@Beanpublic ChatClient chatClient(OpenAiChatModel model){return ChatClient.builder(model).build();}
}

3)編寫 ChatController

package com.xr.xai.controller;import org.springframework.ai.chat.client.ChatClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import reactor.core.publisher.Flux;@RestController
@RequestMapping("/ai")
public class ChatController {@Autowiredprivate ChatClient chatClient;@RequestMapping(value = "/chat", produces = "text/html;charset=utf8")public Flux<String> chat(String prompt) {return chatClient.prompt().user(prompt).stream().content();}}

完成以上,就可以編譯運行了。怎么測試呢?

在瀏覽器上輸入這個URL 或者 postman請求下

http://localhost:8080/ai/chat?prompt=Spring AI 怎么使用

在這里插入圖片描述

3.硅基流動注冊與使用

我的邀請注冊鏈接:https://cloud.siliconflow.cn/i/19016f2p,注冊完成后可以新建API密鑰。

1)新建API密鑰并復制粘貼到項目中

在這里插入圖片描述

2)選擇想要使用的模型

可以使用的模型有很多,有些是低參數的是免費的,這里你想要使用什么,就把他的名字 復制粘貼到項目配置中。

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/90637.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/90637.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/90637.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

DDL期間TDSQL異常會話查詢造成數據庫主備切換

問題描述&#xff1a;7*24聯機交易系統&#xff0c;傍晚時分&#xff0c;從客戶端后臺對3千萬行的大表執行縮短varchar類型字段長度的ddl語句&#xff0c;執行期間&#xff0c;為了查看ddl進度&#xff0c;從TDSQL-MySQL赤兔前端頁面點擊異常會話查詢&#xff0c;之后數據庫卡住…

弧焊機器人氣體全方位節能指南

氬弧焊&#xff08;TIG焊接&#xff09;作為其中一種高效且精密的技術&#xff0c;憑借其穩定性和高質量的焊接效果&#xff0c;在航空航天、汽車制造、船舶建造以及石油化工等領域占據了不可或缺的地位。氬弧焊通過使用惰性氣體&#xff08;如氬氣&#xff09;保護電弧和熔池&…

數據清洗(ETL/ELT)原理與工具選擇指南:企業數字化轉型的核心引擎?

目錄 一、數據清洗&#xff08;ETL/ELT&#xff09;到底在干啥&#xff1f; 1.揪出并處理異常值 2.把缺失的數據補上&#xff08;或處理好&#xff09; 3.數據轉換與標準化 4.一致性校驗 二、工具怎么選&#xff1f;看菜吃飯&#xff0c;量體裁衣 1.數據量不大、要求不高…

阿里云服務器,CentOS7.9上安裝YApi 接口管理平臺

目錄 1.node安裝 1.1下載node,解壓 1.2 部署bin文件 1.3 安裝mongodb 2.啟動yapi 2.1 前置命令 2.2 啟動服務 3.利用pm2方便服務管理維護 3.1.安裝pm2 3.2 常用 PM2 命令 4.常見問題 4.1. 確認 MongoDB 是否安裝 4.2. 安裝 MongoDB&#xff08;若未安裝&#xff…

阿里云錯題集分享

有最近想要考試阿里云的可以私信我 &#xff0c;一起加油錯題集1.在使用阿里云的負載均衡SLB實例時&#xff0c;做了如下健康檢查的配置:成功響應和超時響應時間均為1秒&#xff0c;健康檢查間隔為2秒&#xff0c;不健康閾值為3&#xff0c;健康閾值為3。即對于確認一個云服務器…

Android 12 - 部分相機橫屏顯示方案

1.相機過渡界面方向旋轉 Android 10 - 相機過渡界面默認角度 同A10 有些區別&#xff0c;再次增加記錄修改。 這個文件沒有修改&#xff0c;只是說明 src/com/android/camera/CameraActivity.javaprivate void freezeScreenCommon(boolean async) {long startTime System.…

Operation Blackout 2025 Phantom Check hayabusa+ControlSet001+VirtualBox

QAQA攻擊者使用哪個 WMI 類來檢索型號和制造商信息以進行虛擬化檢測&#xff1f;Win32_ComputerSystem攻擊者執行了哪個 WMI 查詢來檢索計算機的當前溫度值&#xff1f;SELECT CurrentTemperature FROM MSAcpi_ThermalZoneTemperature攻擊者加載了 PowerShell 腳本以檢測虛擬化…

《O-PAS?標準的安全方法》白皮書:為工業自動化系統筑起安全防線

The Open Group 最新白皮書《O-PAS?標準的安全方法》重磅發布&#xff0c;為流程工業在邁向開放架構與多供應商互操作的過程中&#xff0c;指明了安全實踐的方向。O-PAS?標準的安全方法ABOUT PUBLICATION亮點一&#xff1a;首次系統闡釋 O-PAS? 標準安全方法與 IEC/ISA 6244…

UML 圖類型全解析:結構圖與行為圖分類詳解

作為軟件架構的核心建模語言&#xff0c;UML&#xff08;統一建模語言&#xff09;通過14種標準圖表提供系統多維度視角。這些圖表分為結構圖&#xff08;靜態模型&#xff09; 和 行為圖&#xff08;動態模型&#xff09; 兩大類&#xff0c;覆蓋從需求到實現的完整生命周期。…

lodash不支持 Tree Shaking 而 lodash-es可以

lodash 無法有效支持 Tree Shaking 而 lodash-es 可以&#xff0c;核心區別在于?模塊規范、文件結構和靜態分析兼容性?。以下是具體原因分析&#xff1a; ?? 一、模塊規范差異&#xff08;核心原因&#xff09; lodash&#xff08;CommonJS 規范&#xff09;? 使用 requir…

java+vue+SpringBoo高校實習信息發布網站(程序+數據庫+報告+部署教程+答辯指導)

源代碼數據庫LW文檔&#xff08;1萬字以上&#xff09;開題報告答辯稿ppt部署教程代碼講解代碼時間修改工具 技術實現 開發語言&#xff1a;后端&#xff1a;Java 前端&#xff1a;vue框架&#xff1a;springboot數據庫&#xff1a;mysql 開發工具 JDK版本&#xff1a;JDK1.8 數…

uniApp實戰五:自定義組件實現便捷選擇

文章目錄1.最終效果預覽2.快速選擇組件封裝3.彈框組件封裝4.組件邏輯實現5.組件樣式6.頁面引入1.最終效果預覽 2.快速選擇組件封裝 <uv-cell :border"isShowBorder"><template v-slot:title><text class"title-key">{{ title }}</te…

AI在垂直領域的深度應用:醫療、金融與自動駕駛的革新之路

AI在垂直領域的深度應用:醫療、金融與自動駕駛的革新之路 一、醫療領域:AI驅動的精準診療與效率提升 1. 醫學影像診斷 AI算法通過深度學習技術,已實現對X光、CT、MRI等影像的快速分析,輔助醫生檢測癌癥、骨折等疾病。例如,Google DeepMind的AI系統在乳腺癌篩查中,誤檢率…

模塊三:現代C++工程實踐(4篇)第二篇《性能調優:Profile驅動優化與匯編級分析》

性能調優&#xff1a;Profile驅動優化與匯編級分析實戰&#xff1a;優化矩陣乘法至SSE/AVX指令集&#xff08;終極加強版&#xff09;一、性能瓶頸的全鏈路診斷&#xff08;深度擴展&#xff09;1.1 硬件性能計數器的極致利用PMU事件深度定制&#xff1a;# 捕獲L1緩存事件與分支…

二刷 黑馬點評 商戶查詢緩存

緩存 數據交換的緩沖區&#xff0c;俗稱的緩存是緩沖區內的數據&#xff0c;一般從數據庫中獲取&#xff0c; 例1:Static final ConcurrentHashMap<K,V> map new ConcurrentHashMap<>(); 本地用于高并發例2:static final Cache<K,V> USER_CACHE CacheBuild…

【前端】【組件庫開發】【原理】【無框架開發】現代網頁彈窗開發指南:從基礎到優化

效果 現代網頁彈窗開發指南&#xff1a;從基礎到優化 彈窗&#xff08;Modal&#xff09;作為網頁交互的重要組件&#xff0c;在用戶通知、確認操作和表單輸入等場景中廣泛應用。本文將循序漸進地講解彈窗的技術實現與最佳實踐。 一、彈窗基礎概念 彈窗是一種覆蓋在主內容之…

【操作系統】線程

JavaEE—線程 一、進程與線程 1.包含管理 2.資源布局 2.1公共資源 2.2私有資源 二、并發編程 1.多線程優勢 1.1創建 1.1.1多線程 1.1.2多進程 1.2通信 1.2.1多線程 1.2.2多進程 1.3調度 1.3.1多線程 1.3.2多進程 1.4銷毀 1.4.1多線程 1.4.2多進程 2.多進程…

React 自定義Hook——頁面或元素滾動到底部監聽 Hook

功能簡介 useReachBottom 是一個 React 自定義 Hook&#xff0c;支持監聽頁面&#xff08;body&#xff09;或任意可滾動元素&#xff08;如 div&#xff09;是否滾動到底部。它能幫助你在用戶滑動到底部時觸發加載更多、顯示提示等操作&#xff0c;極大提升前端交互體驗。 亮…

當Powerbi遇到quickbi,性能優化方式對比

powerbi性能優化對于powerbi&#xff0c;性能優化可以從15個方面考慮&#xff1a; 1.過濾源數據【quickbi數據集過濾或sql過濾】2.刪除無關列 【quickbi不選字段或sql不查詢】3.聚合分析粒度 【quickbi使用sql聚合或計算字段聚合】4.整理字段 【quickbi使用sql聚合或計算字段聚…

ValueConverter轉換器WPF

屬性搭橋 比如BoolToVisibility 創建兩個屬性 Bool Visibility 這樣不好 混亂了viewmodels 降低了泛用性系統自帶的convertor <Window.Resources><BooleanToVisibilityConverter x:Key"booltovis"></BooleanToVisibilityConverter><…