即梦 AI 免费 API 服务 - 支持文生图、图生图、视频生成的 OpenAI 兼容接口
🎨 将即梦 AI 强大的图像和视频生成能力,通过 OpenAI 兼容接口开放给开发者
Jimeng AI Free API 是一个逆向工程的 API 服务器,将即梦 AI(Jimeng AI)的图像和视频生成能力封装为 OpenAI 兼容的 API 接口。支持最新的 jimeng-5.0、jimeng-4.6 文生图模型、Seedance 2.0 多模态智能视频生成(模型名 jimeng-video-seedance-2.0,支持图片/视频/音频混合上传)及 Seedance 2.0-fast 快速版(模型名 jimeng-video-seedance-2.0-fast),Seedance 2.0 Fast VIP Vision(极速推理,会员专属通道)和 Seedance 2.0 VIP Vision(主模态能力,会员专属通道),国际版普通视频生成(jimeng-video-3.0/3.0-pro/3.5-pro),零配置部署,多路 token 支持。
- 🖼️ 文生图:支持 jimeng-5.0、jimeng-4.6、jimeng-4.5 等多款模型,最高 4K 分辨率
- 🎭 图生图:多图合成,支持 1-10 张输入图片
- 🎬 视频生成:jimeng-video-3.5-pro 等模型,支持首帧/尾帧控制
- 🌊 Seedance 2.0 / 2.0-fast / 2.0-fast-vip / 2.0-vip:多模态智能视频生成,支持图片/视频/音频混合上传,@1、@2 占位符引用素材,fast 版本生成更快,VIP 版本为会员专属通道
- 🌍 国际版视频生成:支持国际区域 Token(sg-/it-/jp-/hk- 等前缀),纯算法签名绕过 shark 反爬,支持普通视频(jimeng-video-3.0/3.0-pro/3.5-pro)与 Seedance 的同步/异步生成,VIP 模型同样支持
- 🎯 国际版 VIP 无水印下载:VIP Token 自动获取无水印视频,权益 API 自动调用,水印状态自动检测
- 🔗 OpenAI 兼容:完全兼容 OpenAI API 格式,无缝对接现有客户端
- 🔄 多账号支持:支持多个 sessionid 轮询使用
| 技术 | 版本 | 用途 |
|---|---|---|
| Node.js | >=16.0.0 | 运行环境 |
| TypeScript | ^5.0.0 | 开发语言 |
| Koa | ^2.15.0 | Web 框架 |
| Playwright | ^1.49.0 | 浏览器代理(Seedance 反爬绕过) |
| Docker | latest | 容器化部署 |
| 功能名称 | 功能说明 | 模型 | 状态 |
|---|---|---|---|
| 文生图 | 根据文本描述生成图片 | jimeng-5.0, jimeng-4.6, jimeng-4.5, jimeng-4.1 等 | ✅ 可用 |
| 图生图 | 多图合成生成新图片 | jimeng-5.0, jimeng-4.6, jimeng-4.5 等 | ✅ 可用 |
| 文生视频 | 根据文本描述生成视频 | jimeng-video-3.5-pro 等 | ✅ 可用 |
| 图生视频 | 使用首帧/尾帧图片生成视频 | jimeng-video-3.0 等 | ✅ 可用 |
| 多图智能视频 | Seedance 2.0 多模态混合生成 | jimeng-video-seedance-2.0, seedance-2.0 | ✅ 可用 |
| 多图快速视频 | Seedance 2.0-fast 快速生成 | jimeng-video-seedance-2.0-fast, seedance-2.0-fast | ✅ 可用 |
| VIP 极速视频 | Seedance 2.0 Fast VIP Vision 极速推理 | jimeng-video-seedance-2.0-fast-vip, seedance-2.0-fast-vip | ✅ 可用 |
| VIP 专业视频 | Seedance 2.0 VIP Vision 主模态能力 | jimeng-video-seedance-2.0-vip, seedance-2.0-vip | ✅ 可用 |
| 音频驱动视频 | Seedance 图片+音频混合生成 | jimeng-video-seedance-2.0, seedance-2.0-fast | ✅ 可用 |
| 异步视频生成 | 提交任务立即返回,查询接口阻塞等待结果 | 所有视频模型 | ✅ 可用 |
| 国际版视频生成 | 国际区域 Token 纯算法签名绕过 shark | jimeng-video-3.0, jimeng-video-3.0-pro, jimeng-video-3.5-pro, seedance-2.0-fast, seedance-2.0-pro, seedance-2.0-fast-vip, seedance-2.0-vip | ✅ 可用 |
| 国际版异步视频 | 国际版普通视频 / Seedance 异步生成 | jimeng-video-3.0, jimeng-video-3.0-pro, jimeng-video-3.5-pro, seedance-2.0-fast, seedance-2.0-pro, seedance-2.0-fast-vip, seedance-2.0-vip | ✅ 可用 |
| 国际版 VIP 无水印 | VIP Token 自动获取无水印视频 URL | 所有国际版视频模型 | ✅ 可用 |
| Chat 接口 | OpenAI 兼容的对话接口 | 所有模型 | ✅ 可用 |
⚠️ 重要提示
逆向 API 是不稳定的,建议前往即梦 AI 官方 https://jimeng.jianying.com/ 体验功能,避免封禁的风险。
本组织和个人不接受任何资金捐助和交易,此项目是纯粹研究交流学习性质!
仅限自用,禁止对外提供服务或商用,避免对官方造成服务压力,否则风险自担!
- Node.js 16+
- npm 或 yarn
- Chromium 浏览器(Seedance 模型需要,通过 Playwright 自动管理)
- Docker(可选)
使用 Docker Hub 镜像:
# 拉取镜像
docker pull wwwzhouhui569/jimeng-free-api-all:latest
# 启动容器
docker run -it -d --init --name jimeng-free-api-all \
-p 8000:8000 \
-e TZ=Asia/Shanghai \
wwwzhouhui569/jimeng-free-api-all:latest从源码构建:
# 克隆项目
git clone https://github.com/wwwzhouhui/jimeng-free-api-all.git
# 进入目录
cd jimeng-free-api-all
# 构建镜像
docker build -t jimeng-free-api-all:latest .
# 启动容器
docker run -it -d --init --name jimeng-free-api-all \
-p 8000:8000 \
-e TZ=Asia/Shanghai \
jimeng-free-api-all:latest# 克隆项目
git clone https://github.com/wwwzhouhui/jimeng-free-api-all.git
# 进入目录
cd jimeng-free-api-all
# 安装依赖
npm install
# 安装 Chromium 浏览器(Seedance 模型需要)
npx playwright-core install chromium --with-deps
# 开发模式
npm run dev
# 生产模式
npm run build && npm start- 访问 即梦 AI 并登录账号
- 按 F12 打开开发者工具
- 进入 Application > Cookies
- 找到
sessionid的值
支持多个账号的 sessionid,使用逗号分隔:
Authorization: Bearer sessionid1,sessionid2,sessionid3
每次请求会从中随机选择一个使用。
| 端点 | 方法 | 说明 |
|---|---|---|
/v1/chat/completions |
POST | OpenAI 兼容的对话接口 |
/v1/images/generations |
POST | 文生图/图生图接口(支持 images 可选参数) |
/v1/images/compositions |
POST | 图生图接口(向后兼容) |
/v1/videos/generations |
POST | 视频生成接口(同步,阻塞等待结果,含 VIP 模型) |
/v1/videos/generations/async |
POST | 异步视频生成接口(提交任务,立即返回 task_id) |
/v1/videos/generations/async/:taskId |
GET | 异步视频生成接口(查询任务结果,阻塞等待) |
/v1/videos/international/generations |
POST | 国际版视频生成(普通视频 + Seedance,同步) |
/v1/videos/international/generations/async |
POST | 国际版视频生成(普通视频 + Seedance,异步提交任务) |
/v1/videos/international/generations/async/:taskId |
GET | 国际版视频生成(普通视频 + Seedance,异步查询结果) |
/v1/models |
GET | 获取模型列表 |
文生图示例:
curl -X POST http://localhost:8000/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your_sessionid" \
-d '{
"model": "jimeng-4.5",
"prompt": "美丽的日落风景,湖边的小屋",
"ratio": "16:9",
"resolution": "2k"
}'图生图示例(通过 images 参数):
curl -X POST http://localhost:8000/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your_sessionid" \
-d '{
"model": "jimeng-4.5",
"prompt": "将两张图融合成梦幻风格",
"images": [
"https://example.com/img1.jpg",
"https://example.com/img2.jpg"
],
"ratio": "1:1",
"resolution": "2k",
"sample_strength": 0.5
}'视频生成示例:
curl -X POST http://localhost:8000/v1/videos/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your_sessionid" \
-d '{
"model": "jimeng-video-3.5-pro",
"prompt": "一只可爱的小猫在草地上玩耍",
"ratio": "16:9",
"resolution": "720p",
"duration": 5
}'Seedance 2.0 多图视频示例:
curl -X POST http://localhost:8000/v1/videos/generations \
-H "Authorization: Bearer your_sessionid" \
-F "model=jimeng-video-seedance-2.0" \
-F "prompt=@1 和 @2 两人开始跳舞" \
-F "ratio=4:3" \
-F "duration=4" \
-F "files=@/path/to/image1.jpg" \
-F "files=@/path/to/image2.jpg"Seedance 2.0-fast 快速视频示例:
curl -X POST http://localhost:8000/v1/videos/generations \
-H "Authorization: Bearer your_sessionid" \
-F "model=jimeng-video-seedance-2.0-fast" \
-F "prompt=@1 图片中的人物开始微笑" \
-F "ratio=4:3" \
-F "duration=5" \
-F "files=@/path/to/image1.jpg"Seedance 图片+音频混合示例:
curl -X POST http://localhost:8000/v1/videos/generations \
-H "Authorization: Bearer your_sessionid" \
-F "model=jimeng-video-seedance-2.0-fast" \
-F "prompt=@1 图片中的人物随着音乐 @2 开始跳舞" \
-F "ratio=9:16" \
-F "duration=5" \
-F "files=@/path/to/image.png" \
-F "files=@/path/to/audio.wav"Seedance 2.0 Fast VIP 极速推理示例(会员专属通道):
curl -X POST http://localhost:8000/v1/videos/generations \
-H "Authorization: Bearer your_sessionid" \
-F "model=jimeng-video-seedance-2.0-fast-vip" \
-F "prompt=@1 图片中的人物开始微笑" \
-F "ratio=4:3" \
-F "duration=4" \
-F "files=@/path/to/image.jpg"Seedance 2.0 VIP 主模态能力示例(会员专属通道):
curl -X POST http://localhost:8000/v1/videos/generations \
-H "Authorization: Bearer your_sessionid" \
-F "model=jimeng-video-seedance-2.0-vip" \
-F "prompt=@1 和 @2 两人开始跳舞" \
-F "ratio=4:3" \
-F "duration=5" \
-F "files=@/path/to/image1.jpg" \
-F "files=@/path/to/image2.jpg"jimeng-free-api-all/
├── src/
│ ├── index.ts # 应用入口
│ ├── daemon.ts # 守护进程管理
│ ├── api/
│ │ ├── controllers/ # 业务逻辑控制器
│ │ │ ├── core.ts # 核心工具(Token处理等)
│ │ │ ├── images.ts # 图像生成逻辑
│ │ │ ├── videos.ts # 视频生成逻辑
│ │ │ └── chat.ts # 对话补全逻辑
│ │ ├── routes/ # API 路由定义
│ │ │ ├── index.ts # 路由聚合
│ │ │ ├── images.ts # /v1/images/* 端点
│ │ │ ├── videos.ts # /v1/videos/* 端点
│ │ │ ├── chat.ts # /v1/chat/* 端点
│ │ │ └── models.ts # /v1/models 端点
│ │ └── consts/ # API 常量和异常
│ └── lib/
│ ├── server.ts # Koa 服务器配置
│ ├── browser-service.ts # 浏览器代理服务(Seedance 反爬)
│ ├── config.ts # 配置管理
│ ├── logger.ts # 日志工具
│ ├── util.ts # 辅助工具
│ ├── request/ # 请求处理类
│ ├── response/ # 响应处理类
│ ├── exceptions/ # 异常类
│ └── configs/ # 配置模式
├── configs/ # 配置文件目录
├── scripts/ # 工具脚本目录
│ └── logout-sessions.py # 历史 Session 强制退出工具
├── doc/ # 文档资源
├── Dockerfile # Docker 构建文件
├── package.json # 项目配置
└── tsconfig.json # TypeScript 配置
| 用户模型名 | 内部模型名 | 说明 |
|---|---|---|
jimeng-5.0 |
high_aes_general_v50 |
5.0 正式版,最新模型 |
jimeng-4.6 |
high_aes_general_v42 |
最新模型,推荐使用 |
jimeng-4.5 |
high_aes_general_v40l |
高质量模型 |
jimeng-4.1 |
high_aes_general_v41 |
高质量模型 |
jimeng-4.0 |
high_aes_general_v40 |
稳定版本 |
jimeng-3.1 |
high_aes_general_v30l_art_fangzhou |
艺术风格 |
jimeng-3.0 |
high_aes_general_v30l |
通用模型 |
jimeng-2.1 |
- | 旧版模型 |
jimeng-2.0-pro |
- | 旧版专业模型 |
jimeng-2.0 |
- | 旧版模型 |
jimeng-1.4 |
- | 早期模型 |
jimeng-xl-pro |
- | XL 专业模型 |
| 用户模型名 | 内部模型名 | 说明 |
|---|---|---|
jimeng-video-3.5-pro |
dreamina_ic_generate_video_model_vgfm_3.5_pro |
最新视频模型 |
jimeng-video-3.0 |
dreamina_ic_generate_video_model_vgfm_3.0 |
视频生成 3.0 |
jimeng-video-3.0-pro |
dreamina_ic_generate_video_model_vgfm_3.0_pro |
视频生成 3.0 专业版 |
jimeng-video-seedance-2.0 |
dreamina_seedance_40_pro |
Seedance 2.0(上游标准名称,推荐) |
seedance-2.0 |
dreamina_seedance_40_pro |
Seedance 2.0(向后兼容别名) |
seedance-2.0-pro |
dreamina_seedance_40_pro |
Seedance 2.0(向后兼容别名) |
jimeng-video-seedance-2.0-fast |
dreamina_seedance_40 |
Seedance 2.0-fast 快速版(上游标准名称) |
seedance-2.0-fast |
dreamina_seedance_40 |
Seedance 2.0-fast 快速版(向后兼容别名) |
jimeng-video-seedance-2.0-fast-vip |
dreamina_seedance_40_vision |
Seedance 2.0 Fast VIP Vision 极速推理版(会员专属通道) |
seedance-2.0-fast-vip |
dreamina_seedance_40_vision |
Seedance 2.0 Fast VIP Vision(向后兼容别名) |
jimeng-video-seedance-2.0-vip |
dreamina_seedance_40_pro_vision |
Seedance 2.0 VIP Vision 主模态能力版(会员专属通道) |
seedance-2.0-vip |
dreamina_seedance_40_pro_vision |
Seedance 2.0 VIP Vision(向后兼容别名) |
| 分辨率 | 1:1 | 4:3 | 3:4 | 16:9 | 9:16 | 3:2 | 2:3 | 21:9 |
|---|---|---|---|---|---|---|---|---|
| 1k | 1024×1024 | 768×1024 | 1024×768 | 1024×576 | 576×1024 | 1024×682 | 682×1024 | 1195×512 |
| 2k | 2048×2048 | 2304×1728 | 1728×2304 | 2560×1440 | 1440×2560 | 2496×1664 | 1664×2496 | 3024×1296 |
| 4k | 4096×4096 | 4608×3456 | 3456×4608 | 5120×2880 | 2880×5120 | 4992×3328 | 3328×4992 | 6048×2592 |
| 分辨率 | 1:1 | 4:3 | 3:4 | 16:9 | 9:16 |
|---|---|---|---|---|---|
| 480p | 480×480 | 640×480 | 480×640 | 854×480 | 480×854 |
| 720p | 720×720 | 960×720 | 720×960 | 1280×720 | 720×1280 |
| 1080p | 1080×1080 | 1440×1080 | 1080×1440 | 1920×1080 | 1080×1920 |
POST /v1/images/generations
统一接口,支持文生图和图生图两种模式:
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | 否 | jimeng-4.5 | 模型名称 |
| prompt | string | 是 | - | 提示词,支持多图生成 |
| images | array | 否 | - | 图片URL数组(1-10张),提供则走图生图模式,不提供则走文生图模式 |
| negative_prompt | string | 否 | "" | 反向提示词 |
| ratio | string | 否 | 1:1 | 宽高比 |
| resolution | string | 否 | 2k | 分辨率:1k, 2k, 4k |
| sample_strength | number | 否 | 0.5 | 精细度 0-1 |
| response_format | string | 否 | url | url 或 b64_json |
说明:
- 当
images参数为空或不提供时,接口执行文生图功能 - 当
images参数提供(1-10张图片)时,接口执行图生图功能 - 支持
application/json(images 为 URL 数组)和multipart/form-data(通过 images 字段上传文件)两种请求格式 - 图生图模式下,响应会额外包含
input_images和composition_type字段
POST /v1/images/compositions
保留此接口以确保向后兼容,功能与 /v1/images/generations 提供 images 参数时相同。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | 否 | jimeng-4.5 | 模型名称 |
| prompt | string | 是 | - | 提示词 |
| images | array | 是 | - | 图片URL数组,1-10张 |
| ratio | string | 否 | 1:1 | 宽高比 |
| resolution | string | 否 | 2k | 分辨率 |
POST /v1/videos/generations
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | 否 | jimeng-video-3.0 | 模型名称 |
| prompt | string | 是 | - | 视频描述 |
| ratio | string | 否 | 1:1 | 宽高比 |
| resolution | string | 否 | 720p | 分辨率:480p, 720p, 1080p |
| duration | number | 否 | 5 | 时长:4-15 秒(Seedance)、5 或 10 秒(普通) |
| file_paths | array | 否 | [] | 首帧/尾帧图片URL |
由于即梦平台排队时间较长,同步接口可能阻塞等待 10-20 分钟。异步接口将提交和查询分离,避免长时间占用连接。
POST /v1/videos/generations/async
请求参数与同步接口 POST /v1/videos/generations 完全一致,但立即返回 task_id 而非等待视频生成完成。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | 否 | jimeng-video-3.0 | 模型名称 |
| prompt | string | 是 | - | 视频描述 |
| ratio | string | 否 | 1:1 | 宽高比 |
| resolution | string | 否 | 720p | 分辨率:480p, 720p, 1080p |
| duration | number | 否 | 5 | 时长:4-15 秒(Seedance)、5 或 10 秒(普通) |
| file_paths | array | 否 | [] | 首帧/尾帧/素材图片URL |
| files | file[] | 否 | - | 上传的素材文件(multipart) |
响应示例:
{
"created": 1774778941,
"task_id": "4f2acc30-2b57-11f1-9361-e959a88411c4",
"status": "processing",
"message": "任务已提交,请使用 GET /v1/videos/generations/async/{task_id} 查询结果"
}调用示例:
# 提交普通视频生成任务
curl -X POST http://localhost:8000/v1/videos/generations/async \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your_sessionid" \
-d '{
"model": "jimeng-video-3.5-pro",
"prompt": "一只小猫在草地上奔跑",
"ratio": "16:9",
"resolution": "720p",
"duration": 5
}'
# 提交 Seedance 异步任务(JSON + 图片URL)
curl -X POST http://localhost:8000/v1/videos/generations/async \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your_sessionid" \
-d '{
"model": "seedance-2.0-fast",
"prompt": "@1 图片中的人物开始微笑",
"ratio": "4:3",
"duration": 4,
"file_paths": ["https://example.com/image.jpg"]
}'
# 提交 Seedance 异步任务(multipart 文件上传)
curl -X POST http://localhost:8000/v1/videos/generations/async \
-H "Authorization: Bearer your_sessionid" \
-F "model=seedance-2.0" \
-F "prompt=@1 和 @2 两人开始跳舞" \
-F "ratio=4:3" \
-F "duration=4" \
-F "files=@/path/to/image1.jpg" \
-F "files=@/path/to/image2.jpg"GET /v1/videos/generations/async/:taskId
传入提交时返回的 task_id,服务端会阻塞等待视频生成完成后返回结果,无需客户端轮询。
成功响应:
{
"created": 1774778988,
"task_id": "4f2acc30-2b57-11f1-9361-e959a88411c4",
"status": "succeeded",
"data": [{
"url": "https://v3-dreamnia.jimeng.com/.../video.mp4",
"revised_prompt": "一只小猫在草地上奔跑"
}]
}失败响应:
{
"created": 1774778988,
"task_id": "4f2acc30-2b57-11f1-9361-e959a88411c4",
"status": "failed",
"error": "[API_IMAGE_GENERATION_FAILED] 视频生成超时"
}调用示例:
curl http://localhost:8000/v1/videos/generations/async/4f2acc30-2b57-11f1-9361-e959a88411c4 \
--header 'Authorization: Bearer your_sessionid'注意:
- 异步任务最多支持 10 个并发,超出限制时提交接口返回错误提示
- 任务数据持久化存储在
tmp/async-tasks/目录,进程重启不丢失- 程序启动时自动恢复未完成的 processing 任务并重新执行轮询
- 已完成任务 24 小时后自动过期清理
POST /v1/videos/generations
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| model | string | 是 | - | jimeng-video-seedance-2.0(推荐)、jimeng-video-seedance-2.0-fast(快速版)、jimeng-video-seedance-2.0-fast-vip(VIP 极速推理)、jimeng-video-seedance-2.0-vip(VIP 主模态)或 seedance-2.0 |
| prompt | string | 否 | - | 提示词,使用 @1、@2 引用素材(图片/视频/音频) |
| ratio | string | 否 | 4:3 | 宽高比 |
| duration | number | 否 | 4 | 视频时长 4-15 秒 |
| files | file[] | 是* | - | 上传的素材文件(图片/视频/音频,multipart) |
| file_paths | array | 是* | - | 素材URL数组(JSON) |
支持的素材类型:
- 图片:jpg, png, webp, gif, bmp
- 视频:mp4, mov, m4v
- 音频:mp3, wav
提示词占位符:
@1/@图1/@image1- 引用第一个素材@2/@图2/@image2- 引用第二个素材
国际版使用 CapCut/Dreamina 国际平台(mweb-api-sg.capcut.com),Token 使用区域前缀格式(如 sg-xxx、it-xxx),支持普通视频与 Seedance。
POST /v1/videos/international/generations
- 普通视频模型:
jimeng-video-3.0、jimeng-video-3.0-pro、jimeng-video-3.5-pro- 支持 JSON / multipart
duration仅支持5或10- 无素材时走文生视频;传
file_paths时可走首帧/尾帧图生视频
- Seedance 模型:
seedance-2.0-fast、seedance-2.0-pro、seedance-2.0-fast-vip、seedance-2.0-vip及对应jimeng-video-seedance-*名称duration支持4-15- 至少需要一个素材(keyed multipart 文件、keyed URL 字段或
file_paths/filePaths)
调用示例:
# 国际版普通视频同步生成(JSON)
curl -X POST http://localhost:8000/v1/videos/international/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sg-your_sessionid" \
-d '{
"model": "jimeng-video-3.0",
"prompt": "A cute cat walking slowly on grass, cinematic, natural motion",
"ratio": "16:9",
"resolution": "720p",
"duration": 5
}'
# 国际版 Seedance 同步生成(multipart 文件上传)
curl -X POST http://localhost:8000/v1/videos/international/generations \
-H "Authorization: Bearer sg-your_sessionid" \
-F "model=seedance-2.0-fast" \
-F "prompt=@1 中的人物开始微笑" \
-F "ratio=4:3" \
-F "duration=4" \
-F "image_file=@/path/to/image.jpg"
# 国际版 Seedance 同步生成(JSON + 图片URL)
curl -X POST http://localhost:8000/v1/videos/international/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sg-your_sessionid" \
-d '{
"model": "seedance-2.0-fast",
"prompt": "@1 中的人物开始微笑",
"ratio": "4:3",
"duration": 4,
"file_paths": ["https://example.com/image.jpg"]
}'
# 国际版 VIP 模型生成
curl -X POST http://localhost:8000/v1/videos/international/generations \
-H "Authorization: Bearer sg-your_sessionid" \
-F "model=seedance-2.0-fast-vip" \
-F "prompt=@1 中的人物开始微笑" \
-F "ratio=4:3" \
-F "duration=4" \
-F "image_file=@/path/to/image.jpg"POST /v1/videos/international/generations/async
请求参数与同步接口完全一致,但立即返回 task_id。
GET /v1/videos/international/generations/async/:taskId
查询异步任务结果,服务端阻塞等待视频生成完成后返回。
# 提交国际版异步任务
curl -X POST http://localhost:8000/v1/videos/international/generations/async \
-H "Authorization: Bearer sg-your_sessionid" \
-F "model=seedance-2.0-fast" \
-F "prompt=@1 中的人物开始微笑" \
-F "ratio=4:3" \
-F "duration=4" \
-F "image_file=@/path/to/image.jpg"
# 查询结果
curl http://localhost:8000/v1/videos/international/generations/async/{task_id}国际普通视频已实测通过:jimeng-video-3.0、jimeng-video-3.0-pro、jimeng-video-3.5-pro。
| 前缀 | 区域 | 前缀 | 区域 | 前缀 | 区域 | 前缀 | 区域 |
|---|---|---|---|---|---|---|---|
sg- |
新加坡 | hk- |
香港 | jp- |
日本 | it- |
意大利 |
al- |
阿尔巴尼亚 | az- |
阿塞拜疆 | bh- |
巴林 | ca- |
加拿大 |
cl- |
智利 | de- |
德国 | gb- |
英国 | gy- |
圭亚那 |
il- |
以色列 | iq- |
伊拉克 | jo- |
约旦 | kg- |
吉尔吉斯 |
om- |
阿曼 | pk- |
巴基斯坦 | pt- |
葡萄牙 | sa- |
沙特 |
se- |
瑞典 | tr- |
土耳其 | tz- |
坦桑尼亚 | uz- |
乌兹别克 |
ve- |
委内瑞拉 | xk- |
科索沃 |
注意: US Token(
us-前缀)暂不支持当前国际版视频接口。
国际版
部分地区积分政策可能不一样。目前Seedance 2.0-fast 接口首次有0积分
# 克隆项目
git clone https://github.com/wwwzhouhui/jimeng-free-api-all.git
cd jimeng-free-api-all
# 安装依赖
npm install
# 安装 Chromium 浏览器(首次开发需要)
npx playwright-core install chromium --with-deps
# 开发模式(热重载)
npm run dev# 构建生产版本
npm run build
# 启动生产服务
npm start即梦 AI 使用 ByteDance 账号体系,重新登录不会使历史 sessionid 失效(多设备并行机制)。当 sessionid 泄露、共享给他人或更换使用账号时,需要主动在服务器端将历史 session 强制注销。
项目提供了 scripts/logout-sessions.py 脚本,通过 Playwright headless 浏览器自动化模拟用户点击"退出登录"操作,使指定 sessionid 在即梦服务器端彻底失效。
退出原理:
注入 sessionid → 打开即梦主页 → 验证已登录
→ 点击左侧「设置」按钮 → 弹出下拉菜单 → 点击「退出」
→ 调用 /passport/web/logout/ 接口 → Session 服务器端销毁
# 安装 Python 依赖
pip install playwright
# 安装 Chromium 浏览器(首次使用)
playwright install chromium方式一:命令行传入 sessionid(推荐)
# 退出单个 sessionid
python3 scripts/logout-sessions.py 73795a52a17c7ee7e95c213a22135c96
# 批量退出多个 sessionid(空格分隔)
python3 scripts/logout-sessions.py \
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa \
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb \
cccccccccccccccccccccccccccccccc方式二:编辑脚本列表
打开 scripts/logout-sessions.py,在顶部的 SESSION_IDS 列表中填入需要注销的 sessionid:
SESSION_IDS = [
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
"cccccccccccccccccccccccccccccccc",
]然后直接运行:
python3 scripts/logout-sessions.py即梦 AI 历史 Session 强制退出工具
============================================================
共 3 个 sessionid 待处理
[1/3] 处理: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
→ ✅ 退出成功(服务器端已失效)
[2/3] 处理: bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
→ ✅ 退出成功(服务器端已失效)
[3/3] 处理: cccccccccccccccccccccccccccccccc
→ ⬜ 已失效,无需处理
============================================================
退出结果汇总:
============================================================
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa → ✅ 退出成功(服务器端已失效)
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb → ✅ 退出成功(服务器端已失效)
cccccccccccccccccccccccccccccccc → ⬜ 已失效,无需处理(无需处理)
✅ 成功退出:2 个
⬜ 已失效: 1 个(无需处理)
| 状态 | 含义 |
|---|---|
| ✅ 退出成功 | sessionid 已在服务器端销毁,不可再使用 |
| ⬜ 已失效 | sessionid 已自然过期,无需处理 |
| 请手动登录对应账号验证,或重试 | |
| ❌ 找不到退出按钮 | 即梦页面结构可能已变更,请反馈 Issue |
| ❌ 发生异常 | 网络问题或 Playwright 未正确安装 |
⚠️ 注意:退出操作不可逆,执行前请确认 sessionid 列表无误。
如何获取 sessionid?
- 访问 即梦 AI 并登录
- 按 F12 打开开发者工具
- 进入 Application > Cookies
- 复制
sessionid的值
sessionid 失效怎么办?
sessionid 有效期有限,失效后需要重新登录即梦网站获取新的 sessionid。建议配置多个账号以提高可用性。
sessionid 泄露了怎么强制注销?
使用项目提供的退出工具,可以在服务器端强制销毁历史 sessionid:
python3 scripts/logout-sessions.py <泄露的sessionid>详见 安全管理:强制退出历史 Session 章节。
如何配置多账号?
在 Authorization 头中使用逗号分隔多个 sessionid:
Authorization: Bearer sessionid1,sessionid2,sessionid3
Docker 容器无法启动?
- 检查端口 8000 是否被占用
- 确保 Docker 服务正在运行
- 查看容器日志:
docker logs jimeng-free-api-all
生成失败返回错误?
- 检查 sessionid 是否有效
- 确认账号积分是否充足
- 检查请求参数是否正确
- 查看服务器日志获取详细错误信息
Seedance 视频生成报 "shark not pass" 错误?
国内版(CN Token):v0.8.4 已通过 Playwright 浏览器代理解决。请确保:
- 已安装 Chromium 浏览器:
npx playwright-core install chromium --with-deps - Docker 用户请使用 v0.8.4 及以上版本的镜像,Dockerfile 已内置 Chromium 支持
- 首次 Seedance 请求会自动启动浏览器(约数秒),后续请求复用会话
国际版(国际 Token):v0.8.9 已通过纯算法签名(X-Bogus / X-Gnarly)绕过,无需安装 Chromium:
- 确保 Token 使用正确的区域前缀(如
sg-、it-、jp-) - 签名由
src/lib/x-bogus.ts和src/lib/x-gnarly.ts自动注入,无需额外配置 - US Token(
us-前缀)暂不支持当前国际版视频接口
- 🎯 国际版 VIP 无水印下载:VIP Token 自动获取无水印视频 URL,匹配真实浏览器下载流程
fetchHighQualityVideoUrl()新增权益 API 调用:benefit_metadata+batch_get_user_benefit- 自动检测并记录视频 URL 水印状态:
display_watermark_busi_aigc(免费/有水印)vsdisplay_watermark_aigc(VIP/无水印) - VIP 用户通过
get_local_item_list获取的签名 CDN URL 自动指向无水印视频文件
- 🔧 视频 URL 提取重构:
fetchHighQualityVideoUrl()从多路 early-return 改为统一变量 + 级联降级策略,支持提取后统一后处理 - 🔧 视频 URL 提取优先级优化:新增
common_attr.transcoded_video.origin.video_url作为最高优先级提取字段
- 🌍 国际版普通视频生成:国际版同步/异步接口新增支持普通视频模型(
jimeng-video-3.0、jimeng-video-3.0-pro、jimeng-video-3.5-pro),与 Seedance 统一入口- 新增
generateInternationalVideo/generateInternationalVideoCore函数 - 新增
INTERNATIONAL_VIDEO_MODEL_MAP和getVideoBenefitType函数 - 国际版普通视频 Draft 版本
3.3.12 - 支持首帧/尾帧图生视频(最多 2 张图片)
- 新增
- 🔧 图片上传逻辑重构:
images.ts中的uploadImageFromUrl和uploadImageBuffer改为复用videos.ts中的统一上传通道,消除重复代码- 国际版图片上传走
uploadInternationalImageUrl - 国内版图片上传走
uploadImageBufferForVideo
- 国际版图片上传走
- 🔧 区域感知 assistantId:图像生成使用
getImageAssistantId()根据区域返回正确的 aid 值 - 🗑️ 移除旧版视频模型:移除
jimeng-video-2.0和jimeng-video-2.0-pro(/v1/models和 MODEL_MAP 中均已移除) - 🔧 国际版视频参数优化:duration/ratio 默认值根据模型类型动态决定(Seedance: duration=4/ratio=4:3,普通视频: duration=5/ratio=1:1)
- 🐛 修复 core.ts checkResult:新增处理
ret === '' && errmsg === ''的空响应兼容
- ✨ 新增 Seedance 2.0 Fast VIP Vision 模型:极速推理版(
jimeng-video-seedance-2.0-fast-vip/seedance-2.0-fast-vip),内部模型dreamina_seedance_40_vision,VIP 会员专属通道,Draft 版本 3.3.12 - ✨ 新增 Seedance 2.0 VIP Vision 模型:主模态能力版(
jimeng-video-seedance-2.0-vip/seedance-2.0-vip),内部模型dreamina_seedance_40_pro_vision,VIP 会员专属通道,Draft 版本 3.3.12 - ✨ VIP 模型同步支持国内版和国际版:国内
/v1/videos/generations和国际版/v1/videos/international/generations均支持 4 个 VIP 模型 - 🔧 上传区域路由分离:新增
regionFetch()/cnFetch()函数,国内版上传直连(不走代理),国际版上传走代理,避免 CN 上传目标(imagex.bytedanceapi.com)因代理导致连接失败 - 🔧 生成请求参数增强:新增
commerce_with_input_video: "1"和workspace_id: 0参数,匹配即梦官网最新请求格式 - 📝 /v1/models 接口更新:新增 4 个 VIP 模型到模型列表接口
- 🌍 新增国际版视频生成接口:支持国际区域 Token(sg-/it-/jp-/hk- 等 26 个区域前缀),使用 CapCut/Dreamina 国际平台(
mweb-api-sg.capcut.com)POST /v1/videos/international/generations— 同步视频生成POST /v1/videos/international/generations/async— 异步视频生成(提交任务)GET /v1/videos/international/generations/async/:taskId— 异步视频生成(查询结果)
- 🔐 X-Bogus / X-Gnarly 纯算法签名:国际版视频链路无需 Playwright 浏览器代理,通过纯 TypeScript 算法绕过 shark 反爬
src/lib/x-bogus.ts:MD5 + RC4 + 自定义 Base64 编码签名(URL 查询参数)src/lib/x-gnarly.ts:ChaCha20 PRNG + 自定义 Base64 编码签名(HTTP 请求头)
- ✨ 国际版异步视频生成:与国内版异步接口完全对等的功能
- 并发控制(最多 10 个)、磁盘持久化(
tmp/async-tasks/)、服务重启自动恢复、24 小时过期清理 - 支持 on-demand 查询:超时任务保持 processing 状态,用户查询时即时检查平台最新状态
- 并发控制(最多 10 个)、磁盘持久化(
- ✨ 新增异步视频生成接口:解决即梦平台排队导致同步接口阻塞 20 分钟无法返回的问题
POST /v1/videos/generations/async— 提交视频生成任务,立即返回task_idGET /v1/videos/generations/async/:taskId— 查询任务结果,服务端阻塞等待视频生成完成后返回
- ✨ 支持所有视频模型:普通视频(jimeng-video-3.5-pro 等)和 Seedance 2.0/2.0-fast 均支持异步调用
- ✨ 并发控制:异步任务最多 10 个并发,超出时提交接口返回错误提示
- 💾 任务持久化:任务数据保存到
tmp/async-tasks/目录(JSON 文件),进程重启不丢失 - 🔄 启动恢复:程序启动时自动恢复未完成的
processing任务并重新执行轮询 - ⏱️ 24 小时过期:已完成/失败的任务 24 小时后自动清理
- 📝 别名路由自动可用:
/v1/video/generations/async同样可用
- 🔒 新增
scripts/logout-sessions.py:通过 Playwright headless 浏览器模拟点击退出操作,批量强制注销历史 sessionid - 🔒 退出原理:注入 sessionid → 打开即梦主页 → 点击「设置 → 退出」→ 调用
/passport/web/logout/接口 → 服务器端 Session 彻底销毁 - 📝 支持命令行传参:
python3 scripts/logout-sessions.py <sid1> [sid2] ...,或在脚本顶部填写SESSION_IDS列表批量处理 - 📝 状态检测:自动识别已失效的 sessionid 并跳过,退出后实时验证
window.__isLogined状态
- 🔄 模型更名
jimeng-5.0-preview→jimeng-5.0:即梦平台已将 5.0 预览版升级为正式版,移除-preview后缀 - 🔧 更新模型配置:同步更新
MODEL_MAP、MODEL_DRAFT_VERSIONS、MODEL_CONFIGS中的模型名映射 - 🔧 更新模型列表接口:
/v1/models返回的模型 ID 和描述信息同步更新
- ✨ Seedance 多模态素材上传:支持图片、视频、音频混合上传,通过 MIME 类型和文件扩展名自动检测素材类型
- ✨ VOD 上传通道:音频/视频文件通过 ByteDance VOD API 上传(
ApplyUploadInner→ Upload →CommitUploadInner),获取真实 VOD vid - ✨ 音频时长解析:VOD 服务自动解析音频时长,兜底支持 WAV 文件头解析
- 🔧 AWS 签名增强:
createSignature支持自定义region和service参数,支持 ImageX(imagex)和 VOD(vod)双通道签名 - 🔧 上传令牌分离:图片上传使用
scene: 2(ImageX),音频/视频上传使用scene: 1(VOD,spaceName=dreamina) - 📝 支持的素材格式:图片(jpg/png/webp/gif/bmp)、视频(mp4/mov/m4v)、音频(mp3/wav)
- 🐛 修复 Seedance 视频生成被 shark 安全中间件拦截:即梦对
/mweb/v1/aigc_draft/generate接口新增a_bogus签名校验,Node.js 直接请求返回ret=1019, "shark not pass" - ✨ 新增 BrowserService 浏览器代理服务:通过 Playwright 启动 headless Chromium,利用字节跳动
bdmsSDK 在浏览器中自动注入a_bogus签名 - 🔧 仅 Seedance generate 请求走浏览器代理:其他请求(图片生成、普通视频、上传、轮询、积分查询)不受影响,继续用 Node.js 直接请求
- ⚡ 懒启动与会话复用:首次 Seedance 请求才启动浏览器,每个 sessionId 独立会话,10 分钟空闲自动清理
- 🔧 资源优化:浏览器屏蔽图片/字体/CSS 等无关资源,仅加载 bdms SDK 相关脚本(白名单域名:vlabstatic.com、bytescm.com、jianying.com)
- 🐳 Docker 支持更新:Dockerfile 改用
node:lts(非 alpine),内置 Chromium 系统依赖和浏览器安装 - 📦 新增依赖:
playwright-core ^1.49.0
- 🐛 修复 fast 版 benefit_type 错误:
dreamina_video_seedance_20_fast→dreamina_seedance_20_fast(无video_前缀),解决credit prededuct failed错误 - 🔧 升级 Seedance Draft 版本:
3.3.8→3.3.9,与即梦官网保持一致 - 🔧 升级客户端版本号:
VERSION_CODE从5.8.0→8.4.0,Chrome UA更新至 132 - 🔧 补全请求头:新增
App-Sdk-Version、Lan、Loc头部,匹配即梦官网请求 - 🔧 修正 region 参数:
CN→cn(小写),与即梦官网一致 - 🔧 补全 image_info.aigc_image 字段:Seedance material_list 中的 image_info 新增
aigc_image对象
- ✨ 新增
jimeng-video-seedance-2.0-fast模型:Seedance 2.0 快速版,内部模型为dreamina_seedance_40,生成速度更快 - ✨ 新增
seedance-2.0-fast别名:向后兼容别名 - 🔧 新增 fast 版 benefit_type:
dreamina_video_seedance_20_fast,区分标准版与快速版 - 🔧 优化 Seedance 模型识别:
isSeedanceModel函数改用前缀匹配,自动兼容后续新增的 Seedance 变体
- 🔄 新增
jimeng-video-seedance-2.0模型名:原seedance-2.0、seedance-2.0-pro保留为向后兼容别名 - ⏱️ 扩展 Seedance 时长支持:从固定 4 秒扩展为 4-15 秒连续范围
- 🔧 更新 Draft 版本:Seedance 模型 Draft 版本从
3.3.9调整为3.3.8
- ✨ 新增 jimeng-5.0-preview 模型:即梦 AI 最新 5.0 预览版图像生成模型(内部模型
high_aes_general_v50),v0.8.6 已更名为jimeng-5.0 - ✨ 新增 jimeng-4.6 模型:即梦 AI 4.6 版图像生成模型(内部模型
high_aes_general_v42),支持文生图、图生图和多图生成 - ⚡ 升级 Draft 版本:jimeng-5.0-preview 和 jimeng-4.6 使用最新
3.3.9版本 - 🔧 扩展多图生成支持:多图检测正则匹配扩展至 jimeng-5.x 系列模型
- 🐛 修复视频返回低码率预览URL的问题:视频生成接口(含 Seedance 2.0)之前返回的是
vlabvod.com低码率预览URL(bitrate ~1152),现在通过get_local_item_listAPI 获取dreamnia.jimeng.com高码率下载URL(bitrate ~6297+) - 🐛 修复 Seedance 轮询响应解析失败:
get_history_by_idsAPI 返回数据以 historyId 为键(如result["8918159809292"]),而非result.history_list数组,导致轮询循环无法正确解析响应,视频生成后客户端请求无返回 - 🐛 修复普通视频轮询响应解析:
generateVideo函数增加result[historyId]回退解析,兼容 historyId 键值格式的API响应 - 🐛 修复 item_id 提取字段名:API 返回的视频项目 ID 位于
common_attr.id字段,补充该字段到提取链中
- ✨ 新增 Seedance 2.0 模型:支持多张图片混合生成视频
- ✨ 多图混合提示词:支持
@1、@2等占位符引用图片 - 🐛 修复 multipart 文件上传:优化 koa-body 配置
- 🔒 安全漏洞修复:升级依赖修复 19 个安全漏洞
- ⚡ 优化参数验证:
prompt参数改为可选
- ✨ 新增 jimeng-video-3.5-pro 模型
- ⚡ 升级 Draft 版本:使用
3.3.4版本 - 🔧 动态版本管理:根据模型自动选择 draft 版本
- 🔄 统一参数格式:使用
ratio和resolution替代width/height - 📤 支持 multipart/form-data:图生图和视频生成支持直接上传文件
- ⚡ 优化错误提示
- 🐛 修复积分扣费问题:优化请求参数实现免积分
- 🔧 更新浏览器指纹:Chrome 版本升级到 142
- 🐛 修复 jimeng-4.5 模型:修正模型映射名称
- ⬆️ 升级版本号:
DRAFT_VERSION升级到3.3.4 - ✨ 扩展分辨率支持:支持 1k/2k/4k 多种分辨率
欢迎加入技术交流群,分享使用心得:
- 微信: laohaibao2025
- 邮箱: 75271002@qq.com
如果这个项目对你有帮助,欢迎请我喝杯咖啡 ☕
微信支付
感谢以下项目的贡献:
如果觉得项目不错,欢迎点个 Star ⭐










