Java真的能玩AI了?Spring AI輕松接入大模型,幾行代碼就搞定!
您還在為Java難以對接AI模型而發(fā)愁嗎?
您是否羨慕Python開發(fā)者能輕松調(diào)用各種大模型?
您是否也想用熟悉的Java技術(shù)棧開發(fā)AI應(yīng)用?
好消息!Spring AI來了!Java開發(fā)者終于等到了自己的AI工具包,讓我們看看怎么用幾行代碼就能接入大模型,實(shí)現(xiàn)你的AI應(yīng)用創(chuàng)意。Spring AI的發(fā)布讓這一切成為可能!讓我們一起來看看這個(gè)重磅更新帶來了什么???
1.重磅!Spring AI究竟是什么?
官網(wǎng)地址:https://spring.io/projects/spring-ai
Spring AI是Spring生態(tài)的最新成員,專注于簡化企業(yè)級AI應(yīng)用開發(fā)。它是一個(gè)輕量級但功能強(qiáng)大的框架,讓Java開發(fā)者能夠輕松地將各種AI能力集成到應(yīng)用中。
圖片
白話解釋Spring AI核心思想:Spring AI不是要構(gòu)建一個(gè)自己的大模型,而是讓你方便對接各種AI大模型。
??核心優(yōu)勢:
- 完美契合Spring生態(tài)
- 統(tǒng)一的API設(shè)計(jì)
- 支持所有主要AI 模型提供商,例如 Anthropic、OpenAI、Microsoft、Amazon、Google 和 Ollama
- 企業(yè)級功能支持
- 簡單易用的開發(fā)體驗(yàn)
2.Spring AI開發(fā)前期準(zhǔn)備
1) 安裝JDK 17以上版本,推薦JDK 21。詳細(xì)安裝教程參考:https://mp.weixin.qq.com/s/cgnkTITL4oy2uw5fLxs8kQ
2) IDEA推薦安裝IntelliJ IDEA 2024.x版本
3) 訪問Open AI網(wǎng)站https://openai.com/
4) 準(zhǔn)備OpenAI的API Key(自己注冊或某寶自行購買)當(dāng)然低調(diào)再為大家分享一種白嫖方式,關(guān)注我私信回復(fù)“API Key”,可以免費(fèi)使用 Github 賬號進(jìn)行綁定領(lǐng)取。
圖片
在 README.md 中找到「申請領(lǐng)取內(nèi)測免費(fèi) API Key」鏈接,點(diǎn)擊后進(jìn)行 Github 授權(quán)即可免費(fèi)獲得 API Key
圖片
3.快速上手 - 5分鐘接入AI能力
1)pom.xml中添加依賴
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- spring ai的版本 -->
<spring-ai.version>1.0.0-SNAPSHOT</spring-ai.version>
</properties>
<!-- spring ai 默認(rèn)支持spring boot需3.0以上版本 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.3.5</version>
<relativePath/>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--spring ai的starter依賴,啟動(dòng)依賴,起步依賴-->
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-openai-spring-boot-starter</artifactId>
</dependency>
</dependencies>
<!-- 子模塊繼承父模塊所有依賴,等價(jià)于繼承一個(gè)父項(xiàng)目:Spring_AI_Project 下pom父項(xiàng)目-->
<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>
<!--配置本項(xiàng)目的倉庫:因?yàn)閍liyun的maven中心倉庫還沒有更新spring ai的jar包,無法下載-->
<repositories>
<!--快照版本的倉庫-->
<repository>
<id>spring-snapshot</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
</repositories>
2)application.yml配置密鑰
# 定義應(yīng)用名稱
spring:
application:
name: spring-ai-chat
# spring ai配置項(xiàng)
ai:
openai:
# 配置api key
api-key: ${自己的API Key}
# 配置國內(nèi)中轉(zhuǎn)地址
base-url: ${中轉(zhuǎn)地址}
3)控制器編寫接口
@RestController
public class AiChatController {
// 依賴注入OpenAiChatModel對象
@Resource
private OpenAiChatModel openAiChatModel;
// 定義普通聊天接口
@GetMapping("/openai/chat")
public RespResult openAIChat(@RequestParam(required = true) String message){
String call = openAiChatModel.call(message);
return RespResult.success(call);
}
}
就是這么簡單!三步配置,你的Spring應(yīng)用就具備了AI對話能力!??
4.寫到最后
Java生態(tài)終于在AI時(shí)代迎來了春天!Spring AI的加入,不僅讓Java開發(fā)者能夠輕松駕馭AI技術(shù),更為企業(yè)級AI應(yīng)用開發(fā)提供了可靠的解決方案。