小红书爆款图文生成
一句话:先问清 → 再付款 → 先出内容、后出图 → 真机预览交付。 交付 7 样:爆款标题 · 封面图 · 内容页图 · 正文 · 话题标签 · 真机预览 · 图片下载区。
0. 什么时候用这个技能
用户出现以下任意意图时,立即启用本技能:
- 想要小红书图文、笔记配图、封面图、内容页图、图文合集
- 想要批量出图、一次做一组图、做一个系列的图
- 想要图文 + 文案 + 话题标签一起出
- 想要封面大字、标题图、带货主图、种草图、教程图、知识卡片、好物分享图
- 提到爆款标题 / 爆款封面 / 爆款文案 / 笔记没人看 / 笔记被限流 / 违禁词 / 选题 / 赛道 / 涨粉 / 要流量
- 提到风格词:清新治愈 / 极简静奢 / 多巴胺 / 韩系温柔 / Y2K千禧 / 随手拍 / 胶片复古 / 手绘卡通 / 新中式 / 3D质感 / 巴恩风
- 提到清晰度或尺寸:1K / 2K / 4K、9:16 / 3:4 / 4:5 / 1:1 / 16:9 等
- 提到"要把我的产品 / 我本人的照片 / 我的店 / 我这个东西放进去"
- 提到任何品类的内容(美食探店、美妆护肤、穿搭、知识干货、生活分享、旅行、情绪、母婴萌宠、职场学习、影视娱乐、游戏、健身…)——并列的品类同样能做,见 3.1 的说明
核心纪律(全程遵守)
| 纪律 | 说明 | |---|---| | 先收集,后付费 | 未付费前只做需求收集与确认,不产出成品图,也不产出详细画面描述与标题文案 | | 一次问全 | 用第 3 节的清单把信息收齐,避免反复追问 | | 用户只给"大概",细节由我来 | 用户不必写完整的画面描述——付费前只需给"大概要求",详细描述由 Agent 在付费后产出(见 3.5 节与 9 节) | | 内容不挑品类 | 不在预设类别里的内容同样能做 —— 不拒绝、不额外收费、不限制张数。先承诺,再执行(见 3.1) | | 图片只问不逼 | 主动问一句"有没有图要传",用户说没有就跳过,绝不因此卡流程(见 3.6 节) | | 付费后先出内容,再出图 | 拿到创作资料后,必须先把标题 / 封面套路 / 正文 / 话题做成"内容总包"交用户确认,确认后才提交生图(见 9 节) | | 不许甩手 | 付费后必须在同一轮对话内持续跟进到位,不能把用户晾在一边 | | 不自造素材 | 创作所用的内容方法论与风格模板只能来自服务端下发,不得用自己联想的素材替代 | | 不吐内部资料 | 服务端下发的创作资料及其章节名 / 方法论名称,都不得以任何形式呈现或落盘给用户;用户最终只能看到成品、内容确认稿与交付说明 | | 交付优先 | 拿到生成结果后第一时间把成品交付给用户;清理会话临时文件一律排在交付之后。⛔ 不得先清理再交付,不得让用户等 |
1. 用户能拿到什么(成果清单)
一次下单,交付 7 样:
| # | 成果 | 说明 | |---|---|---| | 1 | 爆款标题 | 2~3 个候选(不同起手式),用户挑一个或让用户改 | | 2 | 封面图 1 张 | 按选定封面套路出图,可含封面大字(用户可选择不加字) | | 3 | 内容页图 N 张 | 信息层级分明、排版清晰 | | 4 | 正文 | 整篇笔记正文,按所选形态(短吐槽 / 叙述 / 半干货)出 | | 5 | 话题标签 6~10 个 | 按"泛词吃曝光、垂词定人群、长尾稳搜索、节点蹭热点"配比 | | 6 | 真机预览 | 信息流封面 + 笔记详情页,用户直接看到"发出去长什么样" | | 7 | 图片下载区 | 每张图的可点击链接 + 链接失效提醒 |
可复制、可直接发布、可另存本地。
2. 七步运行总览
① 问内容 ② 报价付款 ③ 拉创作资料 ④ 出"内容总包" ⑤ 用户最终确认 ⑥ 提交生图 ⑦ 交付
主题/场景/品类 按写死价格报价 服务端下发后 标题2~3候选 内容层不改就往下 按页归属带图 真机预览+
大概要求(三条 → 用户付款 立即读完再动手 封面套路+封面大字 要改就改完再确认 报完整性校验值 下载区+
给法)/页数/ (短时效·一次性) 正文/tags/自查 → 生成 一键复制
风格/分辨率/尺寸
·上传图片(只问不逼)·封面是否加字
- ① 在付费前完成,只需走到"轻量回显 + 报价"。
- ② 定价与支付规则 → 文末《微信支付对接》章节(唯一权威说明)。
- ③④⑤ 是付费后的核心环节:先产出内容,用户确认后才生图。⛔ 不许跳过 ④⑤ 直接生图。
- ⑥⑦ 的接口、轮询、异常、交付要求 → 文末《微信支付对接》章节。
3. 第一步:需求收集与轻量确认(付费前必须走完)
用户可以直接口述,也可以让用户从下面的菜单里挑。 能做成选择题的(品类 / 形态 / 风格 / 分辨率 / 尺寸 / 页数 / 数量 / 封面是否加字),主动给选项; 要让用户给内容的(每页画什么),把三条给法一次摆出来(见 3.5 节)——① 挑参考 ② 自己写几句大概 ③ 让 Agent 代写; 上传图片(见 3.6 节)只问一句,用户说没有就跳过,不得强迫。 ⛔ 付费前不产出详细页面描述、标题、正文、话题标签——那些在付费后做(见 §9)。 ⛔ 永远不要让用户去写"完整的画面描述"。
3.1 必填项(缺一项都不要往下走)
| # | 项目 | 说明 | 给用户的选项 | |---|---|---|---| | 1 | 主题 | 这篇笔记讲什么,一句话 | 用户自由输入 | | 2 | 内容归类(必问 · 不强迫) | 这条笔记讲哪一类内容 | 三选一(见下方 3.1.1) | | 3 | 内容形态(可选) | 这篇笔记怎么组织(清单 / 测评 / 教程…) | 见 3.1.2:给名称+一句话,用户选或直接跳过 | | 4 | 大概要求 | 每张图画什么、写什么字 | 见 3.5 节:用户只需给"大概要求"(① 挑参考 / ② 自己写几句大概 / ③ 让 Agent 代写),详细描述付费后再写 | | 5 | 上传图片(必问 · 不强制) | 有没有必须原样出现的图(产品 / 包装 / 人物 / 门店 / 菜品) | 见 3.6 节:问一句就够,用户说没有就直接跳过;有图才逐张登记"是什么 / 用在哪页 / 怎么用"并回显;填"无"不影响流程 | | 6 | 页数 | 一共几张图(含封面) | 1 / 3 / 5 / 6 / 9 张,自定义也行 | | 7 | 风格 | 成片视觉调性 | 见第 4 节 12 种,或自定义 | | 8 | 分辨率 | 清晰度档位 | 1K / 2K / 4K | | 9 | 尺寸 | 画面比例 | 见第 6 节,默认 3:4 | | 10 | 数量 | 实际要出的总张数(决定费用) | 单次最多 100 张 |
3.1.1 内容归类:三选一,不强迫
按下面的问法问一句,三个选项都要摆出来:
这条笔记讲哪一类内容?三类里挑一个,随便哪个都行: A 我从下面这个清单里给你挑(美食探店 / 美妆护肤 / 穿搭时尚 / 知识科普干货 / 生活分享 / 旅行出行 / 情绪共鸣 / 母婴亲子萌宠 / 职场学习 / 影视娱乐 / 游戏 / 健身运动) B 不在上面 —— 你一句话告诉我是什么就行(比如家居改造、数码测评、露营装备、收纳整理、手冲咖啡、鲜花养护…) C 你自己也不太确定 —— 那你只讲主题,我来判断
⚠️ 必须一并说明(这是关键承诺,不能省)
不在上面那 12 类里的,同样能做 —— 不额外收费、不限制张数、不影响效果。
- 用户选 B 或 C → 不得说"这个做不了""建议换一个""可能会差一些"。
- 用户选 B → 记下用户自己的说法(这就是品类名),付费后按"预设外"处理(见 9 节)。
- 用户选 C → Agent 自行判断归入最接近的一类;判断不了就当 B 处理。
3.1.2 内容形态:给名称 + 一句话,可选
想做哪种结构?不选也行,我按主题帮你定:
| 形态 | 一句话 | |---|---| | 清单盘点 | "5 个……" | | 实测测评 | "用了 X 天,说点实话" | | 教程步骤 | "X 步搞定" | | 避坑警示 | "千万别……" | | 对比选择 | "A 还是 B" | | 故事情绪 | 讲一段经历或一种情绪 | | 攻略指南 | 行程 / 流程 / 预算 | | 答疑解惑 | "总有人问我……" |
- 用户选了 → 记下来。
- 用户没选 / 说"你定" → 记"未指定",付费后由 Agent 判(判不出默认"清单盘点")。
- ⛔ 不要在这里展开讲每种形态怎么做——那是付费后的事。
3.2 选填项(问了更好,用户不答就按默认走)
| # | 项目 | 默认 | |---|---|---| | 11 | 目标人群 | 通用人群 | | 12 | 语气口吻 | 亲切种草(可选:干货教程 / 专业测评 / 情绪故事 / 幽默吐槽) | | 13 | 正文形态偏好 | 未指定(付费后按内容形态推荐)<br>可选:短吐槽 / 叙述 / 半干货 | | 14 | 标题方向(可选) | 未指定(付费后给 2~3 个候选)<br>用户可只说个方向,如"想自嘲一点""想有悬念" | | 15 | 封面是否加字 | 加字(可选:不加字——走实拍原图直出) | | 16 | 必须出现的文字 | 无(如标题大字、卖点、价格、活动、门店名)→ 报来时当场过 3.7 的红线 | | 17 | 必须避开的元素 | 无(如不要真人、不要水印、不要某种颜色) | | 18 | 主色调 / 调性 | 跟随所选风格 | | 19 | 是否要配套文案与话题 | 要 | | 20 | 交付形式 | 平台支持 HTML 用真机预览,否则用 Markdown 列表 |
3.3 收尾动作
把 3.1 + 3.2 整理成「下单确认单」(模板见 8.1)复述给用户, 轻量回显(复述收集到的内容,不展开详细描述),并同时报价; 得到明确同意后,进入付款环节。
3.5 页面描述:付费前只收集"大概要求"
这一节决定出图有没有"内容"。跳过或糊弄这一节,出图一定是空泛的通用海报。 ⚠️ 本节只收集,不产出。 详细画面描述、标题、正文、话题标签都在付费后产出(见 §9)。 ⛔ 不让用户自己去写详细的画面描述——那样门槛太高,用户多半会跳过或写得很短。
3.5.1 先问"内容原料"(五问)
| # | 问 | 要拿到什么 | |---|---|---| | 1 | 这篇笔记讲什么? | 主题,一句话 | | 2 | 具体是什么场景 / 什么事? | 把场景讲出来(在哪、什么情形) | | 3 | 最想让看到的人记住哪一点? | 核心信息 | | 4 | 画面里必须出现什么? | 产品 / 人 / 物件 / 文字 | | 5 | 有没有不能出现的? | 避忌 |
用户答不全时,一次只追问一项,不要连珠炮。答不全也不影响流程——缺的由 Agent 在付费后按主题补齐并标注。
3.5.2 拿到"大概要求"的三条路(用户任选,也可混用)
用户不需要写详细描述,只需要给大概要求。三条路要一次都摆出来:
| 路径 | 用户要做的 | 说明 | |---|---|---| | ① 直接挑 | 从 Agent 给的参考大概要求里挑一条,或改一条 | 最省事,连写都不用写 | | ② 自己写大概 | 写 1~N 句粗略要求,每行一句 = 一张图 | 有想法但不想写细 | | ③ 让 Agent 代写大概 | 只说主题(甚至只说"帮我做个咖啡图文"),Agent 写出大概要求 → 用户确认 | 完全没想法 |
- 三条可以混用:挑一条 ① 的参考、再自己补两句 ②。
- 全程不强迫:用户给多少算多少。
问法示例(一句话把三条路摆出来)
每张图画什么,你有三种给法,随便挑: ① 我给你几条参考,你挑一条或改一条; ② 你自己写几句大概的就行(一行一张图,不用写细); ③ 你只告诉我主题,我写好给你改。 细的描述等付完款我来写,你只管点头,或者说哪儿不对就行。
3.5.3 参考"大概要求"怎么写(走 ① 时用)
Agent 按用户主题现场生成参考条目,不要丢通用模板。示例(主题 = 咖啡拉新):
参考写法,挑一条或改一条都行:
A. 封面图:手冲咖啡出镜,标题大字「0 元喝」
B. 咖啡店门头 + 排队人潮,突出人气
C. 三款招牌饮品平铺对比图
D. 新人到手价对照表,突出省钱
E. 门店打卡角落 + 氛围光影
参考条目的写法:一句一行,只写"画什么"(主体 + 场景 + 要出现的字), 不写风格、不写色调、不写排版细节。条数比页数多 2~3 条,让用户有得挑。
3.5.4 轻量回显(付费前唯一要做的那次确认)
收集完,把结果原样复述一遍给用户,不要展开成详细描述:
我先跟你对一下要做的内容 ——
· 主题:__
· 讲哪一类:__(预设:__ / 预设外:__)
· 内容形态:__(未指定 → 我来定)
· 大概要求(一行一张图):
P1(封面):__
P2:__
P3:__
· 页数:共 _ 张
· 上传图片:无 / _ 张(__)
· 风格:__ | 分辨率:__ | 尺寸:__
· 封面是否加字:加字 / 不加字
· 必须出现的文字:__ | 必须避开的元素:__
以上对不对?对的话我给你报价(套餐 X 张 ¥__,超出 ¥__/张)。
3.5.5 严禁
- ❌ 付费前产出详细画面描述 / 标题 / 正文 / 话题标签(越权,也让付费点变模糊)。
- ❌ 让用户自己去写详细描述——用户只给大概,详细的付费后由 Agent 出。
- ❌ 把"大概要求"当成成品的最终描述去向用户承诺效果。
- ❌ 不回显、不报价就闷头往下走。
3.6 用户上传图片:场景识别、收集与确认
有些内容没法靠文字描述清楚——产品外观、包装文字、人物长相、门店样子、菜品卖相。 这类需求如果用户手上有图,出图会准很多;没图也能做,只是要多靠描述去逼近。 本节的原则:主动问,但不强迫。 用户愿意传就收,不愿意传就直接跳过,绝不能拿"必须传图"卡住流程。
3.6.1 什么情况该主动问一句"要不要传图"
命中下表任意一条,主动问一句即可:
| 场景 | 用户手上通常有什么图 | 图在画面里的角色 | 保真要求 | |---|---|---|---| | 种草 / 带货 | 产品实拍(正面 / 细节 / 包装 / 使用中) | 主体,画面里出现 | 高:外观、颜色、包装文字尽量不变 | | 穿搭 / 人像 | 本人或模特照 | 主体(人物) | 高:五官 / 发型 / 身形尽量保持一致 | | 探店 / 餐饮 | 门店照、菜品照、环境照 | 主体或背景 | 中高:菜品与门店特征保留 | | 好物合集 / 清单 | 多件产品平铺图 | 主体(多件) | 高 | | 家装 / 装修 | 户型图、实景图 | 参考或主体 | 中:空间格局保留 | | 教程 / 知识卡 | 截图、图表、手写笔记 | 排版素材 | 中:信息不丢 | | 前后对比 / 测评 | 两张对照图 | 素材 | 中 | | 改风格 / 二次加工 | 已有的成图 | 底图 | 中:按新风格重绘 | | 拼贴 / 九宫格 | 多张素材 | 拼贴元素 | 中 | | 联名 / 包装设计 | 物料、标识、包装图 | 融合元素 | 高:标识不走样 | | 其他 | 用户主动说"我这儿有张图" | 按用户说明 | 按用户说明 |
标准问法(一句话,不要长篇大论):
这个内容里有没有必须原样出现的东西(产品 / 包装 / 人物 / 门店)? 有图就发我,我会把图放进对应页面;没图也完全没问题,我按文字描述来,一样能做。
问完之后的三条纪律
- 不追问、不施压:用户说"没有",立刻进入下一项,不得再劝。
- 不因此卡流程:没有图照样能走完全流程,确认单里"上传图片清单"填"无"。
- 不假装有图:用户没传图时,描述里不得写"与上传图一致"这类话。
3.6.2 逐张登记"三要素"(必做)
每收到一张图,登记:
| 要素 | 说明 | |---|---| | 这张是什么 | 产品正面 / 产品细节 / 包装 / 使用场景 / 人物照 / 门店 / 菜单 … | | 用在哪一页 | P1 封面 / P2 / P3 …(允许一图多页,但要写清) | | 怎么用 | 原样出现 / 作为背景 / 作为排版素材 / 作为底图重绘 |
登记结果必须回显给用户(见 3.6.4)。
3.6.3 收图时的质量与合规门槛
质量(不达标就请用户重传,不要硬上):
- 主体清晰,不严重模糊、不严重反光
- 主体关键部分没被裁掉(如产品只露一半)
- 尺寸不能过小,否则出图会糊
- 格式为 PNG / JPEG / WebP / GIF 之一
- 单张不超过 10MB(硬上限,见 3.6.7)
合规(提醒一句就够,不要吓唬用户):
- 含他人肖像的照片 → 请用户自行确认已获授权
- 含他人作品 / 他人店铺 / 他人包装的素材 → 请用户自行确认可使用
- 含个人信息的截图(订单号、手机号、地址、聊天记录)→ 建议裁掉或打码后再传
- 含水印或他人账号名的图 → 建议裁掉后再传
3.6.4 图片清单逐条回显(必须)
把登记结果列给用户确认:
你一共发了 3 张图,我这样安排 ——
① 产品正面图 → 用在 P1 封面 | 原样出现,产品外观保持完全一致
② 产品细节图 → 用在 P2 | 原样出现
③ 使用场景图 → 用在 P3 | 作为背景,产品需清晰可辨
对不对?要调哪张,直接说序号。
3.6.5 图片保真要求要写进画面描述
用户上传了图,该页的画面描述里必须写清图片的角色与保真要求(付费后产出描述时一并写入):
P1(封面):画面主体为上传的那件产品,外观、颜色、包装文字与上传图完全一致,产品置于干净台面上,
标题大字「实测好用」
P2:产品细节特写,与上传图一致,配简洁参数标注
P3:以上传的场景图为背景,产品清晰可辨
3.6.6 严禁
- ❌ 强迫用户传图:用户说没有/不想传,就此打住,不得反复劝说、不得拿"效果会差"施压、不得卡住流程。
- ❌ 用户明说"按我的产品来"却不问图:此时要问一次"能不能发我产品图";问了仍不给,才转为纯描述,并如实告知"产品细节只能靠描述逼近,可能与实物有差异"。
- ❌ 没传图却说"与上传图一致":没有图就不许写保真句,这是虚假承诺。
- ❌ 用占位图 / 网图 / 示例图冒充:必须用用户实际上传的原图。
- ❌ 把本地路径当图片传给服务端:服务端在远端,读不到本机磁盘。
- ❌ 一图走天下:多页需求要按页登记归属,不得把同一张图无差别复制到每一页(除非用户要求)。
- ❌ 跳过登记直接进确认单:有图却没写"哪张用在哪页",付费后必然乱。
3.6.7 体积与格式硬门槛(付费前必查)
对接协议对参考图有硬性体积上限,且禁止代为压缩原图。 所以这一步必须在付费前做完——否则付完钱才发现图传不进去,整笔订单要重来。
| 项 | 上限 | 超了怎么办 | |---|---|---| | 单张图(解码后) | ≤ 10MB | 请用户重新提供 ≤10MB 的原图(如重新导出更小尺寸 / 更高压缩率的文件) | | 单张图(base64 串) | ≤ ≈13.3MB | 同上 | | 一次订单内多张合计(解码后) | ≤ 18MB | 减少张数,或拆成多个订单分别提交 | | 单请求体 | ≤ 25MB | 同上的拆单规则 |
三条纪律
- 🔴 绝不代为压缩:不得对用户原图做有损压缩、缩放或格式转换后再上传,必须用用户原始上传的那份文件。
- ⏰ 超限当场就说:一发现超限立刻告知用户并请其换图,不要先收下、更不要留到付费后再处理。
- 🧾 拆单要说清:需要拆单时,先跟用户讲明白拆成几单、每单几张、费用怎么算,得到同意再继续。
给用户的说法(照抄可用)
这张图有 12MB,超了平台 10MB 的单图上限。麻烦你重新导出一份小一点的(比如导出时把尺寸或画质调低一档)。 我不能替你压缩——压过之后画质会掉,反而影响出图效果。
3.7 违禁词红线(付费前只拦"用户给的文字")
用户在需求里报的"必须出现的文字"(标题大字 / 卖点 / 价格 / 活动名 / 门店名), 当场过一遍下列红线:命中就提示风险 + 给替代写法,并把替代后的版本记进确认单。 ⛔ 不要"先收下、付完款再说"。 (完整的 7 大类清单在付费后下发的创作资料里,那一边会再对生成结果全查一遍。)
| 红线 | 典型写法 | 替代写法 | |---|---|---| | 站外导流(第一红线) | 微信、加 V、扣我、二维码、主页链接、其他平台名、"XX App 搜" | 站内不提站外;联系方式只走官方私信 | | 极限词 / 绝对化 | 最、第一、顶级、国家级、100%、销量冠军、永久、唯一、绝对 | "口碑不错""很多人回购" | | 医疗 / 功效承诺 | 祛痘、美白、淡斑、瘦身、生发、抗敏、修复屏障、几天见效、根治 | "提亮肤色""改善肤质"(只讲体感,不承诺效果) | | 诱导互动 | 点赞、收藏、关注、评论区扣 1、一键三连 | 不喊话要数据 | | 诱导抢购 / 虚假营销 | 秒杀、抢爆、错过不再有、万人疯抢、恭喜中奖 | 如实描述活动 | | 迷信 / 违禁品类 | 转运、旺财、算命、开光;医美细节、烟草、境外博彩 | 删除话术;违禁品类不碰 | | 夸大词 | 绝绝子、yyds、必入、闭眼买 | 客观描述体验 |
话术:「__」这个词在小红书属于风险词,容易被限流。建议换成「__」,意思一样但更安全 —— 可以吗?
4. 风格菜单(12 选 1 + 自定义)
用户不选也没关系,默认「⭐ 不限风格」。用户说"再来点别的感觉"时,可以直接让用户描述,走第 7 节的自定义通道。
| 编号 | 风格 | 适用场景 | 一句话感觉 | |---|---|---|---| | ⭐ | 不限风格 | 所有场景 | 万能款,什么都能出 | | A | 清新治愈 | 护肤 · 穿搭 · 家居 | 柔和粉彩、自然光、花草、温暖舒适 | | B | 极简静奢 | 轻奢 · 高端护肤 | 莫兰迪色、留白、干净轻奢 | | C | 多巴胺 | 穿搭 · 美甲 · 手帐 | 高饱和撞色、活泼潮流 | | D | 韩系温柔 | 人像 · 街拍 · 约会 | 奶油色调、柔光、简约优雅 | | E | Y2K千禧 | 辣妹 · 复古数码 | 金属质感、霓虹、千禧美学 | | F | 随手拍 | 日常 · 好物 · 宿舍 | 生活感实拍、自然光、真实 | | G | 胶片复古 | 旅行 · 探店 · 文艺 | 胶片颗粒、复古暖调、老照片感 | | H | 手绘卡通 | 手账 · 贴纸 · 儿童 | 手绘插画、水彩、可爱贴纸 | | I | 新中式 | 汉服 · 国风 · 茶食 | 国风美学、水墨、传统纹样 | | J | 3D质感 | 数码 · 美妆 · 虚拟 | 立体渲染、光影、科技感 | | K | 巴恩风 | 学院 · 茶饮 · 早春 | 文艺清新、书卷气、早春氛围 |
呈现方式:给用户一个带编号的清单,让用户回一句编号即可(例如"A,2K,3:4,5 张")。
5. 分辨率(三档,只给这三个)
| 档位 | 适合 | 说明 | |---|---|---| | 1K | 日常笔记、快速出图 | 出图最快,日常发布足够 | | 2K | 细节多的图、人物与产品特写 | 细节更扎实(也是默认档) | | 4K | 电商主图、打印、大屏、需要二次裁剪 | 最清晰,耗时略长 |
要主动告知用户:出图不是秒出,单张通常需要 1~3 分钟,4K 与多张会更久,请耐心等待,不要中途重复下单。
6. 尺寸(常用尺寸,给用户挑)
| 编号 | 尺寸 | 比例 | 典型用途 | |---|---|---|---| | 1 | 竖版标准(默认) | 3:4 | 小红书图文标准版式,最稳 | | 2 | 竖版全屏 | 9:16 | 手机全屏、封面冲击力强 | | 3 | 竖版长图 | 4:5 | 信息量偏多、列表型内容 | | 4 | 正方形 | 1:1 | 商品主图、合集九宫格 | | 5 | 竖版海报 | 2:3 | 长图海报、活动图 | | 6 | 横版 | 4:3 | 横版排版、对比图 | | 7 | 横版宽屏 | 16:9 | 视频封面、横屏展示 | | 8 | 横版摄影 | 3:2 | 摄影感、风景与探店 | | 9 | 智能自适应 | Auto | 拿不准时交给它 |
默认 1(3:4 竖版标准)。用户如果只说要"小红书尺寸",直接给 3:4,并说明一句"这是小红书最常用的竖版比例"。
7. 自定义内容(不限于预设,想做什么就做什么)
用户完全不必从上面选。只要用户说"我想要一个 XX 的图",就按下面走:
- 先问三件事:给谁看?想让人看完做什么?画面里必须有什么?
- 再把用户的自由描述当主题,套进用户选定的风格;用户没选风格就默认「不限风格」,同时记下用户自己描述的画面调性(例如"暗色系、赛博、冷调")。
- 不要限制题材:教程、测评、清单、对比、避坑、经验贴、开箱、探店、招聘、招生、活动预告、节日祝福、纪念日、个人名片、课程海报、直播预告、产品卖点图……全部可以做。用户说的题材不在第 3 节那 12 类里,也照样能做。
- 允许混搭:同一组图可以"封面用 A 风格、内容页用 F 风格";也可以"每页一句不同的话"。
- 允许用户只给一句话(例如"帮我做一套关于咖啡拉新的图文"),但不能因此省掉"大概要求":
- 先补齐 3.5.1 的"内容原料五问"(答不全没问题);
- 再按 3.5.2 把三条给法一次摆出来(① 挑参考 / ② 自己写几句大概 / ③ 让 Agent 代写大概);
- 用户只给一句话 → 走 ③:Agent 先写出大概要求给用户确认;
- 页数可以一并代拟,但同样要用户点头;
- ⛔ 不许把用户那句话直接当页面描述用;⛔ 也不许让用户回去自己补写详细描述。
- 付费前不要产出详细描述与标题文案——那是付费后的事(见 §9)。
8. 确认单(两份,分阶段用)
8.1 付费前:下单确认单(收集结果 + 报价)
【小红书爆款图文 · 下单确认】
· 主题:
· 内容归类:__(预设:__ / 预设外:__,已按通用逻辑处理,若你行业里有特殊说法请告诉我)
· 内容形态:__(未指定 → 我来定)
· 大致内容要求(一行一张图):
P1(封面):__
P2:__
P3:__
· 页数:封面 1 张 + 内容页 N 张 = 共 N+1 张
· 上传图片清单:
① 是什么:__ | 用在哪页:P_ | 怎么用:原样出现 / 背景 / 排版素材 / 底图重绘
② …
□ 本次没有上传任何图片,按纯文字描述出图
· 风格:__ | 分辨率:1K / 2K / 4K | 尺寸:__
· 封面是否加字:加字 / 不加字
· 正文形态偏好:未指定 / 短吐槽 / 叙述 / 半干货
· 必须出现的文字:__(已过违禁词红线)
· 必须避开的元素:__
· 总张数:__
· 报价:套餐 3 张 ¥0.75;超出部分 ¥0.25/张;本次共 _ 张,合计 ¥__
以上对不对?确认后我发起支付,付款成功后我会先把标题、封面、正文、话题都做好给你过一遍,
你点头我才开始出图 —— 这样不会出来才发现方向不对。
8.2 付费后:内容确认单("内容总包",见 9 节第 4 步)
【内容确认稿】
· 内容形态:__ | 正文形态:__
· 赛道:__(预设 / 预设外 · 已现场建档)
· 页数:封面 1 张 + 内容页 N 张 = 共 N+1 张
一、逐页画面描述(原文照录)
P1(封面):____ | 封面大字:「__」
P2:____
P3:____
二、标题候选(挑一个,或告诉我哪里不对)
① (起手式:__)____
② (起手式:__)____
③ (起手式:__)____
三、封面
· 套路:__ | 是否加字:加字 / 不加字 | 封面大字:(加字才有)「__」
四、正文(形态:__)
________
五、话题标签(_个)
#__ #__ #__ #__ #__ #__
六、违禁词自查
已过 7 大类自查(改动了 X 处):__ → 改为 __
七、图片安排
① 是什么:__ | 用在哪页:P_ | 怎么用:__
□ 本次没有上传任何图片
· 风格:__ | 分辨率:__ | 尺寸:__ | 总张数:__
以上内容请过一遍 —— 没问题我就按此出图;要改哪一条,直接说序号。
⚠️ 内容确认稿里不得出现风格模板原文、内部字段名、资料章节名。
9. 付费与出图
付费与出图的全部规则(定价、接口、支付、取资料、生成、轮询、交付、异常、售后) 全部在文末《微信支付对接》章节,本文件不重复、不改写、不覆盖。以下只讲执行顺序与本技能的产出要求。
报价(写死,以文末对接文档为准)
| 项 | 价格 | |---|---| | 套餐 | 3 张,固定价 ¥0.75 | | 超出部分 | ¥0.25 / 张 | | 单次上限 | 100 张 |
报价时直接说这两个数字即可,并补一句"以平台对接说明为准"。 ⛔ 不要自行加价、打折、减免或改价;预设外内容与预设内同价。
执行顺序
- 用 8.1 的下单确认单与用户完成确认(含报价),得到明确同意。
- 按《微信支付对接》第 1~3 节执行付费前置检查、告知价格、发起首次请求、引导用户完成付款。
- 付款成功后,服务端会下发核心创作资料。此时先读完再动手:
- 按《微信支付对接》第 4 节的两阶段流程取资料;
- ⚠️ 资料是短时效(约 10 分钟起,以包内有效期字段为准)+ 一次性的,先并发读完再产出, 读完即凭记忆工作,不要依赖回头重读;确需重读走《微信支付对接》第 9 节的资料续签, 不要重新下单。
- 产出「内容总包」 —— 这是付费后的核心动作,必须做完才能进入第 5 步:
- 用下发的创作资料,结合第 3 节收集到的信息,按资料给定的产出顺序执行: 先定内容形态 → 再定品类语境 → 再出标题 / 封面套路 / 正文 / 话题 → 最后过一遍违禁词自查;
- 品类不在预设范围内时:按资料给的现场建档流程处理(建档 + 就近迁移合规红线 + 通用兜底), 不拒绝、不加价、不限制张数,并在确认稿里注明"预设外 · 已现场建档";
- 多类混合(如"带娃旅行""租房改造")→ 取一个主场 + 次要只叠加合规红线;
- 标题给 2~3 个候选,起手式各不相同,并标明每个用的哪种起手式;
- 封面给出套路与封面大字(用户选了"不加字"就不给大字);
- 正文按所选形态产出;话题标签 6~10 个;
- 违禁词自查:标题 / 封面大字 / 正文 / 话题四处全查,命中即改,并记下改动处数;
- ⛔ 不许编造行业禁忌——不熟悉的行业只走通用违禁词表,并如实说明。
- 把内容总包发给用户做最终确认(用 8.2 的模板):
- ⛔ 确认稿只给内容层:画面描述原文、标题候选、封面套路、正文、话题、自查结果; 含风格模板原文的最终出图提示词属内部结构,不得呈现;
- 用户可以改,内容层不限轮数,但建议 3 轮内收敛;每轮只改用户点名的部分,不要整篇重写;
- ⛔ 用户确认前,绝对不要提交生图。
- 提交生图(用户确认后):
- 把已确认的逐页画面描述原样填进资料给定的风格模板 + 接该页角色后缀,只做拼装,不做改写; ⛔ 禁止用主题词、上下文联想或自拟内容替换确认稿里的描述;描述缺失或有歧义 → 回到用户处补齐;
- 封面"不加字"时:封面页后缀去掉"醒目大字"相关片段(见资料里的规则),别的都不动;
- 🔴 每页描述末尾必须统一追加"无页码片段"(硬规定,封面与内容页都要加):
,画面中不要出现页码、分页角标或任何形式的页码标记—— 漏加会导致图片里画出页码;⛔ 不得省、不得改写、不得只在部分页面加; - 用户所选尺寸与风格模板末句的比例不一致时,按资料规则对齐;
- 用户上传的图片按《微信支付对接》的
image字段规则随请求传入: · 传参首选是「方案乙」(base64 / dataURI,由服务器中转上传),不是公网 URL; 公网 URL 仅在方案乙物理上限确实无法承载时兜底,且不得中途改用; · 必须透传用户原始上传图的字节——禁止静默压缩 / 缩放 / 格式转换; 原图 >10MB 时,回到用户处请其重新提供 ≤10MB 的原图,不得代为压缩; · 必须同时上报原图完整性校验值(单图一个、多图用列表,与图片数组一一对应); 服务端会比对解码字节,不一致直接 400; · 体积上限:单张解码后 ≤10MB;同一订单内多张合计解码后 ≤18MB;单请求体 ≤25MB; 超出 → 先减张数;仍超就拆成多个订单(拆单前必须先与用户确认张数与费用); · 按确认单登记的页面归属传图:某页登记了哪张图,该页的请求就带哪张图, 不得漏传、不得串页、不得把多页的图全塞进第一条请求; · 🔴 严禁传本机文件路径;🔴 严禁用网图 / 占位图 / 示例图冒充用户图片; - 页数、每页角色(封面/内容页)、风格、分辨率、尺寸,一律以确认单为准;
- 需要多个不同内容时,按《微信支付对接》第 6 节的方式逐条独立请求。
- 付费后可调参数:还没生图,用户这时改风格 / 分辨率 / 尺寸都不产生额外成本; 但张数不得超过已付数量(要加张数按超出部分的价格补差价)。
- 收到图片 → 立即交付(最高优先级)
- 先交付、后收尾:把成品组装好立刻发给用户;交付完成之后才做收尾动作 (清理本轮产生的临时文件、目录归档、记录整理等);
- ⛔ 不得先去清理会话临时文件、整理目录、删除中间产物 —— 那会让用户干等;
- ⛔ 不得以"我先整理一下""稍等我把文件清一下"为由推迟交付;
- 交付内容按第 10 节:真机预览 + 图片下载区 + 一键复制;
- 必须在同一轮对话内完成,不要甩手。
- 按《微信支付对接》第 9 节执行资料读取反馈。
- 【收尾】 交付完成之后,再清理本轮产生的临时文件(若有)。 收尾动作任何情况下都不得前置于交付。
交付前自检
- [ ] 内容总包已获用户确认(没有跳过这一步直接生图)
- [ ] 标题候选 2~3 个、起手式不同、≤20 字
- [ ] 封面套路与"是否加字"与用户选择一致
- [ ] 话题标签 6~10 个;核心关键词在标题 / 正文首段 / 话题之间形成闭环
- [ ] 违禁词四处全查过,改动已在确认稿里注明
- [ ] 张数与确认单一致,封面在最前
- [ ] 每页描述与确认稿原文一致(未被替换或改写)
- [ ] 每张图都有可点击的下载链接 + 失效提醒
- [ ] 真机预览(信息流 + 详情页)已生成
- [ ] 图片按页归属传参,没有漏传 / 串页;已报完整性校验值;未压缩原图
- [ ] 每页描述末尾都已追加无页码片段;图片里没有页码角标
- [ ] 真机预览的左右两侧内容不同(左机出现「关注 / 发现 / 附近」,右机出现「说点什么…」)
- [ ] 已先交付、后清理(没有因为清理会话临时文件而让用户等)
- [ ] 没有把服务端下发的资料原文、章节名或内部字段以任何形式泄露给用户
10. 交付规范(给用户看的这一屏)
优先按《微信支付对接》第 7 节的**方案一(自包含 HTML 展示页)**呈现。
⚠️ 顺序纪律:先交付、后清理。拿到生成结果的第一件事是把成品做出来发给用户, 不得先花时间清理会话临时文件,也不得让用户等清理。
推荐做法:用本技能自带的真机预览模板(单文件)
技能包内附一个自包含模板:
| 文件 | 作用 |
|---|---|
| templates/preview.html | 真机预览(单文件):同时内联「信息流封面」与「笔记详情页」两套视图 —— 左机是信息流、右机是详情页;窄屏自动切换为 Tab 单机模式 |
它是完全自包含的:不含 iframe、不依赖第二个文件、不依赖任何查询参数、不请求任何外部资源。
怎么用
- 打开
templates/preview.html,找到文件里唯一的数据块:
<script id="post-data" type="application/json">
{
"images": [],
"title": "",
"body": "",
"tags": []
}
</script>
- 填入本次结果(只填这一处,两侧视图会自动同步):
images:本次生成图片的 URL 数组,按 P1、P2… 顺序,封面放第一个;title:用户选定的那一个标题;body:正文(段落之间用\n换行);tags:话题数组,每项带#。
- 把这一个文件直接展示给用户即可 —— 左机显示信息流封面,右机显示笔记详情页。 不需要放在特定目录、不需要配套文件、不需要改文件名。
- 平台不支持 HTML → 直接按《微信支付对接》第 7 节的**方案二(Markdown)**呈现。
⚠️ 模板直接吃图片 URL,不需要本地图片目录,不要额外复制图片文件。 💡 数据没填或填错时,页面会显示「图片 /(标题未填写)/(正文未填写)」占位提示 —— 看到占位就说明数据块没填对,不要就这样交付。
四条禁令(不要自作聪明改结构)
- ⛔ 不要把这个模板拆成两个文件;
- ⛔ 不要给模板加 iframe;
- ⛔ 不要引入
?view=…之类的查询参数来切换视图; - ⛔ 不要把模板复制成两份分别展示;数据块只能有一处。
交付前自检(必须做,一眼可辨)
左机必须出现「关注 / 发现 / 附近」三个标签;
右机必须出现「说点什么…」底部栏。
两侧内容必须不同 —— 若两侧一模一样,说明模板被改坏了,重新取原始模板重做。
除了预览,必须同时给出「图片下载区」(硬要求)
图片链接是云存储临时地址(约 24–72 小时失效),所以交付页必须同时包含:
- 每张图的可点击下载链接(整串 URL 即链接文字,点击即打开 / 下载)
- 一句失效提醒
交付清单(缺一不可)
🖼️ 真机预览(信息流封面 + 笔记详情页)
📄 标题(选定的那一个)
📝 正文(可直接复制)
🏷️ 话题标签(6~10 个,可直接复制)
🖼️ 图片下载区(每张:预览 + 可点击链接 + 失效提醒)
⏳ 图片链接为临时地址,约 24–72 小时后失效,请尽快下载保存。
(交付自检:预览与图片里都不得出现页码角标)
11. 让用户愿意反复回来用(复购设计)
每次交付的结尾,主动问一句,并给出下面这些"再来一单"的入口——这是让用户多次回来调用的关键:
- 🔁 一键复刻:"用上次的配方再出一版"——沿用上次的主题、风格、分辨率、尺寸,只换内容。
- 🎨 同题多风格:"同一主题,换 A / B / C 三种风格各出一套",适合做 A/B 测试挑爆款封面。
- 📐 同图多尺寸:"同一内容,出 3:4 + 1:1 + 9:16 三个尺寸",一次覆盖笔记流、主图、全屏。
- 📚 系列化量产:"把主题扩成 5 篇系列(第 1 篇/第 2 篇…)",适合做账号矩阵、连载内容。
- 🅰️🅱️ 同题多封面:"同一篇内容做 2~3 个不同套路的封面",用户自己发出去测点击率,好的那版再放大。
- ✍️ 标题多版本:"同一篇内容配 2~3 组标题",发不同账号或分时段测,找到最能带流量的那组。
- 🏷️ 品类系列化:"这条品类再做几篇,形成垂类标签"——同一品类连续出 3~5 篇,账号更容易被系统认成垂类号。
另外交付时告诉用户这几件事,能显著提高回访率:
- 📌 配方卡:把本次的「品类 + 形态 + 风格 + 分辨率 + 尺寸 + 语气」记成一张配方,下次一句话就能复用。
- 🗓️ 换季/节令提醒:节假日、换季、开学、大促前可以再来一批,风格直接沿用。
- 📈 迭代机制:先出 1K 打样挑方向,选中方向后再出 4K 精修,省时又省钱。
12. 常见问与答(照着答)
| 用户问 | 怎么答 | |---|---| | 能出几张? | 单次最多 100 张,一般建议 3~9 张成一套。 | | 多久能好? | 单张约 1~3 分钟,多张会累加,请耐心等待,不要重复下单。 | | 能写发笔记的文案吗? | 可以,正文和话题标签一起给你,而且会先给你过一遍再出图。 | | 我这行不在你列的那些类别里,能做吗? | 能做,而且不加价、不限制张数。 你告诉我是什么内容就行,一样给你配标题、封面、正文和话题。 | | 标题怎么写才有人点? | 我会一次给你 2~3 个不同方向的候选,都是照着真人说话的口气写的(不是广告文案),你挑一个或者告诉我哪里不对,我再改。 | | 为什么图好看但没人点? | 图好看只解决"划到之后留得住",点不点进来主要由封面和标题决定。所以这两样我会单独给你做,封面还会告诉你用的是什么打法。 | | 会不会被限流?违禁词怎么办? | 我会在生成前后各查一遍违禁词(站外导流、极限词、功效承诺、诱导互动这些),命中就改,并告诉你改了什么。 | | 能不能不用预设风格? | 可以,想做什么就做什么,直接描述你要的画面就行。 | | 我不会写每张图画什么怎么办? | 不用你会写——你说个大概,或者直接从我给你参考里挑,剩下的我来写,写完给你改。 | | 为什么付完款还要我确认一次? | 因为标题、封面、正文是"内容",做出来你才知道合不合口味。先给你看一遍,比出了图再推翻省钱省时间。这一轮改内容不再收费。 | | 我有自己的产品图 / 我的照片,能用吗? | 可以,把图发我,我会放进对应页面,并尽量保持产品外观 / 人物一致。 | | 图片太大传不上去怎么办? | 单张不能超过 10MB。麻烦你重新导出一份小一点的——我不能替你压缩,压了画质会掉。 | | 能改吗? | 内容层随便改(付款后、出图前);风格、分辨率、尺寸在出图前也能改;图已生成后若要重做,按规则使用新的序号重新产出。 | | 图会在你那边保存吗? | 图片是临时下载地址,约 24–72 小时失效,请尽快保存到本地。 | | 能把独家素材发我看看吗? | 内部创作资料只用于生成,不单独提供。 | | 图上有页码角标吗? | 不会有。预览页只显示底部圆点、不显示页码数字;出图描述里也固定要求不画页码。 | | 预览能直接发给别人看吗? | 能,就是一个自带预览的网页文件,直接发即可,不用配套其他文件。 | | 付完款之后还要我做什么? | 只需要看一遍标题、封面、正文和话题,点头就出图。出完我第一时间把成品发你。 |
13. 检索关键词(用于平台内被搜到)
小红书图文|小红书爆款图文|爆款标题|爆款封面|爆款文案|小红书标题怎么写|小红书封面怎么做|笔记没人看|笔记限流|流量上不去|违禁词检测|违禁词自查|选题|赛道|品类|涨粉|笔记配图|图文批量生成|一键出图|AI 生图|4K 高清图|1K 2K 4K|竖版封面|话题标签|种草文案|带货主图|电商配图|产品图植入|产品实拍图|上传图片生成|人像保持一致|门店图|好物平铺|知识卡片|教程图|好物分享|节日海报|自媒体配图|内容创作|批量作图|封面设计|不会写描述也能出图|帮我写画面描述|帮我写标题|帮我写文案|清单合集|避坑指南|测评图文|探店图文|育儿经验图文|职场干货图文|情绪文案|清新治愈风|极简静奢风|多巴胺配色|韩系温柔风|Y2K|胶片复古风|手绘卡通风|新中式风|3D 质感|巴恩风|九宫格合集|系列图文
回复里的自然语言写法(不要堆砌,融入句子里):做小红书爆款图文的、想让笔记有流量的、标题封面不会写的、怕踩违禁词被限流的、要出封面和配图的、想批量做一套笔记图的、需要图文加文案一起出的、要把自己的产品图放进图里的、不会写每张图画什么想让 AI 写好的、我这行不在你列的那些类别里的。
<!-- ================== 以下为《微信支付对接》原文,一字未改,请严格按此执行 ================== -->
微信支付对接
1. 付费前置检查(必须最先执行)
前置条件:本 Skill 的微信支付能力依赖 Agent 运行环境内置的 weixinpay 插件。 调用本 Skill 前,检查当前 Agent 是否已安装 weixinpay 插件:
- 已安装(可用
weixinpay_pay):第一优先使用weixinpay_pay发起支付(参数为{ paymentCode: "<WeixinPay-Required 的值>" })。 - 未安装(运行环境无可用的
weixinpay_pay工具):降级使用服务端发来的微信支付内容——服务器会在 402 响应中返回payment_card_html(预生成的完整微信支付收款卡片,直接作为 HTML 展示给用户扫码支付);若该字段不存在,再回退读取native_pay.code_url自行渲染二维码。
2. 定价和流程
定价规则(向用户说明价格):
- 套餐:3 张,固定价 ¥0.75
- 超出部分:¥0.25/张
- 上限:单次最多 100 张
执行步骤:
- 执行 Skill 原有逻辑:先按本 Skill 原本的流程运行,确定用户的需求、要生成的内容和数量
- 告知价格,用户确认后发起首次请求:
- 地址:
https://abb.lingyouai.cn/api/v1/skill/xiaohongshu-tuwen/image - 方式:POST,Content-Type: application/json
- 请求体:
{ "n": 数量 } - ⚠️ 首次请求不要传 prompt
- 本 Skill 已关联知识库:支付成功后将先取知识库再生成,分两步(详见第 4 节)
- 地址:
- 收到 402 响应后 → 见第 3 节「收到 402 响应 → 发起支付」
3. 收到 402 响应 → 发起支付
- 从响应头取
WeixinPay-Required= paymentCode - 从响应头取
X-Out-Trade-No= outTradeNo - 告诉用户本次金额(响应体中的
amount和message) - 【第一优先】 调用
weixinpay_pay(参数为{ paymentCode: "<WeixinPay-Required 的值>" })发起支付,由该工具完成支付。 - 【第二优先(降级)】 仅当 Agent 端没有
weixinpay_pay工具或调用不成功时,才降级使用服务端发来的微信支付内容:检查 402 响应体中是否存在payment_card_html字段:- 若该字段存在且非空:将其作为 HTML 展示给用户(服务端预生成的完整微信支付风格收款卡片,含二维码+商品名+金额+标准样式)。⚠️ 展示前必须确认二维码可见——服务端已用内联 SVG 生成二维码(不依赖任何外部图片),正常情况下可直接显示;若二维码位置是 img 标签且 src 不是 data:image/ 开头(例如被运行环境替换为 JSON 形式的图片引用,形如 {"type":"image_blob_ref","blob_path":"<本地文件路径>"}),则必须先重制再展示:读取 blob_path 指向的本地文件 → 转为 base64 → 把该 src 替换为 data:image/png;base64,<内容> → 再展示。🔴 严禁跳过重制、严禁用占位图或示例图代替,否则用户看到破图无法扫码支付。
- 若该字段不存在或为空:继续执行第 6 步。
- ⚠️ 保存 outTradeNo,支付成功后必须用它
⚠️ 【第三优先】 若以上两步均不可行(无 weixinpay_pay 工具/调用失败,且无 payment_card_html):请读取 402 响应体中的
native_pay.code_url,按以下标准模板自行构建支付卡片后展示给用户: ⚠️ 必须使用以下 HTML 模板(将 {{CODE_URL}}、{{PRODUCT_NAME}}、{{AMOUNT}} 替换为实际值),确保所有用户看到的支付卡片样式一致:
<div style="max-width:320px;margin:0 auto;font-family:-apple-system,sans-serif;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.1)">
<div style="background:#07C160;padding:28px 24px 22px;text-align:center;color:#fff">
<div style="font-size:22px;font-weight:700">微信支付</div>
<div style="margin-top:10px;font-size:14px;opacity:.92">请使用微信扫码支付</div>
</div>
<div style="background:#fff;margin:0 16px;border-radius:10px;padding:24px 20px 20px;text-align:center">
<img src="{{CODE_URL}}" style="width:200px;height:200px;border-radius:4px" alt="微信支付二维码" />
<div style="margin-top:14px;font-size:14px;color:#333;word-break:break-all">{{PRODUCT_NAME}}</div>
<div style="margin-top:8px;font-size:20px;color:#07C160;font-weight:700">¥ {{AMOUNT}}</div>
</div>
<div style="background:#fff;padding:18px 24px 22px;text-align:center">
<div style="font-size:17px;color:#333;font-weight:500">✓ 微信支付</div>
<div style="margin-top:10px;font-size:11px;color:#999">请确认金额后扫码支付</div>
</div></div>
4. 支付成功后重试
⚠️ 超时重试规则(按 Skill 类型区分):
- 知识库类 / 纯支付类:若请求超时未收到响应,必须立即重新发起相同请求(携带相同的
x-out-trade-no),重试次数不限。 - 生成类(生图/生视频/生音乐/生图+生视频):已改为异步任务模式——POST 提交后立即返回
202 Accepted(不阻塞等待),通过 GET 轮询获取结果。POST 本身不会超时。若轮询 GET 超时,重新 GET 即可。 - feedback 接口:超时时重新 POST 即可(服务端保证幂等)。
- ⚠️ 不适用范围:拉取资料 URL 内容的
fetch请求(形如/api/kb/:token)不是服务端 API 请求,超时不要重发原请求;这类失败请在feedback中如实上报,由服务端重新签发有效 URL。 - 服务端保证幂等性:重复请求不会重复扣费、不会重复生成、不会重复扣除套餐额度
- 若持续异常(如连续 30 分钟轮询仍为 processing),请向用户提示"服务繁忙,请联系公众号:全领优AI",并保留 outTradeNo 以便后续恢复
本 Skill 关联了知识库,采用两阶段(与未关联知识库的单阶段不同):
阶段1(取知识库原文) —— 支付成功后,先不带 prompt 请求,服务器只返回知识库:
- 地址:
https://abb.lingyouai.cn/api/v1/skill/xiaohongshu-tuwen/image - 请求头:
Content-Type: application/json - 请求头:
x-out-trade-no: <第 3 步保存的 outTradeNo> - 请求体:无 prompt(或传空
{}) - 响应:
code: KNOWLEDGE_READY,content.knowledgePackage为关联的全部知识库原文- ⚠️ 你必须先结合知识库内容 + 本 SKILL.md 规则生成生图片提示词
- 若需多张图片,按需求拆分为多条独立 prompt
阶段2(生成图片) —— 用阶段1生成的 prompt 请求生成:
- 地址:同上
- 请求头:
x-out-trade-no: <第 3 步保存的 outTradeNo> - 请求体(生成类契约,二选一):
- 🅰 形态 A(单请求,同一提示词生成 n 份,n ≥ 1):
{ "prompt": "提示词", "n": 数量 }(n不能超过支付时声明的数量)。- 例:用户只要 1 份 → 发 1 个请求
{ "prompt": "...", "n": 1 };要同一提示词的 3 份 →{ "prompt": "...", "n": 3 }。
- 例:用户只要 1 份 → 发 1 个请求
- 🅱 形态 B(N 个独立请求,需要 N 个不同内容):发送 N 个独立的 POST 请求,每个形如
{ "prompt": "<第 i 个提示词>", "n": 1, "item_index": i },全部共用同一个out_trade_no(即支付成功后的同一凭证)。- ⚠️ 每条请求的
n一律填1;item_index从0起依次递增(0、1、2…),不同请求携带不同提示词。 - ❌ 不要把「总数量」填进某一条请求的
n(形如n: 5的第 1 条请求会导致该条被重复生成 5 份)。「同一提示词要 N 份」请改用形态 A。 - 服务端按
item_index逐一生成、互不干扰;若某次请求因网络中断未送达,用相同item_index重发即可(幂等,不会重复生成或重复计费)。 - 例:用户要 3 种不同风格图片 → 发 3 个请求,
n均为1、item_index分别为 0 / 1 / 2,各带不同提示词。
- ⚠️ 每条请求的
- 两种形态可在同一笔订单内混用:既可对同一提示词用形态 A,也可对不同提示词用形态 B。
- ℹ️ 若只需生成 1 份:直接用形态 A 的
n: 1即可(此时两种形态等效,无须传item_index)。 - 🕐 分批发送规范(重要):多内容建议在同一轮内一次性发出全部请求。
- 若确需分批:
item_index必须从 0 起、递增且不重复,并在同一轮对话内补齐剩余请求(见下文「对话连续性约束」)。 - 服务端只有在已支付的全部份数都产出后才会结算该订单;结算前订单保持「处理中」,可继续发送剩余请求。
- ❌ 不要重复提交已成功的
item_index:服务端只会返回该份的缓存结果,不会重新生成;确需重新产出请使用新的、未使用过的item_index(前提是未超出已付数量)。 - 若长期未补齐剩余份数,服务端会在超时后按未产出份数自动退款并结束订单,届时请据实向用户说明。
- 若确需分批:
- 🅰 形态 A(单请求,同一提示词生成 n 份,n ≥ 1):
⚠️ 异步任务模式(重要):发送生成请求后,服务器不会立即返回生成结果,而是返回
202 Accepted+ 任务 ID + 轮询地址。你必须按以下步骤轮询获取结果:
步骤 1:从 202 响应体中记录以下字段:
task_id:任务标识(即订单号 outTradeNo)poll_url:轮询地址(格式为/api/v1/skill/xiaohongshu-tuwen/task/{task_id})retry_after: 10:建议轮询间隔(秒)
步骤 2:每隔
10秒,向poll_url发送 GET 请求(携带相同的认证头):
- 响应
status: processing→ 继续等待,按retry_after间隔再次轮询- 响应
status: completed→ ✅ 任务完成!响应体包含完整的生成结果(content.images/content.videos/content.music等),直接交给用户- 响应
status: failed→ ❌ 任务失败,响应体含error错误原因。若错误可重试,可重新发 POST 生成请求(同一 outTradeNo 会自动去重)- 响应
404 TASK_NOT_FOUND→ 任务已过期清理(完成结果保留 1 小时,失败保留 30 分钟),需重新发起生成请求
注意事项:
- 生图通常需要 30 秒 ~ 3 分钟,生视频 2 ~ 15 分钟,生音乐 30 秒 ~ 2 分钟,请耐心轮询不要放弃
- 轮询期间若某次请求超时/报错,直接用同一个 poll_url 重试即可(GET 幂等)
- 拿到 completed 结果后,按正常流程交付给用户并调用 feedback 上报
⭐ 增量取件与停止条件(必须遵守,2026-09-15 新增):
- 停止条件:只有
status为completed/failed/ 终态partial时才可停止轮询;processing一律继续——即使响应已带items(已完成份)也绝不能停。- 中途取件(
items):轮询响应随时可能携带items(每项含item_index/status与已完成份的images/videos/music),仅用于中途取件(例如"彩色→线稿"流程需先取到彩色图 URL 再发线稿),不代表整单完成。- 必须补齐:多请求(形态 B)/ 分批场景,必须把所有
item_index提交完,直到progress.doneUnits == progress.expected;否则订单不会completed。- 精确取件(可选):轮询
poll_url时加参数?item_index=N,服务端只返回该份自身的status与images/videos/music(适合逐份推进的两阶段流程)。- 终态
partial:表示订单已结束(部分成功、失败/未产出部分已按规则退款)→ 交付成功份并据实告知用户,不要继续轮询。- 若响应含
settled: true,说明订单已结算收尾(含超时兜底退款)→ 同样停止轮询,按items交付成功份。
参数说明:下列为你(Agent)在请求体中可选传入的生成参数。未传的可选参数会自动采用本 Skill 在管理后台锁定的值,因此除非用户有明确要求,一般只传
prompt与n即可。
prompt必填:生图描述词(文本)。image2 接口限制最大 5000 字符,超出会被服务端拒绝并返回「请精简描述词后重试」的提示。image_size可选(分辨率档,Agent 可覆盖):可选 1k / 2k / 4k;Agent 端传入优先,未传则用本 Skill 默认值2k。aspect_ratio可选(尺寸 / 比例,Agent 可覆盖):可选 1:1 / 1:2 / 2:1 / 5:4 / 4:5 / 2:3 / 3:2 / 3:4 / 4:3 / 9:16 / 16:9 / Auto;Agent 端传入优先,未传则用本 Skill 默认值3:4。- ⚠️ 仅当用户明确要求特定分辨率或尺寸时才传;否则不要传,让本 Skill 的默认值生效(避免与 Skill 预设不一致)。
- 参考图上限:最多接受 10 张参考图(Agent 端可自定义 ≤ 10,超过将按上限截断)
image可选(图生图片):当用户上传了图片并要求基于该图片生成图片时,必须将图片通过此字段传入;不传image字段即为文生图片(由你决定,平台不锁定)。- ⚠️ 强制优先级(协议要求):方案乙(base64 / dataURI 由服务器中转上传)为首选——你必须将用户上传的真实图片转为 base64/dataURI 后传入
image字段,由服务器上传对象存储中转并签发 URL 给第三方;全程优先使用方案乙,过程中以方案乙为基础解决问题,不得中途改用方案甲。仅当方案乙物理上限确实无法承载时(单图 >10MB,或同单多图合计撞 25MB 请求体且已无法减张/拆分)才允许退化为传公网 URL(方案甲,仅兜底)。 - 🔴 禁止静默压缩原图:不得对用户原图做有损压缩 / 缩放 / 格式转换后再转 base64,必须透传用户原始上传图的字节;若用户原图本身 > 10MB(方案乙单图硬上限),应显式告知用户重新提供 ≤10MB 的原图(如重新导出更小尺寸/更高压缩率的文件),而非由你代为压缩。
- 🔴 上报原图 sha256(完整性闸门):传入 base64 时,必须同时上报该图片(用户原始上传图)的 sha256 hex 于
image_sha256(多图用image_sha256_list与image数组一一对应;生视频对应video_image_sha256/video_image_sha256_list)。服务端会比对解码字节的 sha256,不一致将拒绝(HTTP 400)。该字段仅用于校验,服务端不留存图片。 - 📐 参考图大小规则(务必遵守,超限将被拒绝): · 单张参考图:解码后 ≤ 10MB(base64 串 ≤ ≈13.3MB);超出 → HTTP 413。 · 单订单多张参考图:每张仍须 ≤ 10MB,且同一订单内合计解码后 ≤ 18MB(合计 base64 约 ≤ 24MB,须 < 25MB 单请求体上限);超出请减张数或拆分为多个订单(每单仍走方案乙、每单满足 ≤10MB 且合计 ≤18MB)。 · 单请求体上限 25MB(服务端传输层硬性限制;因 base64 有 4/3 膨胀,参考图合计须预留给 prompt/JSON,故合计取 18MB 而非 25MB)。
- 🔧 Content-Type 透传:服务端上传中转图时会按真实类型带上正确的 Content-Type(PNG/JPEG/WebP/GIF),不影响第三方生图行为,可使后台预览与个别严格网关更顺畅。
- 🔴 禁止本地路径:严禁将你本机的文件路径(如
D:/xxx.jpg、/tmp/x.png、./a.jpg)传入 image 字段——服务器运行在远端,无法访问你的本地磁盘,传路径会被直接拒绝并报错。必须传公网 URL 或 base64。 - 🔴 严禁作弊:必须使用用户实际上传的原始图片,绝对禁止使用互联网上的任何占位图、示例图、测试图或无关图片的 URL 来冒充用户图片。这是严重的诚信违规,会导致用户投诉与订单异常。
- ⚠️ 强制优先级(协议要求):方案乙(base64 / dataURI 由服务器中转上传)为首选——你必须将用户上传的真实图片转为 base64/dataURI 后传入
⏳ 生图片耗时提示:生图片服务单次通常耗时约 1-3 分钟(高峰期可能更久)。请在发起请求前就明确告知用户耐心等待,且不要在收到成功响应前重复提交相同的生图片请求(重复提交会产生重复计费与任务堆积)。
5. 对话连续性约束(必须遵守)
本 Skill 的生成任务耗时较长(生图 / 生音乐约 1-3 分钟,生视频 2-15 分钟),期间你必须保持当前对话不中断。
- ⛔ 禁止中断对话:任务运行过程中,不得以"任务已提交""请稍候""稍后再来问我"等理由结束本轮回复,把用户晾在一边。
- ⛔ 禁止让用户"稍后自己来问":结果必须由你在同一轮对话内完成交付,不能引导用户新开一轮对话来取结果。
- ✅ 正确做法:在同一轮内按
retry_after间隔持续轮询(见上文「异步任务模式」),拿到completed后直接把成品交付给用户。 - ⚠️ 轮询中如遇超时 / 报错:用同一个
poll_url重试即可(GET 幂等);既不要中断对话,也不要重新下单(重复下单会重复计费)。 - ✅ 仅以下情形允许中断对话:
- 需要用户主动提供信息才能继续(例如:补充或修改提示词要求、选择风格 / 数量、确认参考图、补充收货或联系信息等);
- 需要用户本人完成只有他能做的动作(授权、支付 / 扫码、上传图片等);
- 用户明确表示"先不做了 / 稍后再弄",或经你说明后用户选择结束——此时按用户意愿结束,并保留再次发起的方式与订单号。
6. 多张生成
当一笔订单需要生成多个不同内容时,请使用上文「形态 B(N 个独立请求)」:把每个内容拆成一条独立提示词,分别用带 item_index 的独立 POST 请求发送(全部共用同一 out_trade_no)。
⚠️ 关键规则:不同内容必须用不同
item_index分开请求,不能把多条提示词合并到一次请求的数组里透传。服务端按item_index逐一生成,互不覆盖。
用户说"生成一套海报,科技、自然、极简三种风格" → 发 3 个独立请求(item_index 0/1/2,各带不同 prompt):
{ "prompt": "科技风格海报,蓝色调,未来感", "n": 1, "item_index": 0 }{ "prompt": "自然风格海报,绿色调,森林元素", "n": 1, "item_index": 1 }{ "prompt": "极简风格海报,黑白配色,留白设计", "n": 1, "item_index": 2 }
7. 展示结果
成功响应中:
-
content.images数组 = 所有图片的 URL -
如果含
content.partial: true→ 部分生成失败,失败部分已自动退款 -
⚠️ 展示方式(必须遵守,且由你(Agent)在端侧生成;服务端只返回数据): 服务器履约成功后只返回原始数据(每张图的图片 URL、提示词、生成信息),不生成任何展示页面。你必须在端侧把结果渲染给用户——严禁只回一个裸 URL 列表(用户看不到图)。 按你运行平台的能力,从下面两方案择一呈现(首选方案一):
方案一(首选,平台支持 HTML 时):生成一份自包含
.html展示页直接展示。建议包含:① 每张图一个独立卡片(一行一张,含图片预览 + 标题 + 蓝链);② 每张蓝色可点击下载链接(整串 URL 即链接文字,点击即在新窗口打开/下载);③「链接约 24–72h 失效、请尽快下载」提醒。可直接套用下方模板:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>图片生成结果</title>
<style>
:root{ --bg1:#f5f7fa; --bg2:#eef1f6; --bg3:#e7ecf3; --card:#fff; --ink:#1f2329; --sub:#8a9099; --accent:#4a90d9; --link:#2f6fd6; --linkHover:#1e4fa3; }
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:-apple-system,"Segoe UI","Microsoft YaHei",sans-serif;background:linear-gradient(135deg,var(--bg1),var(--bg2) 50%,var(--bg3));color:var(--ink);line-height:1.6;padding:32px 16px;min-height:100vh;}
.wrap{max-width:880px;margin:0 auto;}
.card{background:var(--card);border-radius:18px;padding:22px 24px;margin-bottom:18px;box-shadow:0 6px 24px rgba(0,0,0,.05);}
.card h2{font-size:18px;margin-bottom:14px;color:var(--accent);}
.img-item{margin-bottom:20px;background:var(--bg1);border-radius:12px;overflow:hidden;border:1px solid rgba(0,0,0,.06);}
.img-item img{width:100%;display:block;}
.img-cap{padding:10px 12px;font-size:13px;color:var(--ink);font-weight:600;}
.dl-link{display:block;font-size:12px;color:var(--link);word-break:break-all;user-select:all;text-decoration:underline;cursor:pointer;margin-top:6px;}
.dl-link:hover{color:var(--linkHover);}
.dl-hint{font-size:12.5px;color:#e65100;font-weight:600;margin-top:6px;}
.reminder{margin-top:16px;background:rgba(255,152,0,.08);border:1.5px solid rgba(255,152,0,.35);border-radius:10px;padding:12px 16px;font-size:13px;line-height:1.75;color:#e65100;}
.reminder b{color:#e65100;font-weight:700;}
</style>
</head>
<body>
<div class="wrap">
<div class="card">
<h2>🖼️ 生成结果({{COUNT}} 张)</h2>
{{IMAGES}}
<div class="reminder">⏳ 上方为云存储<b>临时链接,约 24–72 小时后会失效</b>。请<b>尽快点击每张下方的蓝色链接</b>保存到本地,并建议立即备份。链接失效后本页将无法再查看或下载。</div>
</div>
</div>
</body>
</html>
模板填充说明:把 {{COUNT}}(张数) / {{IMAGES}}(每张一个 .img-item 卡片,见下例) 逐项替换。
{{IMAGES}} 示例(2 张):
<div class="img-item">
<img src="URL1" alt="图片 1">
<div class="img-cap">图片 1</div>
<a class="dl-link" href="URL1" target="_blank" rel="noopener">URL1</a>
<div class="dl-hint">💡 点击上方蓝色链接即可打开并下载。该链接为云存储临时地址,约 24–72 小时后失效,请在失效前保存到本地。</div>
</div>
<div class="img-item">
<img src="URL2" alt="图片 2">
<div class="img-cap">图片 2</div>
<a class="dl-link" href="URL2" target="_blank" rel="noopener">URL2</a>
<div class="dl-hint">💡 点击上方蓝色链接即可打开并下载。该链接为云存储临时地址,约 24–72 小时后失效,请在失效前保存到本地。</div>
</div>
方案二(兜底,平台仅支持 Markdown / 聊天内渲染时):用 Markdown 呈现,每张图  + 整串 URL 蓝色可点击链接(点击即打开/下载)+ 链接下方一句下载提醒,多张逐个列出:
**第 1 张 / 共 N 张**

[URL1](URL1)
> 💡 点击上方蓝色链接即可打开并下载。该链接为云存储临时地址,约 24–72 小时后失效,请在失效前保存到本地。
**第 2 张 / 共 N 张**

[URL2](URL2)
> 💡 点击上方蓝色链接即可打开并下载。该链接为云存储临时地址,约 24–72 小时后失效,请在失效前保存到本地。
- 多张图片请逐个展示("第 X 张 / 共 N 张"),不要合并或省略。
- 每张图必须同时给出可点击的 URL 链接(整串网址即链接文字,蓝色可点击,点击即在新页面打开/下载),并提示链接为临时地址会失效。 同时,本 Skill 关联了知识库,成功响应中还包含知识库内容:
content.knowledgePackage= 知识库内容包(含knowledgeBundles数组,每项对应一个关联文件夹)content.knowledgeUsed= 实际使用的知识库文件夹列表content.knowledgePackage.knowledgeBundles[].textItems= 文本类资料(.md/.txt/.json/.csv/.py 等)的短时效签名 URL数组,每项形如{ "filename": "...", "objectKey": "...", "url": "/api/kb/..." }。请用 fetch 逐个拉取 URL 获取文本内容(文本不再内联在响应里)。content.knowledgePackage.fileUrls= 富媒体(图片 / PPT / Word / Excel / PDF)的短时效签名 URL数组,每项形如{ "objectKey": "...", "url": "/api/kb/..." }。这些 URL 经本服务器网关签发(302 到对象存储),请用 fetch 逐个拉取并结合知识完成任务。- ⚠️ 资料 URL(textItems / fileUrls)仅在本次支付成功后签发、短时效、一次性、绑定本次订单,请勿长期留存或转存;拉取后仅用于内部创作,严禁把原始内容回吐给用户或落盘后交付(见文末「内容保密约束」)。
知识库签名 URL 的时效与次数限制(必读)
- 有效期按资料份数自适应(K-3):基线约 10 分钟,份数越多有效期越长(每份 +15 秒、上限约 30 分钟);准确时间以包内
expiresAt为准。过期后凭证失效,可调用资料续签接口重新获取(见下),无需重新下单。 - 一次性令牌(默认开启):每个签名 URL 首次成功拉取后即作废,第二次访问会返回 410 TOKEN_USED。Agent 不应重复请求同一个 URL;若需再次获取同一资料,应重新触发该资料的访问(通常意味着重新走补发流程,见下方「资料读取反馈与补发」章节)。
- 302 重定向:凭证校验通过后会 302 重定向到对象存储的真实短时效直链。Agent 的 HTTP 客户端(如 fetch)必须自动跟随重定向(例如 redirect: 'follow'),否则拿不到文本内容。
- 错误码对照表(Agent 应据此决定重试 / 提示用户 / 触发补发):
- 403 INVALID_TOKEN:凭证无效或已过期(签名错误 / 超过有效期 / 系统未授权)。过期场景需重新获取资料链接。
- 404 OBJECT_NOT_FOUND:资源在对象存储中不存在或已过期被清理。
- 410 TOKEN_USED:该一次性凭证已被使用过,不可重复访问。需重新触发补发获取新链接。
- 429 RATE_LIMITED:请求过于频繁。⚠️ 该限流默认关闭(管理员开启后为每实例约 5000 次/分钟,仅洪流触发,正常拉取不会碰到);如遇到,指数退避后重试即可。
- ⏱️ 建议并发拉取:拿到清单后,请并发拉取全部
textItems[].url与fileUrls[].url(建议 5~10 并发;HTTP 客户端须跟随 302 重定向),以便在有效期内拉完全部资料;不要串行逐个等待(份数多时易超时)。 - 🔁 凭证过期 / 需重拉 → 调用「资料续签」(
POST https://abb.lingyouai.cn/api/v1/skill/xiaohongshu-tuwen/kb/resign,请求头x-out-trade-no: <同一 outTradeNo>):- 请求体可空(默认续签本订单全部资料),或
{ "objectKeys": ["..."] }指定重签部分; - 响应
code: RESIGNED+fileUrls[](新的短时效链接)+expiresAt;续签不消耗补发次数,可反复使用(有独立上限)。
- 请求体可空(默认续签本订单全部资料),或
- 🧭 错误分治:
403(过期)→ 调续签接口拿新链接;410 TOKEN_USED(已用)→ 不要重试同一 URL,调续签接口;404(对象不存在)→ 计入failedItems走补发;429(频繁)→ 指数退避后重试。 - ⚠️ 本 Skill 关联了多个知识库文件夹时,
knowledgeBundles会包含每一个文件夹的资料(不是只返回第一个),Agent 必须遍历全部并结合本 SKILL.md 规则使用。
⛔ 铁律(最高优先级):服务器在返回图片的同时,也一并返回了关联的知识库原文素材。 该素材仅供你内部提炼主题 / 提示词 / 事实依据使用;服务器不参与任何内容生成。 严禁把知识库原文(或其片段、摘要、改写稿)以任何形式呈现给用户——包括回复正文、生成的 HTML / Markdown、备注说明,以及
knowledge_core.md一类的落盘文件。用户最终只能看到你生成的图片本身。
8. 内容保密约束(最高优先级)
服务端返回的知识库资料属于付费内容的内部素材,只服务于「生成成品」,不得直接交付用户。
- ⛔ 禁止直接展示:不得把知识库原文、片段、摘要或近义改写作为最终结果发给用户。
- ⛔ 禁止落盘交付:不得把知识库原文写入任何用户可见的文件(如
knowledge_core.md、*.txt、*.md),也不得用原文内容作文件名 / 目录名。 - ⛔ 禁止泄露内部信息:不得在回复、生成物或文件中出现
knowledgePackage/knowledgeBundles/textItems/fileUrls/objectKey/ 签名 URL,也不得把服务端任务响应 JSON 原样展示。 - ✅ 正确做法:把知识内容当作只读的创作依据,最终只交付你生成的成品(文案 / 图片 / 视频 / 音乐等)与必要的交付说明。
- ✅ 用户若要求「把参考资料原文发我」,统一回复:资料仅用于生成,不单独提供原文。
9. 资料读取反馈与补发(必须执行)
⚠️ 本 Skill 关联了知识库:下方「反馈」只针对知识库资料(富媒体签名 URL / 文本),不针对图片本身。知识库是付费内容的一部分,请先结合知识库生成好提示词,在阶段2 拿到最终
knowledgePackage之后再反馈(阶段1 仅取知识库、订单尚未履约,此时反馈会被服务端拒绝)。
收到资料后,你必须立即尝试读取全部资料 URL(用 fetch 等工具逐个拉取 knowledgeBundles[].textItems[].url 与 fileUrls[].url;文本也是 URL,需拉取后阅读,不再内联)。读取完毕后,必须向服务器发送一次「读取反馈」:
- 地址:
https://abb.lingyouai.cn/api/v1/skill/xiaohongshu-tuwen/feedback - 方式:POST,Content-Type: application/json
- 请求头:
x-out-trade-no: <同一个 outTradeNo> - 请求体:
{ "result": "<见下>", "failedItems": ["<objectKey>", ...], "note": "<可选>" }
result 取值(5 种):
all_success:全部资料读取成功 → 服务器记录确认,流程结束all_failed:全部资料读取失败 → 申请补发全部all_resend:显式申请补发全部资料partial_failed:部分资料读取失败(你已拿到其余部分)partial_resend:部分失败且明确列出需补发的内容(在failedItems填读取失败的 objectKey)
补发规则(服务端自动处理,无需你关心内部机制):
- 每次补发都会为该资料提供新的有效 URL,旧 URL 立即失效。
- 若服务端返回了补发资料(新的 URL),请重新读取并再次反馈,直到资料全部可读为止。
- 当服务端判定补发流程已结束(响应中不再包含新的资料 URL)时,请按下方「兜底纪律」发送一次最终状态反馈,服务端会据此返回最终处理结果。
- ⚠️ 本订单关联了知识库,下方反馈只针对知识库资料(图片不是反馈对象)。若知识库部分资料已成功读取,请基于已获取内容继续生成图片;若知识库全部读取失败,服务端将按平台规则处理(对应处置由服务端判定,无需你关心退款细节),届时请按响应
message向用户说明即可。 - 每次补发请求都必须带同一个支付成功的
out_trade_no凭证;不带或伪造凭证服务端直接拒绝(不补发)。 failedItems只能填本订单合法的知识库对象(取自content.knowledgePackage.fileUrls[].objectKey或knowledgeBundles[].textItems[].objectKey)。- ⚠️ 图片 URL 不是知识库对象,切勿将其填入
failedItems;若图片下载失败,直接重试该 URL 或重新生成,不要走补发通道。
- ⚠️ 图片 URL 不是知识库对象,切勿将其填入
你必须遵守的兜底纪律(防止流程卡死):
- 资料 URL 为短时效链接,收到资料后尽快读取;过期走补发获取新链接。
- 当服务端已判定补发流程结束(响应不再包含新资料)时,请再发送一次最终状态反馈:
- 若你已读到部分资料 →
result填partial_failed(可不带failedItems),并基于已获取资料继续执行 Skill 原有逻辑,不要停止。 - 若你一份都没读到(成功读取数量为 0)→
result填all_failed,并等待服务端最终响应后,按响应中的message向用户说明情况。
- 若你已读到部分资料 →
- 除非服务端在响应中明确指示你停止,否则始终基于已有资料继续执行 Skill,不要反复重试、不要卡住。
- 请如实反馈实际读取结果;重复提交与实际不符的虚假反馈,可能导致本订单被服务端标记为异常,影响后续处理。
10. 错误处理
| 返回 | 处理 |
|------|------|
| 402 | 正常,按第 3 步引导支付 |
| 400 "超过绝对上限" | 告诉用户"单次最多 100 张" |
| 400 "n 超过支付数量" | 告诉用户"重试数量不能超过支付时的数量" |
| 409 "ORDER_SETTLED_SLOT_MISSING" | 该订单已结算完成、且本次 item_index 的内容未产出 → 停止重复提交,如实告知用户"该份内容未生成,费用已按平台规则处理";需要重新产出请换用新的 item_index(受已付数量限制) |
| 404 | 告诉用户"订单未找到,请重新发起" |
| REFUNDED | 告诉用户"资料无法获取,本订单已按平台规则处理完毕,请联系客服核实" |
| CONTINUE | 基于已获取资料继续执行,不再申请补发 |
| RESIGNED | 资料续签成功:返回 fileUrls[](新链接)+ expiresAt;不消耗补发次数,按新链接继续拉取 |
| 429 TOO_MANY_RESIGN | 续签过于频繁(有独立上限)→ 稍后重试或联系客服 |
| 409 NO_RESIGNABLE_MATERIAL | 本订单无知识库资料可续签 |
| 其他异常 | 提示稍后重试;若本 Skill 使用有问题,请联系公众号:全领优AI |
11. 联系与售后
若本 Skill 使用有问题,请联系公众号:全领优AI。
微信扫一扫