Spring AI Alibaba Video 示例
Spring AI Alibaba Video 示例
此文章中将介绍 Spring AI Alibaba Video 的接入原理和使用 Demo。
1. 阿里云 Video 模型
官网地址:https://help.aliyun.com/zh/model-studio/video-generation-api
Video 模型支持文生视频,基于首尾帧和通用视频剪辑等功能,同属于 WANX 系列模型。
2. Spring AI Alibaba 功能
Spring AI Alibaba 目前支持 Chat,Image,Audio 和 多模态。在最近开发版本中加入了 Video 的支持。
目前仅支持 文生视频和基于首尾帧生成。
3. Video 接入原理
Spring AI Alibaba 使用 HTTP 方式,通过 Spring AI 提供的模型基础抽象来接入 Video 模型。因此在使用方式上和 Chat,Image 等一致。
4. Example
Example 工程地址:https://github.com/springaialibaba/spring-ai-alibaba-examples/tree/main/spring-ai-alibaba-video-example
4.1 工程创建
Tips: 因为包含 Video 的 SAA 版本尚未发布,因此需要安装到本地 mvn 仓库在使用!
安装完成 core 模块之后,在项目的工程中引入 spring-ai-alibaba-starter-dashscope
开发版本:
<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>3.4.5</version></dependency><dependency><groupId>com.alibaba.cloud.ai</groupId><artifactId>spring-ai-alibaba-starter-dashscope</artifactId><version>1.0.0.3-SNAPSHOT</version></dependency>
</dependencies>
之后创建控制器:
@RequestMapping
@RestController
public class VideoExampleController {private final VideoModel videoModel;public VideoExampleController(VideoModel videoModel) {this.videoModel = videoModel;}@GetMapping("/gen")public String gen() {return videoModel.call(new VideoPrompt("生成一个程序员深夜敲代码的视频,时而深思,时而敲击键盘,时而看向窗外.")).getResult().getOutput().getVideoUrl();}
}
之后补充一个 Spring App 的主类即可。
不需要在 application.yml 中显式配置 apiKey,所有关于初始化的一切操作都会在 starter 中完成!
4.2 请求访问
项目启动之后,使用 curl 127.0.0.1:8080/gen
请求接口,稍等一会,即可看到视频地址,下载即可。
Tips: 返回的视频 url 只在半个小时内有效,如果需要保存,需要及时下载!
如果此时控制台出现如下错误,不要担心,是因为 DashScope 平台正在处理任务,此时的任务状态为 pending
:
java.lang.RuntimeException: Video generation still pending, retry ...
如果一切顺利,将看到如下输出:
$ curl 127.0.0.1:8080/genhttps://dashscope-result-wlcb-acdr-1.oss-cn-wulanchabu-acdr-1.aliyuncs.com/1d/aa/20250726/ad0627fd/4dbc038a-5b19-4a0a-a827-905ccb841cfb.mp4?Expires=1753596276&OSSAccessKeyId=LTAI5tKPD3TMqf2Lna1fASuh&Signature=rHY4nP0Jm%2B50bN60Z6S4zrLVcn4%3D
点击下载,即可看到视频内容:
5. 参考
- DashScope apiKey 获取:https://help.aliyun.com/zh/model-studio/get-api-key
- 阿里云视频生成模型:https://help.aliyun.com/zh/model-studio/video-generation-api
- Spring AI Alibaba 介绍:https://java2ai.com/docs/1.0.0.2/overview/
- Spring AI Alibaba Example 仓库:https://github.com/springaialibaba/spring-ai-alibaba-examples