AI PLAY玩法更新持续收录
← 回到更新流

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等节点才需配置对应凭据

具体怎么做

  1. 导入并激活模板获取表单URL

    在n8n模板库打开编号19009的页面导入工作流,先手动执行一次,让表单触发节点生成公开表单URL,把这个URL发给要提交提示词的用户。

  2. 核对表单与请求字段映射

    表单节点收集两个字段:prompt(图片提示词,文本)和aspect ratio(宽高比)。后续节点会生成一个唯一的匿名客户端ID,并与这两个字段一起拼成发给Kavel的请求体。检查请求节点的model字段,想换模型就在这里改成Kavel模型页列出的名称。

  3. 设置等待与轮询分支

    确认等待节点设为20秒,之后轮询Kavel查询任务状态。流程有三个出口:额度耗尽时直接返回out of free quota提示;状态为failure时返回附带原因的失败消息;状态为success时进入下载节点。

  4. 下载图片并可接存储节点

    成功分支从返回URL下载图片文件作为最终输出。想存档就在下载节点后加Google Drive/Slack/S3等节点,把二进制图片数据连过去并配置该节点的凭据;练习阶段可跳过。

  5. 用测试数据跑通三个分支

    用下方测试数据依次提交:第一条正常提示词验证成功下载;额度用尽当天再提交验证额度提示分支;提交一条极端长提示词观察失败分支返回的原因字段,记录每次的响应内容。

可直接复制的材料

表单测试提交数据(合成)

本站独立编写的练习数据,第三条用于观察失败分支返回的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