通过Spring AI 访问本地AI model 和避坑指南

Spring 脚手架的准备

通过 spring initializr 在线创建 agentdemo

下载copy到项目目录并解压,Initializr 已经创建了项目框架和下面的入口文件和配置文件

通过VS code 自带的agent, 添加spring AI的依赖和 ollama 依赖

这里会创建三个文件并修改pom.xml


OllamaConfig.java 主要作用是通过OllamaChatModel 的builder构建Spring AI 的 ChatClient(类似如果是OpenAI等其他AI service,应该是相同的结构)

ChatController 主要通过注入Chatclient 对外提供对话的RESTful 服务

application.yml 主要定义外部model 和 swagger 等资源

pom.xml 中添加下面两个依赖

安装依赖并执行:

./mvnw clean install -U
./mvnw spring-boot:run


测试效果

坑点:
1. Spring AI 版本, 正式版是1.0.0,是2025年五月19发布的,AI Agent 不能直接识别,使用的是1.0.0-M3, M3 不在中央仓储,在milestone里面,所以直接install 回找不到


2. M3 版本中的ChatClient 和 正式版的构造方法不一样,M版本中的构造在正式版中不兼容,正式版参考正文截图(通过OllamaAPI 和 OllamaOptions来实现)

@Bean
public ChatClient chatClient() {
    OllamaChatModel ollamaChatModel = OllamaChatModel.builder()
        .baseUrl(baseUrl)
        .model(modelName)
        .build();
    return ChatClient.builder(ollamaChatModel).build();
}

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注