”spring 不生产 AI,只是 AI 工具的搬运工“
项目可以查看gitee
Open AI
前期准备
Open AI官方地址,需要使用魔法才能打开,同时购买很麻烦,建议淘宝进行购买,只需要购买 open ai 的 apikey 即可。
apikey 形如 sk-xxxxxxxxxxxxxxxxx
项目创建
Idea 创建 SpringBoot Maven 项目(基于1.0-SNAPSHOT版本,SpringBoot 3.2.6),依赖选择Spring Web、 OpenAI。其他可以自行选择
修改项目仓库地址,中央仓库暂时还没 Spring AI 相关 jar 包。仓库地址改成快照仓库地址,官方说明
<repository>
<id>spring-snapshots</id>
<name>Spring Snapshots</name>
<url>https://repo.spring.io/snapshot</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
项目中找到 pom.xml 文件,将 <spring-ai.version>0.8.1</spring-ai.version>
改为 <spring-ai.version>1.0.0-SNAPSHOT</spring-ai.version>
yaml 配置文件中添加,openai 更多配置可以查看 org.springframework.ai.autoconfigure.openai.OpenAiAutoConfiguration。
spring:
ai:
openai:
# 购买的 api-key
api-key: sk-xxxx
# 如果是官方地址,则可以不填,默认为 https://api.openai.com
base-url:
聊天
基础使用
主要类 org.springframework.ai.openai.OpenAiChatModel,快照版本不同,可能名字不一样,可以查看 org.springframework.ai.autoconfigure.openai.OpenAiAutoConfiguration 中的聊天类是哪个。
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.springframework.ai.openai.OpenAiChatModel;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
public class ChatTest {
@Resource
private OpenAiChatModel chatModel;
@Tes