大家好,我是R哥。
最近,阿里巴巴又开源了一款新项目——Spring AI Alibaba Admin,这是一款面向生产级场景的一体化 AI Agent 应用研发治理平台,解决了企业级 AI Agent 在开发与运维过程中面临的工程化难题。
项目地址:
https://github.com/spring-ai-alibaba/spring-ai-alibaba-admin
Spring AI Alibaba Admin 支持从 Prompt 工程、数据集管理、评估器配置到实验执行和结果分析的完整工作流,帮助用户快速构建、测试和优化 AI Agent 应用。
系统架构图如下:
Spring AI Alibaba Admin 项目是基于 Spring AI Alibaba 开发的 Agents 应用的,可以对 AI Agent 应用进行 Tracing、Prompt Engineering 和评估的一个可视化控制台。
核心功能
1、Prompt 管理
- Prompt 模板管理: 创建、更新、删除 Prompt 模板
- 版本控制: 支持 Prompt 版本管理和历史追踪
- 实时调试: 提供 Prompt 在线调试和流式响应
- 会话管理: 支持多轮对话会话管理
2、数据集管理
- 数据集创建: 支持多种格式的数据集导入和创建
- 版本管理: 数据集版本控制和历史管理
- 数据项管理: 细粒度的数据项增删改查
- 从链路追踪创建: 支持从 OpenTelemetry 链路数据创建数据集
3、评估器管理
- 评估器配置: 支持多种评估器的创建和配置
- 模板系统: 提供评估器模板和自定义评估逻辑
- 调试功能: 支持评估器在线调试和测试
- 版本管理: 评估器版本控制和发布管理
4、实验管理
- 实验执行: 自动化执行评估实验
- 结果分析: 详细的实验结果分析和统计
- 实验控制: 支持实验的启动、停止、重启和删除
- 批量处理: 支持批量实验执行和结果对比
5、可观测性
- 链路追踪: 集成 OpenTelemetry 提供完整的链路追踪
- 服务监控: 支持服务列表和概览统计
- Trace 分析: 提供详细的 Trace 详情和 Span 分析
6、模型配置
- 多模型支持: 支持 OpenAI、DashScope、DeepSeek 主流 AI 模型
- 配置管理: 模型参数的统一配置和管理
- 动态切换: 支持运行时模型配置的动态更新
快速开始
环境要求:
- Docker(用于容器化部署) + Docker Compose 2.0+
- Java 17+(用于源码运行)
- Maven 3.8+
- AI 模型提供商 API 密钥,支持:OpenAI、DashScope、DeepSeek
1、克隆项目
git clone https://github.com/spring-ai-alibaba/spring-ai-alibaba-admin.git
cd admin
2、配置 API 密钥
如果你使用的是 OpenAI、DeepSeek、DashScope 这几个大模型,官方提供了参考模板:
根据你要用的模型供应商,修改 spring-ai-alibaba-admin-server/model-config.yaml
配置文件中的的模型配置即可。
这里我以 DeepSeek 为例:
models:
- id: 1
name: deepseek
provider: deepseek
modelName: deepseek-chat
apiKey: ${DEEPSEEK_API_KEY}
status: 1
defaultParameters:
temperature: 0.7
maxTokens: 4096
supportedParameters:
- name: temperature
type: number
minValue: 0
maxValue: 2
defaultValue: 0.7
required: false
description: 采样温度
- name: maxTokens
type: number
minValue: 1
maxValue: 4096
defaultValue: 1024
required: false
description: 最大输出token
配置中需要替换 ${DEEPSEEK_API_KEY}
,可以从 DeepSeek 官方获取。
3、自定义配置(可选)
默认 Nacos 地址为 127.0.0.1:8848
,如果你需要修改 Nacos 地址,请修改 spring-ai-alibaba-admin-server/src/main/resources/application.yml
文件中的配置:
nacos:
server-addr: ${nacos-address}
包括连接的数据源配置等,都在这个文件中修改。
4、启动应用
在根目录下执行启动脚本启动好数据库相关的服务:
sh start.sh
如何是第一次启动会拉取 Docker 相关镜像,所以会比较慢。
然后在 spring-ai-alibaba-admin-server
目录下启动应用程序:
mvn spring-boot:run
Spring Boot 基础就不介绍了,推荐看这个实战项目:
5、访问应用
打开浏览器,访问 http//localhost8080
即可使用 Spring AI Alibaba Admin 平台,可以在平台中对 Prompt 进行管理、调试、评估、可观测等操作。
预览如下:
6. 连接 AI Agent 应用(可选)
如果你想处 Spring AI Alibaba Agent 应用能够集成 Nacos 以实现 Prompt 加载以及动态更新,并且观测线上的运行情况,可以参考下面的配置 AI Agent 应用。
在 Spring AI Alibaba Agent 应用中引入如下依赖:
<dependencies>
<!-- 引入spring ai alibaba agent nacos代理模块 -->
<dependency>
<groupId>com.alibaba.cloud.ai</groupId>
<artifactId>spring-ai-alibaba-agent-nacos</artifactId>
<version>{spring.ai.alibaba.version}</version>
</dependency>
<!-- 引入可观测模块 -->
<dependency>
<groupId>com.alibaba.cloud.ai</groupId>
<artifactId>spring-ai-alibaba-autoconfigure-arms-observation</artifactId>
<version>{spring.ai.alibaba.version}</version>
</dependency>
<!-- 用于实现各种 OTel 相关组件,如 Tracer、Exporter 的自动装载 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- 用于将 micrometer 产生的指标数据对接到 otlp 格式 -->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-otlp</artifactId>
</dependency>
<!-- 用于将 micrometer 底层的链路追踪 tracer 替换为 OTel tracer -->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-tracing-bridge-otel</artifactId>
</dependency>
<!-- 用于将 OTel tracer 产生的 span 按照 otlp 协议进行上报 -->
<dependency>
<groupId>io.opentelemetry</groupId>
<artifactId>opentelemetry-exporter-otlp</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-autoconfigure-model-tool</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
指定 Nacos 地址及 PromptKey:
spring.ai.alibaba.agent.proxy.nacos.serverAddr={替换 nacos address, 示例:127.0.0.1:8848}
spring.ai.alibaba.agent.proxy.nacos.username={替换 nacos 用户名, 示例:nacos}
spring.ai.alibaba.agent.proxy.nacos.password={替换 nacos 密码, 示例:nacos}
spring.ai.alibaba.agent.proxy.nacos.promptKey={替换为promptKey,示例:mse-nacos-helper }
设置可观测参数:
management.otlp.tracing.export.enabled=true
management.tracing.sampling.probability=1.0
management.otlp.tracing.endpoint=http://{admin address}:4318/v1/traces
management.otlp.metrics.export.enabled=false
management.otlp.logging.export.enabled=false
management.opentelemetry.resource-attributes.service.name=agent-nacos-prompt-test
management.opentelemetry.resource-attributes.service.version=1.0
spring.ai.chat.client.observations.log-prompt=true
spring.ai.chat.observations.log-prompt=true
spring.ai.chat.observations.log-completion=true
spring.ai.image.observations.log-prompt=true
spring.ai.vectorstore.observations.log-query-response=true
spring.ai.alibaba.arms.enabled=true
spring.ai.alibaba.arms.tool.enabled=true
spring.ai.alibaba.arms.model.capture-input=true
spring.ai.alibaba.arms.model.capture-output=true
总结
Spring AI Alibaba Admin 的推出,很多操作都能在一个统一的可视化环境中完成,它让开发者能像部署普通业务服务一样部署和监控 AI Agent,实现模型可控、Prompt 可追踪、结果可复现,大大降低了 AI 工程团队的协作成本。
总的来说,Spring AI Alibaba Admin 不仅仅是一个管理后台,而是一个贯穿 Prompt 设计、数据集构建、评估体系、实验分析、可观测性与模型治理 的完整闭环平台。
更重要的是,Spring AI Alibaba Admin 基于 Spring 生态,与 Spring Cloud 微服务体系、Nacos 完美结合,天然契合企业级生产环境。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。