2026-09-01 · 原文发布日
表单收提示词,用Kavel免密钥接口生成图片
这个n8n流程用表单收集图片提示词和宽高比,调用Kavel的匿名文生图API生成并下载图片,带免费额度耗尽和生成失败的处理。匿名档不需要API密钥,但按模板说明输出为1K分辨率且带水印,登录可去水印并解锁更大模型。等20秒后轮询任务状态直到成功或失败,还可把结果接到Google Drive、Slack等节点存储或发布。
原文要点
原模板是n8n官方模板库中的免费工作流(未标价):用n8n表单收集图片提示词和宽高比,生成一个匿名客户端ID后向Kavel的文生图API发POST请求启动任务;若匿名每日免费额度耗尽则直接返回提示,否则等待20秒后轮询任务状态直到成功或失败,成功后从返回的URL下载图片。匿名档无需API密钥,输出为1K分辨率且带水印,登录可去水印并解锁更大模型。最终图片可接Google Drive、Slack、S3等节点。更换模型只需改Start generation节点的model字段,模型列表在Kavel模型页。
这次做成什么
在n8n里搭一个表单驱动的匿名文生图流程:用户提交提示词和宽高比→启动Kavel任务→等待20秒→轮询状态→分支处理额度耗尽/失败/成功→下载图片。附带本站设计的小练习:连续提交3条不同宽高比的提示词并记录结果字段。
准备什么
- 一个能访问外网的n8n实例(云端或自托管均可,需能访问Kavel服务)
- 从n8n模板库导入编号19009的工作流文件(本页不提供可导入JSON)
- 不接入后续存储节点时无需任何凭据;接Google Drive等节点才需配置对应凭据
具体怎么做
导入并激活模板获取表单URL
在n8n模板库打开编号19009的页面导入工作流,先手动执行一次,让表单触发节点生成公开表单URL,把这个URL发给要提交提示词的用户。
核对表单与请求字段映射
表单节点收集两个字段:prompt(图片提示词,文本)和aspect ratio(宽高比)。后续节点会生成一个唯一的匿名客户端ID,并与这两个字段一起拼成发给Kavel的请求体。检查请求节点的model字段,想换模型就在这里改成Kavel模型页列出的名称。
设置等待与轮询分支
确认等待节点设为20秒,之后轮询Kavel查询任务状态。流程有三个出口:额度耗尽时直接返回out of free quota提示;状态为failure时返回附带原因的失败消息;状态为success时进入下载节点。
下载图片并可接存储节点
成功分支从返回URL下载图片文件作为最终输出。想存档就在下载节点后加Google Drive/Slack/S3等节点,把二进制图片数据连过去并配置该节点的凭据;练习阶段可跳过。
用测试数据跑通三个分支
用下方测试数据依次提交:第一条正常提示词验证成功下载;额度用尽当天再提交验证额度提示分支;提交一条极端长提示词观察失败分支返回的原因字段,记录每次的响应内容。
可直接复制的材料
表单测试提交数据(合成)
本站独立编写的练习数据,第三条用于观察失败分支返回的reason字段;JSON中的字符串拼接请手工展开为实际长文本后再提交。
[
{"case": "正常生成", "prompt": "一只橘猫坐在窗台上,窗外是雨夜的城市霓虹,电影感光影", "aspect_ratio": "16:9"},
{"case": "竖版构图", "prompt": "纸质拼贴风格的登山者站在雪山顶,留白构图", "aspect_ratio": "9:16"},
{"case": "触发失败观察", "prompt": "测试超长提示词边界:" + "超现实主义细节,".repeat(200), "aspect_ratio": "1:1"}
]轮询分支判断逻辑示意(本站伪代码,非模板原配置)
模板原文只描述了行为,未给出字段名细节;response.quota_exhausted等字段名为本站示意,导入模板后需按实际节点表达式核对替换。
# 轮询分支判断逻辑(请在导入的模板中核对实际节点名与表达式)
# 输入: Kavel状态查询接口返回的JSON
if response.quota_exhausted:
output = "免费额度已用完,请明天再试或登录Kavel"
elif response.status == "success":
下载节点获取 response.image_url 的二进制文件
elif response.status == "failure":
output = "生成失败: " + response.reason
else:
等待20秒后再次轮询输入与输出示例
本站虚构演示,非实际调用Kavel的结果;真实字段名以下载模板后的节点为准。
输入
表单提交:prompt=「一只橘猫坐在窗台上,窗外是雨夜的城市霓虹,电影感光影」,aspect_ratio=16:9对应输出
示意流程轨迹:提交后生成匿名客户端ID→POST启动任务返回任务ID→等待20秒→第一次轮询返回处理中→再次轮询返回success及图片URL→下载节点输出一个二进制图片文件(文件名示意:image_16x9_cat.png)。若当天匿名额度已用尽,则在前置分支直接返回「免费额度已用完」文本,不进入轮询。做完检查这些
- 表单URL能打开并提交prompt和aspect ratio两个字段,提交后工作流开始执行
- 成功分支最终输出一个可预览/可下载的二进制图片文件
- 额度耗尽分支返回明确的免费额度用尽提示且不进入下载节点
- 失败分支返回的消息里包含Kavel给出的失败原因字段
- 等待节点时长为20秒且轮询在成功或失败后停止,不无限循环
容易卡住的地方
- 匿名档不需要API密钥,但按模板说明输出仅1K分辨率且带水印,要更高分辨率需登录Kavel
- 匿名每日免费额度有限,额度耗尽后当天所有提交都会走到额度分支,练习时先跑少量测试
- n8n实例必须能访问Kavel服务,纯内网部署会在请求节点直接报错
- 更换model字段时必须用Kavel模型页列出的名称,随意填写会在启动任务阶段失败
- 原模板未说明轮询总次数上限,长时间失败的任务可能反复轮询,建议自行加最大重试限制
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Generate AI images from form inputs with Kavel’s anonymous API
- 原作者
- hh3use
- 原始发布日期
- 2026-09-01T12:55:44.863Z
- 来源
- https://n8n.io/workflows/19009