一、前言
1.1 AI 大模型背景
近几年,AI 大模型的发展迅速,成为全球科技竞争的新高地,具有极大的发展潜力和广泛的应用前景。中国在 AI 大模型领域的发展尤为显著,不仅在算力规模上与美国差距不大,而且在中文语料和文化理解方面具有天然优势。中国企业在大模型开发方面起步较晚,但发展迅速,涌现出如百度的 ERNIE、阿里巴巴的 M6 等代表性的大模型产品。
AI 大模型的应用场景广泛,包括但不限于自然语言处理、图像识别、语音识别、推荐系统、自动驾驶、游戏、科学研究等。随着技术的进步,AI 大模型正在不断推动人工智能技术的边界,为各行各业带来革命性的变化。
1.2 Spring AI 框架介绍
Spring AI 是 Spring 官方社区项目,旨在简化 Java AI 应用程序开发,让 Java 开发者像使用 Spring 开发普通应用一样开发 AI 应用。
Spring AI 项目从最初专注于处理语言输入和生成语言输出的模型开始,逐渐发展成为一个提供多种 AI 功能集成的框架。它提供了跨 AI 提供商的可移植 API 支持,包括聊天、文本到图像、嵌入模型等,并支持同步和流式 API 选项。
主要功能特点:
- 多模型支持:Spring AI 支持多种聊天模型,包括 Amazon Bedrock、Anthropic Claud、Azure Open AI 等。
- 矢量数据库集成:支持多种矢量数据库,如 Apache Cassandra、Elasticsearch、Milvus 等。
- Spring Boot 集成:提供 Spring Boot 自动配置和启动器,简化了 AI 模型和矢量存储的集成。
- ETL 框架:提供了数据工程的 ETL 框架,便于将文档传输到模型提供商,并存储在矢量数据库中。
- 函数调用:允许声明
java.util.Function实现,以供 OpenAI 模型在其提示响应中使用。
1.3 Spring Cloud Alibaba AI
Spring Cloud Alibaba AI 以 Spring AI 为基础,并在此基础上提供阿里云通义系列大模型全面适配,让用户能快速开发基于通义大模型的 Java AI 应用。
Spring Cloud Alibaba AI 目前基于 Spring AI 0.8.1 版本 API 完成通义系列大模型的接入。通义接入是基于阿里云灵积模型服务,灵积模型服务建立在'模型即服务'(Model-as-a-Service,MaaS)的理念基础之上,围绕 AI 各领域模型,通过标准化的 API 提供包括模型推理、模型微调训练在内的多种模型服务。
在当前最新版本中,Spring Cloud Alibaba AI 主要完成了几种常见生成式模型的适配,包括对话、文生图、文生语音等,开发者可以使用 Spring Cloud Alibaba AI 开发基于通义的聊天、图片或语音生成 AI 应用,框架还提供 OutParser、Prompt Template、Stuff 等实用能力。
二、项目环境准备
为了确保项目的顺利运行,需要准备好以下开发环境和资源:
- 开发工具:IntelliJ IDEA
- Java 环境:JDK 17 及以上版本
- 构建工具:Maven 3.6+
- 通义模型 Key:需要在阿里云控制台获取
2.1 获取通义 API Key 步骤
- 登录阿里云官网,开通通义千问相关服务。
- 进入模型服务灵积控制台,创建新的 API Key。
- 妥善保管生成的 Key,避免泄露。
三、项目开发
3.1 创建工程及配置
3.1.1 创建 Maven 工程
在 IntelliJ IDEA 中选择 File -> New -> Project -> Maven,设置 GroupId 和 ArtifactId,完成初始化。
3.1.2 添加依赖
在 pom.xml 文件中引入 Spring Cloud Alibaba AI 的依赖管理。
com.alibaba.cloud
spring-cloud-alibaba-dependencies
2023.0.1.0
pom
import
com.alibaba.cloud
spring-cloud-starter-alibaba-ai


