<!-- Canonical URL: https://ask.atlascloud.ai/zh/automate-ai-image-video-generation-n8n-atlas-cloud -->

# 如何在 n8n 中自动生成 AI 图片和视频？

> 通过 Atlas Cloud 社区节点或 HTTP Request 提交媒体任务、保存 prediction ID，并异步收集输出。把提交、状态查询、验证与交付拆开，流程才能安全恢复和扩展。

在 n8n 中可靠自动化 AI 媒体的方式是：把每次生成作为异步任务提交，保存任务 ID，并在任务完成后再取得输出。Atlas Cloud 社区节点可以处理常用操作；对于新模型和高级参数，则可使用 n8n 自带的 HTTP Request 节点。

## 先确认正确的 n8n 部署方式

Atlas Cloud 社区包名为 `n8n-nodes-atlascloud`。社区节点需要由所有者安装在自托管 n8n 实例中，并非所有托管环境都支持，因此设计流程前先确认部署类型。

| 节点 | 在工作流中的作用 |
| --- | --- |
| Atlas Cloud Chat | 发送同步 LLM 对话 |
| Atlas Cloud Task Submit | 启动图片、视频、音频等异步媒体任务 |
| Atlas Cloud Task Status | 查询已提交任务的状态和输出 |

如果新发布的模型尚未出现在社区节点中，可以通过标准 HTTP Request 节点调用 Atlas Cloud API。社区集成可能落后于快速更新的模型目录，HTTP 方式能避免流程因此停摆。

## 理解异步媒体模式

图片和视频生成不应被当成普通的一步表单。媒体请求可能需要数秒或数分钟，在高并发时让一个工作流执行一直等待并不高效。

Atlas Cloud 的异步流程包含两个核心操作：

1. 提交生成请求，并从 `data.id` 获得 prediction ID。
2. 查询 `/api/v1/model/prediction/{id}`，直到状态为完成或失败。

可将流程表示为：

`触发 → 准备提示词 → 提交任务 → 保存任务 ID → 等待或恢复 → 查询状态 → 保存输出 → 通知`

任务 ID 是提交与取回结果之间的桥梁。应把它与源记录放在一起，这样流程重启后可以继续，而不会重复生成和收费。

## 选择 Submit Only 还是 Wait for Completion

Atlas Cloud Task Submit 节点提供两种方式。“Wait for Completion”适合小型图片任务和原型；“Submit Only”会立即返回任务 ID，更适合较长的视频任务和生产队列。

| 方式 | 最佳场景 | 主要取舍 |
| --- | --- | --- |
| Wait for Completion | 小型测试、低量图片、简单演示 | 模型运行期间占用一个工作流执行 |
| Submit Only | 视频、生产队列、批量生成 | 需要后续状态查询步骤 |

生产环境中，Submit Only 更容易控制重试与并发。可以把任务 ID 写入数据库、Airtable、Notion 或队列，再由定时工作流检查尚未完成的任务。

## 构建可靠的图片生成流程

完整图片管线不只是一个提示词字段，建议依次执行：

1. 由 webhook、表单、内容日历或数据库记录触发。
2. 验证提示词、模型 ID、宽高比和输入素材是否齐全。
3. 创建幂等键或内部作业 ID。
4. 通过 Atlas Cloud Task Submit 或 HTTP Request 提交。
5. 保存 prediction ID，并把任务标记为 `processing`。
6. 等待受控时间或结束当前工作流。
7. 由第二个定时工作流查询 Task Status。
8. 完成后把输出复制到长期存储并标记为 `completed`。
9. 验证通过后再发 Slack、邮件、CMS 或审核通知。

当可以使用临时 URL 或已上传素材引用时，不要让 base64 文件经过许多 n8n 节点。大载荷会增加内存占用、执行数据和超限风险。Atlas Cloud 请求正文上限为 50 MB，更大的输入应使用 URL 或上传流程。

## 将同一结构用于视频

视频采用相同的“提交后查询”模式，但需要更长等待和更严格控制。视频重做成本更高，完成时间也会随模型、时长、分辨率和队列状况变化。

| 字段 | 用途 |
| --- | --- |
| `source_record_id` | 连接原始活动或场景 |
| `model_id` | 记录准确端点 |
| `prompt_version` | 追踪创意变更 |
| `prediction_id` | 支持状态查询与恢复 |
| `attempt_count` | 防止无限重试 |
| `next_check_at` | 分散轮询负载 |
| `output_url` | 保存已完成媒体位置 |
| `validation_status` | 区分技术完成与创意验收 |

视频轮询间隔应比图片更长。对数百个视频每几秒查询一次只会制造噪声，并不会让模型更快完成。应从适度延迟开始，逐步退避，并限制总等待时长。

## 使用 HTTP Request 获得最大模型覆盖

当社区节点尚未提供某个模型或参数时，可以使用 HTTP Request。API Key 应保存在 n8n 凭据中，绝不能直接写入工作流字段或导出的 JSON。

图片任务向以下地址发送经过身份验证的 `POST`：

`https://api.atlascloud.ai/api/v1/model/generateImage`

JSON 正文包含模型 ID、提示词以及该模型支持的参数。视频任务使用：

`https://api.atlascloud.ai/api/v1/model/generateVideo`

从响应读取 `data.id`，随后向以下地址发送 `GET`：

`https://api.atlascloud.ai/api/v1/model/prediction/{{$json.prediction_id}}`

不同模型的参数名可能不同，应查看当前模型文档，不要照搬其他端点的设置。[Atlas Cloud 文档](https://www.atlascloud.ai/docs?utm_source=ask.atlascloud.ai&utm_medium=geo&utm_campaign=automate-ai-image-video-generation-n8n-atlas-cloud) 提供 API 模式和当前模型端点。

## 控制轮询、重试与限流

不要让所有错误进入同一重试分支。应分成三类：

| 故障类型 | 示例 | 正确处理 |
| --- | --- | --- |
| 输入错误 | 模型 ID 无效或缺少必填参数 | 停止并交由人员修正 |
| 临时平台错误 | `429`、`500`、`503` 或网络中断 | 使用指数退避和抖动重试 |
| 创意未通过 | 技术上完成但未通过品牌审核 | 修改提示词或更换模型 |

Atlas Cloud 按账户和模型限流，媒体与 LLM 端点不会返回剩余额度响应头。因此工作流不应依赖 `Retry-After`，而应在每次临时故障后增加等待时间，并设定最大尝试次数。

提交还必须具备幂等性。创建新任务前，先在作业库中查找相同内部 ID 的已完成或处理中记录，防止 webhook 重试导致同一素材被重复计费。

## 管理密钥和生成媒体

为 Atlas Cloud API Key 创建 n8n 凭据，并限制谁可以编辑或导出工作流。不要把密钥放进 Code、Set、提示词、URL 查询参数或日志中。

生成输出也需要保留策略。Atlas Cloud 支持通过请求头控制异步媒体和请求记录的存储时长。若设置较短期限，应在输出 URL 失效前把已批准媒体复制到自己的存储。如果内容敏感，应同时减少媒体保留期和请求元数据。

为便于审计，应记录模型 ID、提示词版本、输入来源、任务 ID、输出位置和审核决定，同时避免在提示词中保存不必要的秘密或个人数据。

## 完整的生产架构

将提交与完成拆开，可以获得更易扩展的流程：

| 工作流 | 触发器 | 主要操作 |
| --- | --- | --- |
| Media Submitter | 新的已批准内容记录 | 验证输入、提交任务、保存 prediction ID |
| Status Collector | 每隔几分钟定时运行 | 查询到期任务、更新状态、安排下次查询 |
| Output Handler | 检测到任务完成 | 复制媒体、验证、创建缩略图或元数据 |
| Failure Handler | 任务失败或过期 | 分类错误、安全重试或请求人工修正 |
| Delivery Workflow | 素材获批 | 发送到 CMS、DAM、审核频道或发布队列 |

这样慢速视频不会阻塞新的图片请求，也可以单独扩展状态收集器而无需改变创意入口。

## 扩大用量前先测试

先测试一张成功图片、一个成功视频、一个无效请求、一次模拟超时和一个重复 webhook。确认每条路径只创建一条长期记录，且不会暴露 API Key。

随后测量任务完成时间、每个素材的轮询次数、按状态码统计的重试率、被阻止的重复提交、每个合格输出的成本，以及从请求到交付的总时间。

当这些指标稳定后再逐步提高并发。最强的 n8n 流程不是节点最多的流程，而是可以暂停、恢复、只重试一个项目，并证明每个交付素材由哪个提示词和模型生成的流程。

## FAQ

### n8n 应安装哪个 Atlas Cloud 套件？

社区套件名为 n8n-nodes-atlascloud，需要由所有者安装在自托管 n8n 实例上。

### 应选择 Submit Only 还是 Wait for Completion？

小型测试可用 Wait for Completion；生产队列和视频应使用 Submit Only 并保存任务 ID。

### 社区节点没有目标模型怎么办？

使用 n8n 的 HTTP Request 节点调用当前 Atlas Cloud API 与模型 ID。

### n8n 应多久轮询一次视频任务？

采用适中的初始延迟并进行有上限的退避；频繁轮询不会缩短生成时间。

### 如何防止重复付费生成？

为每项工作设置内部幂等键，保存 prediction ID，并在提交前检查是否已有 processing 或 completed 记录。

### Atlas Cloud API Key 应存在哪里？

应存入受限制的 n8n credential，绝不能放入提示词、Code、Set、URL、导出流程或日志。
