SpringAI实战之快速上手

1. 快速上手

介绍

  • 模型集成:支持OpenAI、Hugging Face等主流AI服务,轻松切换不同大模型(如GPT-4、Llama 2、Deepseek等)

  • 向量数据库:集成Pinecone、Chroma等向量数据库,支持语义搜索与相似度匹配

  • 文档处理:自动解析PDF、Markdown等文档,提取文本内容生成向量嵌入

  • 对话记忆:内置对话历史管理,支持上下文感知的多轮对话

  • 工具调用:通过@Tool注解快速集成外部API(如天气查询、数据库操作)

  • 优化求解:集成Timefold Solver解决资源调度等优化问题

  • 可观测性:提供指标监控(延迟、Token消耗)和日志追踪

  • 代理模式:支持工作流驱动和自主决策两种代理模式,实现复杂任务自动化

  • MCP: 支持MCP 客户端和 MCP服务端

    申请API key

查看可用的模型

点击链接跳转 https://www.bigmodel.cn/console/modelcenter/square,后续从这里找模型

创建Spring Boot项目

创建项目之后,引入依赖

配置依赖管理

复制代码
 <properties>
        <java.version>17</java.version>
        <spring-ai.version>1.0.0</spring-ai.version>
</properties>
 <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>

引入Spring AI相关依赖

复制代码
<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-starter-model-zhipuai</artifactId>
        </dependency>
</dependencies>

添加配置文件

复制代码
server:
  port: 8080
spring:
  ai:
    zhipuai:
      api-key: ${创建的key}

到这一步基本工作已经完成

使用Chat Client 完成大模型调用

在调用过程中,我们需要使用spring ai的chat client和 chat model

复制代码
@Autowired
private ChatModel zhiPuAiChatModel;

    @GetMapping("/ai")
    public String generation(@RequestParam(defaultValue = "你觉得知识能改变命运么?") String userInput) {
        ChatClient chatClient = ChatClient.create(zhiPuAiChatModel);
        String content = chatClient.prompt(userInput).call().content();
        return content;
    }

请求API http://localhost:8080/ai,得到相应结果:

那么到这里我们已经完成了Spring AI 与大模型交互的第一步,接下来会给大家分享更多Spring AI提供的能力。具体详情可见本人的SpringAI系列专栏。

相关推荐
kfaino6 小时前
码农的AI翻身(三)你好,我叫 Embedding
后端·ai编程
_山海8 小时前
OpenSpec-基于SDD规格驱动开发
ai编程·vibecoding
狼爷13 小时前
吃透 Java Function 接口,搞定 99% 的 Stream 场景
java·函数式编程
唐老板15 小时前
MCP协议实战:从零写个Agent工具
ai编程·mcp
counterxing16 小时前
最近发现一个 Mac 工具,有点像把 Raycast、语音输入法、截图和录屏塞到了一起
macos·ai编程·claude
薛定喵的谔16 小时前
Term Proxy — 用 Tauri 2 打造跨平台终端配置管理工具
electron·ai编程·全栈
小溪彼岸16 小时前
CC Switch可视化管理Skill、提示词、会话
aigc·ai编程
祎雪双十Gy17 小时前
从 DataX 的配置加载说起:我用 FastJson2 做了一个轻量级动态配置管理库
java·后端
小锋java123417 小时前
分享一套锋哥原创的SpringBoot4+Vue3宠物领养网站系统
java
垚森18 小时前
我用 GLM-5.2 造了个炸裂主题后台:16 套主题随心切,可在线体验
ai·react