阿里巴巴新推出Java版AI 应用开发框架-Spring AI Alibaba

Spring AI Alibaba 是一款 Java 语言实现的 AI 应用开发框架,旨在简化 Java AI 应用程序开发,让 Java 开发者像使用 Spring 开发普通应用一样开发 AI 应用。Spring AI Alibaba 基于 Spring AI 开源项目构建,默认提供阿里云基础模型服务、开源及商业生态组件的集成与最佳实践。 ![](https://img-blog.csdnimg.cn/img_convert/112aef439b005f2ed847f499f7def87b.png) Spring AI Alibaba 作为开发 AI 应用程序的基础框架,定义了以下抽象概念与 API,并提供了 API 与通义系列模型的适配。 * 开发复杂 AI 应用的高阶抽象 Fluent API --- ChatClient * 提供多种大模型服务对接能力,包括主流开源与阿里云通义大模型服务(百炼)等 * 支持的模型类型包括聊天、文生图、音频转录、文生语音等 * 支持同步和流式 API,在保持应用层 API 不变的情况下支持灵活切换底层模型服务,支持特定模型的定制化能力(参数传递) * 支持 Structured Output,即将 AI 模型输出映射到 POJOs * 支持矢量数据库存储与检索 * 支持函数调用 Function Calling * 支持构建 AI Agent 所需要的工具调用和对话内存记忆能力 * 支持 RAG 开发模式,包括离线文档处理如 DocumentReader、Splitter、Embedding、VectorStore 等,支持 Retrieve 检索 以上框架功能可让您实现常见 AI 应用的快速开发,例如 "通过文档进行问答" 或 "通过文档进行聊天" 等。 开源项目地址: ### 快速开始 请参考 [官网文档快速开始](https://sca.aliyun.com/ai/get-started/) 了解如何使用 Spring AI Alibaba 快速开发生成式 AI 应用。 总的来说,使用 Spring AI Alibaba 开发应用与使用普通 Spring Boot 没有什么区别,只需要增加 `spring-ai-alibaba-starter` 依赖,将 `ChatClient` Bean 注入就可以实现与模型聊天了。 1. 在项目中加入 `spring-ai-alibaba-starter` 依赖。 ```xml com.alibaba.cloud.ai spring-ai-alibaba-starter 1.0.0-M2 ``` 注意:由于 spring-ai 相关依赖包还没有发布到中央仓库,如出现 spring-ai-core 等相关依赖解析问题,请在您项目的 pom.xml 依赖中加入如下仓库配置。 ```xml spring-milestones Spring Milestones https://repo.spring.io/milestone false ``` 1. 为你的 Spring Bean 注入 `ChatClient`。 ```java @RestController public class ChatController { private final ChatClient chatClient; public ChatController(ChatClient.Builder builder) { this.chatClient = builder.build(); } @GetMapping("/chat") public String chat(String input) { return this.chatClient.prompt() .user(input) .call() .content(); } } ``` 并给出了一些ai使用场景示例 官网 ![](https://img-blog.csdnimg.cn/img_convert/a689b2296d107fd37e6030215bd8875c.png) 对于Java框架的添砖加瓦还是可以了,尤其是目前ai的流行,可以学习下

相关推荐
inquisiter1 分钟前
UEFI镜像结构布局
linux·spring
ChinaRainbowSea6 分钟前
1. 初始 RabbitMQ 消息队列
java·中间件·rabbitmq·java-rabbitmq
你觉得20510 分钟前
浙江大学朱霖潮研究员:《人工智能重塑科学与工程研究》以蛋白质结构预测为例|附PPT下载方法
大数据·人工智能·机器学习·ai·云计算·aigc·powerpoint
lmryBC4916 分钟前
golang接口-interface
java·前端·golang
ゞ 正在缓冲99%…16 分钟前
leetcode75.颜色分类
java·数据结构·算法·排序
橘猫云计算机设计28 分钟前
基于springboot的考研成绩查询系统(源码+lw+部署文档+讲解),源码可白嫖!
java·spring boot·后端·python·考研·django·毕业设计
人工干智能31 分钟前
科普:One-Class SVM和SVDD
人工智能·机器学习·支持向量机
时光呢33 分钟前
JAVA常见的 JVM 参数及其典型默认值
java·开发语言·jvm
程序媛学姐42 分钟前
SpringKafka错误处理:重试机制与死信队列
java·开发语言·spring·kafka