我的个人博客:www.moonkite.cn
大家好,我是风筝。
自从AI火起来之后,大模型一个接一个的出现,所有的语言、工具、产品似乎都能蹭一蹭大模型的热度。
很多大模型都是 Python 实现的,假设你要玩一玩各种问答模型、文生图模型、文字转语音模型,你会发现基本上都是以 Python 为入口的。
还有很多技术博主发表「在AI的帮助下,2小时上线xxx付费产品,MRR xx 千刀」诸如此类的消息,一看背后的技术 JavaScript 一把梭,前端 js ,后端 nodejs 。
还有说:在大模型的帮助下,简单的代码可以由AI快速时间,省下的时间可以做性能优化,那些性能查的工具链、客户端可以由性能更好的 Rust 来重写了,这不,Rust 也算蹭上了。
最近,看到有开发者用 Claude.ai 设计个人简历和社交名片,一看开发者是某 Lisp 大佬,而且 prompt 也是用 Lisp 格式写的伪代码,格式确实很清晰。有评论称,原来 Lisp 才是 AI Prompt 的最终归宿。
而 Java 这边呢,好像就是一堆简单的逻辑代码,貌似只有等着被替代的份儿了。
当然了,在目前看来,这肯定还算是危言耸听,哪儿那么容易轻易就被替代,对吧?
国外和国内两大 Java 技术推动者都推出 Spring AI 框架,分别是 Spring 社区的 Spring-ai 和 阿里巴巴的 Spring AI Alibaba,这两个框架都是为了方便开发者在 AI 场景下的开发。
虽然做不了AI 的核心,但是也要抢占入口不是。
Spring-ai
官方仓库:https://github.com/spring-projects/spring-ai
Spring 社区出品,目前 star 数2.9k。
Spring AI 是一个人工智能工程应用框架,旨在将 Spring 生态系统的设计原则如可移植性和模块化设计应用于人工智能领域,推动以 POJOs 作为应用构建块。它支持多种 AI 模型提供商的聊天、文本转图像和嵌入模型,具有可移植的 API、新颖的向量存储 API、自动配置和启动器、函数调用功能、ETL 数据工程框架以及丰富的文档和示例。
支持众多 AI 提供商的聊天、文本转图像和嵌入模型,包括 Amazon Bedrock、Anthropic、OpenAI 等。还支持访问数千个模型,如 HuggingFace 上的模型。
如果你看过 OpenAI 的官方文档,会发现它有问答、文生图、文字转语音等等各种各样的上百个接口。其他的模型也差不多是这个数量,如果一个应用要接入多个 AI 模型,光实现接口就得花上很多时间。有了 Spring AI ,相当于帮我们封装了一层,只要配置上参数后,就可以用统一的标准调用各个大模型了。
如果你的产品是选用 Java 技术栈的,并且要做出海的话,选择 Spring AI 能节省不少时间。
Spring AI Alibaba
官方仓库:https://github.com/alibaba/spring-ai-alibaba
这是阿里刚刚发布的,是一款 Java 语言实现的 AI 应用开发框架,旨在简化 Java AI 应用程序开发,让 Java 开发者像使用 Spring 开发普通应用一样开发 AI 应用。Spring AI Alibaba 基于 Spring AI 开源项目构建,默认提供阿里云基础模型服务、开源及商业生态组件的集成与最佳实践。
核心能力如下:
开发复杂 AI 应用的高阶抽象 Fluent API -- ChatClient 提供多种大模型服务对接能力,包括主流开源与阿里云通义大模型服务(百炼)等 支持的模型类型包括聊天、文生图、音频转录、文生语音等 支持同步和流式 API,在保持应用层 API 不变的情况下支持灵活切换底层模型服务,支持特定模型的定制化能力(参数传递) 支持 Structured Output,即将 AI 模型输出映射到 POJOs 支持矢量数据库存储与检索 支持函数调用 Function Calling 支持构建 AI Agent 所需要的工具调用和对话内存记忆能力 支持 RAG 开发模式,包括离线文档处理如 DocumentReader、Splitter、Embedding、VectorStore 等,支持 Retrieve 检索
如果你的AI产品是 Java 技术栈,而且采用国内大模型的,尤其是使用阿里通义千问的,使用Spring AI Alibaba可以节省不少时间。
还可以看看风筝往期文章
古时的风筝,一个程序员,一个写作者。