Jimeng AI Free 服务
本项目基于 LLM-Red-Team/jimeng-free-api 二次开发,感谢原作者的贡献!
更新日志
2026-09-27(v1.2.8)
- 新增浏览器传输层,默认开启(
auto):Seedance 2.0 / 2.0 Fast(上游dreamina_seedance_40_pro/dreamina_seedance_40)被上游风控中间件拦截(ret=4013,不消耗积分)时,服务会自动改用真实浏览器里的即梦页面完成签名后重试,对调用方无感知;其他模型与接口不受影响。实测同一账号同一请求:纯服务端返回4013,经浏览器传输后风控放行。详见「上游风控与浏览器传输」章节。 - 控制台新增「系统设置」页:可直接切换浏览器传输的工作模式(关闭 / 自动 / 全量),并显示依赖状态、浏览器运行状态与已记住的模型链路;保存后立即生效并在重启后保留,设置优先于环境变量。
- 风控错误码单独识别:上游
4013/1019不再被包装成笼统的「请求失败」,而是返回-2010 请求被上游风控拦截;未安装playwright-core或浏览器启动失败时保留该原始错误,不会抛出依赖报错。 - Docker 镜像预装 Chromium:镜像内已配好浏览器路径与
--no-sandbox参数,部署后即按默认的auto模式工作,无需额外配置;镜像因此增加约 805MB,可用--build-arg INSTALL_BROWSER=false构建精简版(精简版请配JIMENG_BROWSER_TRANSPORT=off)。
2026-09-25(v1.2.7)
- 修复生成张数与积分消耗不一致:将
n对应的gen_count放在即梦请求的abilities.gen_option中,文生图和参考图混合模式均适用,避免上游忽略张数并默认生成 4 张。 - 增加张数异常日志:当即梦实际返回的图片多于请求张数时记录警告,便于核对积分消耗。此前的
v1.2.6预构建镜像不包含上述修复,请更新到本版本并重新创建容器。
2026-09-02(v1.2.6)
- 支持多张图像参考图:
/v1/images/generations支持filePath数组、filePaths数组及 multipart 多文件上传;参考图按上传顺序传递给即梦,所有来源合计最多 10 张。 - 修复便携版账号池密钥:
portable/config/portable.env中的JIMENG_ACCOUNT_POOL_KEY或ACCOUNT_POOL_ENCRYPTION_KEY会在启动时传入服务进程,可正常配置账号池。 - 修复 Seedance 2.0 模型路由:普通
Seedance 2.0与2.0 Fast不再误用 VIP Vision 通道;VIP 模型改为显式的jimeng-video-seedance-2.0-vip和jimeng-video-seedance-2.0-fast-vip。 - 完善 Seedance 2.0 时长支持:2.0 系列默认生成 5 秒视频,支持 4~15 秒整数时长,并按模型能力做降级重试;日志会记录实际模型与计费类型。
- 图像生成数量可控:
n支持 1~8,默认 1 张,生成数量会透传至即梦并按请求数量返回。 - 升级运行时兼容性:项目与 Windows 便携包统一使用 Node.js 22+,匹配
better-sqlite313 的原生模块要求。
2026-08-09
- 新增 API Key 管理:管理端支持创建多个
jm_...调用 Key,并支持单独启用、禁用和撤销。 - 新增即梦账号池:支持保存多个即梦账号 Cookie,支持账号单独启停、轮询调用、失败冷却和状态刷新;Cookie 使用 AES-256-GCM 加密保存。
- 新增账号状态查询:增加
GET /v1/account/status,可查询当前账号会员状态、积分及免费积分余量,不暴露 Cookie。 - 修复视频参考图:修复参考图上传成功但未参与视频生成的问题,正确使用图生视频模式;同时兼容聊天多模态图片和 multipart 多文件上传。
- 模型自动适配:补充 Seedance 2.5 等新模型映射,优先使用即梦官网动态模型配置,并保留静态模型兜底。
- 管理端优化:管理网页面完成中文化和界面美化,优化账号池、Key 管理及状态展示。
- Docker 本地部署:完成 Docker 镜像构建和本地容器部署,保留数据目录及账号池加密密钥。
2026-06-24
- 适配即梦官网新图片模型:新增
jimeng-image-5.0-lite(high_aes_general_v50),并补充jimeng-image-4.7、jimeng-image-4.6;图片默认模型更新为 5.0 Lite,4.x/5.x 支持 2K 默认与 4K 请求。 - 补充 Seedance 视频模型接口:新增
jimeng-video-seedance-2.0-mini、jimeng-video-seedance-2.0-fast、jimeng-video-seedance-2.0-pro、jimeng-video-seedance-1.5-pro,并适配对应model_req_key、分辨率和权益benefit_type。 - 新增官网动态模型列表:
GET /v1/models在带Authorization时会实时拉取即梦官网图片/视频模型配置并缓存;支持?refresh=true强制刷新,支持?type=image/?type=video过滤;无 token 或官网失败时自动返回内置兜底模型。 - 生成接口接入动态模型映射:图片和视频生成会优先使用官网动态配置中的
model_req_key、分辨率和权益信息,静态映射继续作为兜底,减少官网新增模型后必须改代码的概率。 - 更新请求版本参数:图片与视频生成请求统一更新为
web_version=7.5.0、da_version=3.3.20,同步当前官网请求格式。 - 增强鲁棒性:优化
Authorization多 token 解析,自动 trim 并过滤空 token;聊天、图片、视频、积分查询路由会拒绝空 token;视频轮询兼容20/42/45处理中状态,避免死循环,并在生成结束但没有 URL 时明确抛错。 - 优化自动降级策略:图片/视频根据模型实际支持的分辨率做降级,避免对不支持的档位重复请求或意外从最高档开始消耗积分。
2026-01-11
- 🐛 修复混合模式模型选择问题:之前上传参考图时会强制使用 3.0 模型,现在支持所有模型的混合生成模式
- ✨ 新增 2.0-pro 模型支持:添加
jimeng-image-2.0-pro模型,强制使用 1k 分辨率 - 🔧 适配即梦官方 API 更新:统一所有模型的
metrics_extra请求格式,添加sceneOptions字段 - 📝 优化日志输出格式:使用 emoji 图标和结构化格式,日志更清晰易读
- 🐳 优化 Docker 镜像体积:从 ~700MB 优化至 ~280MB(多阶段构建、精简依赖)
⚠️ 已知问题:4.x 模型请求 2K 分辨率时,部分账号可能被即梦服务端拒绝(返回积分不足错误码 1006),系统会自动降级到 1K 分辨率。此问题可能与账号类型或即梦服务端策略相关,暂无法解决。
2026-01-06
- 🐛 修复 4.x 模型 2K 分辨率积分误报:完善
metrics_extra请求结构参数,添加sceneOptions、benefitCount等关键字段,解决 4.x 系列模型(4.0/4.1/4.5)请求 2K 分辨率时被错误降级到 1K 的问题
2026-01-04
- 🐛 修复积分不足误报:适配即梦官方 API 错误码变更(
5000→1006),现在能正确识别积分不足并自动降级到 1K 分辨率重试 - 🐛 修复图像自动降级:Chat 接口启用
generateImagesWithRetry,支持 2K→1K 自动降级 - 🐛 修复视频生成崩溃:修复多模态消息(图片+文本)导致的
content.substring is not a function错误
📖 项目简介
Jimeng AI Free 是一个强大的即梦(Jimeng)AI 接口服务,旨在提供便捷的图像和视频生成能力。
🚀 核心亮点:
- 超强模型支持:集成图像模型(5.0 Lite/4.7/4.6/4.5/4.1/4.0/3.1/3.0/2.0 Pro)和视频模型(Seedance 2.0 Mini/Fast/Pro、Seedance 1.5 Pro、3.0 Pro/3.0/3.0 Fast/S2.0/2.0 Pro),并支持自动同步即梦官网最新模型列表。
- 完全免费体验:目前官方每日赠送 66 积分,支持多路 Token 轮询,最大化利用免费额度。
- 可视化管理:内置功能强大的 Web 管理控制台,支持实时监控和媒体管理。
- OpenAI 兼容:完全兼容 OpenAI 接口格式,可直接接入大多数现有 AI 应用。
- 零配置部署:通过 Docker 一键启动,开箱即用。
🎛️ 管理控制台(重点功能)
本项目提供了功能完善的 Web 管理控制台,为您提供全方位的服务监控和管理能力。
📊 界面预览



🔐 安全登录
首次访问设置管理员密码
📈 实时统计
调用次数、积分追踪、Key状态
🎬 媒体库
生成历史、实时预览、筛选
✨ 功能特点
| 功能模块 | 说明 |
|---|---|
| 📊 统计分析 | 实时大屏显示总调用量、总积分消耗。详细记录每个 API Key 的剩余积分和最后使用时间,支持按模型统计用量。 |
| 📝 实时日志 | 实时查看系统运行日志,支持按 INFO / WARN / ERROR 级别筛选,支持自动刷新和一键清理/导出日志文件。 |
| 🖼️ 媒体回溯 | 所有生成的图片和视频都会自动记录在媒体库中,支持按类型(图片/视频)筛选,点击即可预览高清原图或播放视频。 |
| 💳 积分追踪 | [NEW] 每次请求自动计算并记录消耗积分,实时更新 Token 的剩余积分,精准掌握额度使用情况。 |
| ⚙️ 系统设置 | [NEW] 在控制台切换浏览器传输的工作模式(关闭 / 自动 / 全量),用于应对上游风控拦截,保存后立即生效并在重启后保留。 |
🚀 访问地址
部署成功后,访问:http://localhost:8001(默认端口)即可进入管理控制台。
✨ 功能特性
🎨 图像与视频生成
- 多模型支持:涵盖即梦官网最新发布的所有视频和图像模型。
- 混合生成:支持参考图生成(Image-to-Image),通过
filePath参数传递。 - 视频定制:支持设置视频首尾帧(Image-to-Video),通过
file_paths参数传递。 - 智能分辨率:4.x 图像模型默认 2K 高清,3.x 模型默认 1K。
- 智能时长:提示词包含
5秒或10秒关键词时,自动调整视频生成时长。
📐 智能比例检测
系统会自动识别提示词中的比例关键词,并调整生成尺寸:
- 图片支持:
21:9、16:9、3:2、4:3、1:1、3:4、2:3、9:16 - 视频支持:
16:9、9:16、1:1、4:3、3:4、21:9 - 中文关键词:支持
横屏、竖屏、方形等自然语言指令。
🤖 开发友好
- 标准化接口:
/v1/chat/completions接口完全兼容 OpenAI 规范。 - 多模态消息:支持标准的多模态消息格式,自动提取消息中的图片作为参考图或首尾帧。
🛠️ Docker 部署
使用预构建镜像一键启动:
docker run -it -d --init --name jimeng-free-api \
-p 8001:8000 \
-v jimeng-data:/app/data \
-e TZ=Asia/Shanghai \
ghcr.io/zhizinan1997/jimeng-free-api-all:latest
参数说明:
-p 8001:8000:可以修改冒号前的端口(如-p 8080:8000)。-v jimeng-data:/app/data:强烈建议挂载,用于持久化保存统计数据、媒体记录和管理员密码。-e TZ=Asia/Shanghai:设置时区,确保日志和统计时间准确。
已有部署更新时,先执行 docker pull ghcr.io/zhizinan1997/jimeng-free-api-all:latest,再用原有端口、数据卷及账号池加密密钥重新创建容器;仅重启旧容器不会更新代码。启动日志应显示 Version: 1.2.8。
📦 本地开发部署
如果您希望在本地运行或进行二次开发,请按照以下步骤操作:
1. 克隆仓库
git clone https://github.com/zhizinan1997/jimeng-free-api-all.git
cd jimeng-free-api-all
2. 安装依赖
需要 Node.js 22 或更高版本:
npm install
3. 构建项目
npm run build
4. 启动服务
npm start
启动成功后,服务将在 http://localhost:8000 运行。
🧩 支持的模型列表
🖼️ 图像生成
| 模型名称 | 说明 | 分辨率 |
|---|---|---|
jimeng-image-5.0-lite |
即梦 5.0 Lite 版本(最新) | 2K (默认) / 4K |
jimeng-image-4.7 |
即梦 4.7 版本 | 2K (默认) / 4K |
jimeng-image-4.6 |
即梦 4.6 版本 | 2K (默认) / 4K |
jimeng-image-4.5 |
即梦 4.5 版本 | 2K (默认) / 4K |
jimeng-image-4.1 |
即梦 4.1 版本 | 2K (默认) / 4K |
jimeng-image-4.0 |
即梦 4.0 版本 | 2K (默认) / 4K |
jimeng-image-3.1 |
即梦 3.1 版本 | 1K (默认) |
jimeng-image-3.0 |
即梦 3.0 版本 | 1K (默认) |
jimeng-image-2.0-pro |
即梦 2.0 Pro 版本 | 仅支持 1K |
🎥 视频生成
| 模型名称 | 说明 | 支持时长 |
|---|---|---|
jimeng-video-seedance-2.0-mini |
Seedance 2.0 Mini | 5s / 10s |
jimeng-video-seedance-2.0-fast |
Seedance 2.0 Fast VIP | 5s / 10s |
jimeng-video-seedance-2.0-pro |
Seedance 2.0 VIP | 5s / 10s |
jimeng-video-seedance-1.5-pro |
Seedance 1.5 Pro | 5s / 10s |
jimeng-video-3.0-pro |
3.0 Pro 专业版 | 5s / 10s |
jimeng-video-3.0 |
3.0 标准版 | 5s / 10s |
jimeng-video-3.0-fast |
3.0 快速版 | 5s / 10s |
jimeng-video-s2.0 |
S2.0 轻量版 | 5s |
jimeng-video-2.0-pro |
2.0 Pro 版 | 5s |
🔑 接入指南
1. 获取 Session ID
- 访问 即梦官网 并登录。
- 按
F12打开开发者工具,进入Application>Cookies。 - 找到
sessionid的值。
2. 配置 Authorization
在请求 Header 中使用 Bearer Token 方式鉴权:
Authorization: Bearer sessionid_value
多账号支持: 如果有多个账号,可以用逗号分隔多个 sessionid,服务会自动轮询使用:
Authorization: Bearer sessionid_1,sessionid_2,sessionid_3
📝 API 接口文档
1. 对话补全 (生成图像/视频)
POST /v1/chat/completions
简单示例
{
"model": "jimeng-4.5",
"messages": [
{
"role": "user",
"content": "一只在太空中飞行的柴犬,赛博朋克风格"
}
]
}
多模态示例 (带参考图)
{
"model": "jimeng-4.5",
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "将这张图变成梵高风格" },
{
"type": "image_url",
"image_url": { "url": "https://example.com/image.jpg" }
}
]
}
]
}
2. 获取模型列表
GET /v1/models
返回所有可用模型及其配置信息。
默认返回内置兜底模型列表;如果请求带有即梦 Authorization,服务会实时拉取官网图片/视频模型配置并缓存结果。可使用 ?refresh=true 强制刷新缓存,使用 ?type=image 或 ?type=video 只返回指定类型模型。
🛡️ 上游风控与浏览器传输
即梦对部分视频链路启用了风控中间件(starling),要求请求携带浏览器端 SDK 生成的 msToken 与 a_bogus 签名。实测:Seedance 2.0 与 2.0 Fast(上游 dreamina_seedance_40_pro / dreamina_seedance_40)在纯服务端请求下会返回 HTTP 200 + ret=4013(fail_starling_key=web_risk_control_message_reject_generation,提示「生成失败,疑似存在异常行为」),且不消耗积分;同一账号同一时刻下 -mini、1.5、3.0 系列不受影响,说明这不是账号或参数问题,而是这两条链路专属的签名校验。
本服务的浏览器传输层会把这类请求交给真实浏览器里打开的即梦页面执行,由页面自身的 SDK 完成签名,并自动带上浏览器环境下的设备 cookie。签名算法无需自行实现,上游更新页面脚本时也能自动跟随。
工作模式
默认 auto:请求先按原有方式直连,只有被上游风控拦截(ret=4013)时才自动改用浏览器重试一次,并把该模型链路记入内存缓存,后续请求直接走浏览器;其他模型与接口完全不受影响。
| 模式 | 行为 |
|---|---|
off |
关闭,完全走服务端请求 |
auto |
默认。仅在被风控拦截时改用浏览器,成功后记住该链路 |
always |
所有即梦请求都经浏览器发送,兼容性最好、延迟略高 |
开启方式
auto 是默认值,无需任何配置;本机安装 Chrome 或 Edge 即可。可选依赖不随主依赖强制安装:
npm i playwright-core
也可以在控制台「系统设置」页直接切换模式(保存后立即生效、重启后保留),该设置优先于环境变量:
# 关闭浏览器传输
JIMENG_BROWSER_TRANSPORT=off npm start
# 所有即梦接口都走浏览器
JIMENG_BROWSER_TRANSPORT=always npm start
控制台设置 > 环境变量 > 默认值。若未安装 playwright-core 或本机没有浏览器,被风控拦截时只会记录日志并保留原始的风控错误,不会影响其他请求。
环境变量
| 变量 | 默认值 | 说明 |
|---|---|---|
JIMENG_BROWSER_TRANSPORT |
auto |
off 关闭,auto 风控拦截时启用,always 全部走浏览器(控制台设置优先于此变量) |
JIMENG_BROWSER_HEADLESS |
true |
设为 false 可看到浏览器窗口,便于排查 |
JIMENG_BROWSER_CHANNEL |
自动 | chrome / msedge 等,默认先试 Chrome 再回退 Edge |
JIMENG_BROWSER_EXECUTABLE |
无 | 直接指定浏览器可执行文件路径(Docker 内常用) |
JIMENG_BROWSER_ARGS |
无 | 追加启动参数,逗号分隔,例如 --no-sandbox,--disable-dev-shm-usage |
JIMENG_BROWSER_PAGE_URL |
即梦视频生成页 | 用于装载签名的页面地址 |
JIMENG_BROWSER_IDLE_TIMEOUT |
300000 |
空闲多少毫秒后关闭浏览器 |
JIMENG_BROWSER_REQUEST_TIMEOUT |
60000 |
单次请求超时(毫秒) |
JIMENG_BROWSER_NAVIGATION_TIMEOUT |
90000 |
页面加载超时(毫秒) |
JIMENG_BROWSER_USER_AGENT |
内置 Chrome UA | 可覆盖浏览器 UA |
Docker 部署
官方镜像已预装 Chromium 并配好路径与启动参数,部署后即按默认的 auto 模式工作,无需任何额外配置:
docker run -it -d --init --name jimeng-free-api \
-p 8001:8000 \
-v jimeng-data:/app/data \
-e TZ=Asia/Shanghai \
ghcr.io/zhizinan1997/jimeng-free-api-all:latest
预装 Chromium 会让镜像增加约 805MB。不需要该能力时可自行构建精简镜像(此时请一并用环境变量关闭浏览器传输,避免多余的启动尝试):
docker build --build-arg INSTALL_BROWSER=false -t jimeng-free-api:lean .
docker run -it -d -p 8001:8000 -e JIMENG_BROWSER_TRANSPORT=off jimeng-free-api:lean
注意事项
- 该模式让请求以浏览器身份发出,属于绕过上游风控,可能违反即梦服务条款,账号存在被限制的风险,请自行评估后使用。
- 浏览器传输只解决「风控拦截」,不解决「积分不足」:这两条链路本身要消耗积分,余额不足时上游返回
1006(服务返回-2009),需账号自行充值。 - 浏览器按需启动、空闲自动关闭;首次启用约需十几秒装载页面,之后单次请求约 1 秒内。
auto模式下,被风控拦截的模型链路会被记住(按「接口路径 + 上游模型」区分,图片模型不受视频触发的影响),后续请求直接走浏览器;该记录在进程内存中,重启后需重新预热一次。- 开启后
ret=4013的模型链路会转为浏览器传输,若仍返回风控错误,请检查页面地址与登录状态是否正常。
⚠️ 免责声明
- 服务稳定性:本项目基于逆向 API 开发,不保证永久可用。建议优先使用 即梦官方服务。
- 非盈利性质:本项目仅供个人研究交流学习,不接受任何形式的捐助,不用于商业用途。
- 使用规范:请遵守相关法律法规,禁止生成违规内容。任何因使用本项目产生的后果由使用者自行承担。
Released under the MIT License.
Managed API Keys and account pool
The dashboard can create multiple jm_... API keys. Only a SHA-256 hash and a masked preview are stored. Keys can be enabled, disabled, or revoked independently from the dashboard.
The account pool is available through /account-pool. It stores multiple Jimeng cookies encrypted with AES-256-GCM, supports account enable/disable, round-robin selection, failure cooldowns, and status refresh. Set JIMENG_ACCOUNT_POOL_KEY (or ACCOUNT_POOL_ENCRYPTION_KEY) before adding accounts; keep it stable across restarts.
When a managed API key is sent in Authorization: Bearer jm_..., the service selects an enabled Jimeng account automatically. Direct Jimeng session tokens remain supported for backward compatibility.
GET /v1/account/status returns the selected account's cached/refreshed membership and credit status without exposing its cookie.