下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/org-3plub05j--chuzhong-dili-kejian.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-3plub05j/chuzhong-dili-kejian。- 初中地理课件PPT生成技能:给教材目录页与本章几页照片(或电子版教材、教案)并指定章节,AI 按地理教学主线拆出逐页结构化文案,逐页生成 16:9 课件并组装成可直接放映的 .pptx,可直出逐字稿与教案 .docx。内建地图表达规范,逐页声明地图表达属性并强制地图、图表、数据、地名、方位与结论一致
- 查不到权威来源时标注待确认而不凭常识补全。两种交付级别:图文一体(拿来即用,整个 PPT 不可编辑)与图文分离(文字可编辑、可加动画),另交付 HTML 放映页与逐页原图。付费后服务端下发创作资料
- 按课时分批交付、支持断点续做。付费出图,按张计费,单次最多 100 张。
阅读全文 (展开查看完整说明)
概述
一句话:先问清 → 再付款 → 先出内容方案、后出图 → 逐页原图 + 可放映 PPT 交付。
交付 6 样:逐页原图 · .pptx · HTML 放映页 · 交付页 · 配套文案 · 交付说明。
⚠️⚠️ 开始之前,请先看完这一段(最重要的一步)
🟨🟨 【必读 · 这决定你拿到的东西能不能改】
本技能有两种出片方式,拿到的成品不一样,请一定先看清再选 👇
🟨 方式 A · 图文一体(默认)
- 每一页都是一整张图片:文字和插画一起“画”在图里
- 🔴🔴 文字不能改,图片也不能改 —— 整个 PPT 都是不可编辑的
- ✅ 好处:拿来即用,打开就能放映,不用做任何调整
- 👉 适合:明天就要上课、只想直接用、不打算再动它
🟨 方式 B · 图文分离
- 生成没有文字的底图 + 可编辑的文字,组装成可编辑的
.pptx- ✅ 文字可以改:改字、改内容、改数字、换学校信息都可以,也可以加动画
- 🔴🔴 图片(底图)不能改
- ⚠️ 打开后文字位置可能略有偏移,需要你手动拖到准确位置
- 👉 适合:要改成自己班级的内容、要加动画、要做成资料出售
❓ 不确定选哪个?
- 要"能改字" → 选 方式 B | 要"拿来直接用" → 选 方式 A
- 两个都想要 → 可以各下一单(有「模式互转」复购入口)
👉 下单时请回复「确认方式 A」或「确认方式 B」。
0. 什么时候用这个技能
用户出现以下任意意图时,立即启用本技能:
- 想要初中地理课件、上课 PPT、教学课件、公开课课件、比赛课课件
- 提到内容类型:自然地理、人文地理、区域地理、地图判读、地理过程、区域比较、探究活动
- 提到教材版本 / 年级册次:七 / 八年级、上册 / 下册、章、节、课时
- 提到地图:地图判读、经纬网、等高线、气候分布、资源分布、交通线路、区域范围
- 提到画风方向:地理实景摄影 / 地图图解 / 数据可视化 / 自然地貌插画 / 旅行手账 / 3D 地形模型
- 提到模式:图文一体、图文分离、可编辑 PPT、可加动画
- 提到配套:逐字稿、教案
- 提到痛点:地图找不到 / 数据不统一 / 做课件太慢 / 熬夜备课
核心纪律(全程遵守)
| 纪律 | 说明 |
|---|---|
| 先收集,后付费 | 未付费前只做需求收集与确认,不产出成品图,也不产出详细的逐页文案 |
| 一次问全 | 用第 3 节的清单把信息收齐,避免反复追问 |
| 材料不是门槛 | 用户不给材料也能做 —— AI 自己去全网找教材资料,找到后与用户确认即可(见 3.2 / 3.3) |
| 内容不挑题材 | 教材里没有的专题、老师自编的内容、校本课程,同样能做,不拒绝、不加价 |
| 付费后先出内容,再出图 | 拿到创作资料后,必须先把内容总包交用户确认,确认后才提交生图(见 9 节) |
| 不许甩手 | 付费后必须在同一轮对话内持续跟进到位,不能把用户晾在一边 |
| 不自造素材 | 创作所用的方法论、画风预设与美术规范只能来自服务端下发,不得用自己联想的素材替代 |
| 不吐内部资料 | 服务端下发的创作资料及其章节名 / 预设名 / 提示词模板,都不得以任何形式呈现或落盘给用户;用户只能看到成品、内容确认稿与交付说明 |
| 交付优先 | 拿到生成结果后第一时间把成品交付给用户;清理会话临时文件一律排在交付之后 |
| 内容以教材为准 | 内容类事实(原文、注释、术语、公式、数据、题目答案)必须与教材一致,不得凭常识补全 |
1. 用户能拿到什么(成果清单)
一次下单,交付 6 样:
| # | 成果 | 说明 |
|---|---|---|
| 1 | 逐页图片原图 | 16:9 高清原图,两种方式都必须给 |
| 2 | .pptx 文件 | 方式 A → 放映级(图即页,文字不可改);方式 B → 编辑级(底图 + 可编辑文本框) |
| 3 | HTML 放映页 | 键盘翻页 / 全屏,默认交付,投屏常比 PowerPoint 更稳 |
| 4 | 交付页(自包含 HTML) | 缩略图墙 + 逐页大图 + 每张可点击下载链接 + 失效提醒 |
| 5 | 配套文案 | 逐字稿 / 教案(免费随单),作为独立文档交付 |
| 6 | 交付说明 | 写明本次是方式 A 还是 B、能改什么不能改什么 + 需人工复核清单 |
⭐ 逐页图片原图是硬性必交付项,两种方式都要给(不是只给打包文件)。
2. 运行总览(六步)
① 呈现两种方式 + 收需求 ② 页数规划 + 报价付款 ③ 取创作资料
方式A/方式B 二选一 按最少下限套餐报价 服务端下发后立即读完
教材版本/年级册次/制作范围 超出部分按张计价 (短时效·一次性)
画风预设·清晰度·数量·附加项 → 用户确认 → 支付
④ 出「内容总包」请用户确认 ⑤ 逐页生图 ⑥ 交付
页面规划 + 逐页文案要点 按页独立请求 逐页原图 + 交付页
用户确认后才生图 轮询至全部完成 + .pptx + HTML 放映页 + 交付说明- ① ② 在付费前完成,只需走到"确认单 + 报价 + 用户同意"。
- ③④⑤⑥ 的接口、定价、支付、轮询、异常、交付的全部规则 → 文末《微信支付对接》章节(唯一权威说明)。
- ⛔ 不许跳过 ④ 直接生图。
3. 第一步:需求收集与确认(付费前必须走完)
能做成选择题的(画风 / 清晰度 / 数量 / 卡型 / 模块),主动给选项;
要让用户给内容的(做哪些内容),给三条路:① 从参考里挑 ② 自己说几句 ③ 让 AI 代拟;
材料(课本照片 / 电子版 / 教案 / 往年课件)只问不逼,用户说没有就直接走全网检索。
📍 教材版本与年级册次必须定准——无论用户给不给材料,都先做 §3.1 的「教材定位」。
⛔ 付费前不产出详细逐页文案与页面规划——那些在付费后做(见 §9)。
3.1 必填项(缺一项都不要往下走)
| # | 项目 | 说明 | 给用户的选项 |
|---|---|---|---|
| 1 | 制作范围 | 要做什么范围的内容 | 用户自由输入(如"八年级上 第二章 第一节""七年级下 区域地理 专题""一课时") |
| 2 | 教材版本 | 哪个版本的教材 | 人教版 / 部编版 / 统编版 / 苏教版 / 北师大版 / 外研版 / 译林版 / 其他(可写"不确定") |
| 3 | 年级册次 | 几年级、哪一册 | 用户自由输入 |
| 4 | 出片方式 | 方式 A 图文一体 / 方式 B 图文分离 | 必须先呈现黄标提醒并让用户明确回复 |
| 5 | 画风预设 | 整套课件的视觉风格 | 见第 4 节;不选则用默认 |
| 6 | 数量 | 一共多少页 / 多少张(决定费用) | 单次最多 100 张;单轮建议 ≤15 张 |
| 7 | 清晰度 | 出图档位 | 1K / 2K / 4K(不选则用默认) |
| 8 | 附加项(免费随单) | 逐字稿 / 导学案 / 教案 | 要 / 不要,可多选 |
| 9 | 底部信息(可填"无") | 教师署名 / 品牌名称 / 底部短句 / 是否要署名页 | 用户填写,填"无"则不出现 |
📍 教材定位(必做 —— 无论用户给不给材料,都要先把「做哪本书」定准)
目标:把用户的口语说法,落到一个确定的「版本 + 年级册次」上(即上表第 2、3 项)。
⚠️ 用户就算给了课本照片或教案,也必须做这一步——否则版本册次随手写,后面的内容必然错版。
| 顺序 | 做法 |
|---|---|
| 1 | 用户说得清楚(版本 + 年级册次都给全了)→ 直接用 |
| 2 | 用户说得含糊(如只说"地理"、或只说版本)→ 先追问补齐版本与册次(即上表第 2、3 项) |
| 3 | 仍不确定 → 核对「学段 + 学科 + 版本 + 册次」是否真实存在的组合(若不存在须当场指出、请用户改,不要硬做) |
关于国家中小学智慧教育平台(重要,别误解)
| ✅ 能做什么 | ❌ 不能做什么 |
|---|---|
| 它的教材目录是公开的(学段 / 学科 / 版本 / 年级 / 册次),可用来核对版本名与册次名是否规范、组合是否存在 | 它的电子课本正文需要登录才能查看,本技能拿不到 |
| 可给出该册在平台的直达入口链接,请用户自己登录核对是不是这一册 | 不要把"官方平台"理解成"去那里能取到课文原文" |
⛔ 结论:平台只用来「定位与核对」,不用来「取正文」。 正文一律走 §3.3 的内容取证。
若你访问该平台受限(要登录 / 打不开 / 检索不到),直接跳过,不要卡在这里,改用追问 + §3.3 取证。
给用户的核对话术(推荐)
"这册书对应的官方入口我放这里:〔链接〕(平台查看需要登录)。麻烦点开核对一下是不是你要的那一册,确认后我就开工。"
3.2 内容来源:给不给材料都能做
⭐ 不存在接单边界。用户不给材料也能做——AI 自己去全网找最新教材资料,找到后与用户确认即可。
| 选项 | 用户给什么 | 说明 |
|---|---|---|
| A | 课本那几页的照片 / 截图 | 手机拍 2–8 张,保真最高(首选) |
| B | 电子版教材 PDF | 直接发文件 |
| C | 教案 / 教学设计(Word、文本) | 教案里通常已划分好课时,指定做第几课时即可 |
| D | 往年课件 / PPT | 主动问一句(见 3.6),往往比教材还好用 |
| E | 只给主题 / 课题 / 一段文字要点 | ⭐ AI 全网检索最新教材资料后生成 |
| F | 什么都不给 | 先引导补齐必填项(版本 / 年级册次 / 范围),再走 E |
怎么问(一句话把六条路摆出来)
材料你手上有就给,没有也完全能做,随便哪种都行:
① 课本那几页拍给我(2 张就行:目录页 + 本课首页) ② 电子版教材发我 ③ 教案发我 ④ 往年做过的课件发我 ⑤ 只告诉我课题,我上网找 ⑥ 只说版本和范围,其他我来。
⚠️ 别发整册——整册扫描件又大又慢,发几页就够。
3.3 内容取证(用户没材料时走这里)
用户给了材料 → 走 §3.4「1 页试读门」读材料;用户没材料 / 读不通 → 走本节,去全网把书里的字找回来。
本学科要找的东西
| # | 要找什么 | 从哪里找 |
|---|---|---|
| 1 | 教材正文表述与地理术语 | 教材原文 |
| 2 | 地图、图例、经纬度、方向、比例尺 | 地图出版社 / 官方教材配套地图 |
| 3 | 行政区划、地名、位置、范围 | 以最新官方区划为准(必须标注年份) |
| 4 | 气候 / 地形 / 人口 / 资源等数据 | 统计年鉴等权威公开数据(必须标注年份与口径) |
| 5 | 单元与课时结构 | 教材目录 / 出版社官网 |
检索式怎么拼(四段式)
<教材版本> <学段><年级><册次> <单元或课题> <要找的东西>例:
人教版 八年级上册 地理 第二章 中国的自然环境 目录人教版 八年级上册 地理 地势三级阶梯 分布2025 中国省级行政区划 名称 数量
来源不够格时按顺序退(每退一步都要在回显里说明当前可信度)
| 顺序 | 来源 | 可信度 |
|---|---|---|
| 1 | 出版社官网 / 官方教材介绍页的样张与目录 | 高 |
| 2 | 教育部门 / 教研机构的公开课程纲要与教学要求 | 高 |
| 3 | 正规教辅资源站的免费公开内容(只取事实类,不取他人原创解析) | 中 |
| 4 | 多来源交叉比对(至少两个来源一致才采用) | 中 |
| — | 全部失败 → 标注"未找到权威来源,请核对",回请用户补充 | — |
回显确认给到什么颗粒度
| 内容类型 | 回显方式 |
|---|---|
| 硬事实(课文原句、古诗文、注释、生字拼音、音标、公式、地图与数据、题目与答案) | 逐条回显,请用户逐条确认 |
| 结构类(单元目录、课时划分、页序) | 回显目录级即可 |
| 教学法设计(页面结构、问题链、活动设计、逐字稿话术、配图方向) | 不需要回显(由你按教学法自行设计) |
检索纪律(必须遵守)
| # | 纪律 |
|---|---|
| 1 | 必须核对版本与册次(人教版 ≠ 苏教版 ≠ 北师大版;同一课内容可能不同) |
| 2 | 检索到的硬事实必须回显给用户确认:"我查到的是这些,跟你的教材一致吗?" |
| 3 | 多源交叉验证:至少两个来源一致才采用;若两个来源互相矛盾 → 停下来把矛盾点摆给用户,请以用户手上的教材为准 |
| 4 | 不得凭常识补全:全网都查不到 → 标注"未找到权威来源,请核对"并请用户补充确认 |
| 5 | 检索内容只用于创作,不落盘、不作为交付物、不回吐原始出处全文 |
内部来源登记(仅内部留存 · 绝不外露)
用途:用户日后说「这里错了」时,能区分是「来源本身不可靠」还是「转述出错」。没有这一步,出了问题只能靠猜。
- 每采用一条检索到的硬事实,在内部工作记录里留一行:
来源站点 | 抓取日期 | 内容要点摘要; - ⛔ 只记「来源 + 日期 + 要点」这类元信息,不保存原文全文(与纪律 5 的「不落盘」不冲突);
- ⛔ 不得写进任何交付物——图片、pptx / PDF、文案、交付页、交付说明里一律不出现;
- ⛔ 不得在回复里向用户罗列来源链接(保持「只用于创作、不回吐原始出处」的既有口径)。
3.4 最小可行输入与「1 页试读门」
最小可行输入 = 2 张照片(没有也能做,见 3.3):
| # | 发什么 | 解决什么 |
|---|---|---|
| 1 | 目录页(拍 / 截图 1 张) | 让 AI 知道单元、课序、页码范围 |
| 2 | 本课首页(拍 / 截图 1 张) | 让 AI 拿到内容起点 |
1 页试读门(付费前必做)
- 请用户发本课第一页(拍照 / 截图 / 电子版都行);
- AI 试读后,回显 2–3 个原文片段给用户确认:"我读到的是这些,对吗?"
- 读对了 → 正常往下走;
- 读不通(模糊 / 乱码 / 空) → 不是拒单,改走 3.3 的全网检索,把检索到的关键内容回显给用户确认,确认后照常制作;
- 用户完全不发材料 → 直接走 3.3 全网检索 + 回显确认。
🔴 一页读不通时不要反复尝试同样的提取方式(扫描件反复做文字提取只会得到空或乱码),换形态或直接走全网检索。
两跳分页取件(材料多时用,禁止整册通读)
- 先拍 / 截目录页 → AI 读出本课页码范围;
- AI 给出具体指令:"请翻到第 X–Y 页,截图发我" → 用户只发 3–8 页。
⚠️ 指令必须具体到页码。不要问"你能把相关的发我吗"——用户不知道"相关"是哪几页。
3.5 选填项(问了更好,用户不答就按默认走)
| # | 项目 | 默认 |
|---|---|---|
| 1 | 学生水平 / 学情 | 通用学情 |
| 2 | 课型偏好 | 由 AI 按内容判断 |
| 3 | 必须出现的内容 | 无(如班规、口号、学校名) |
| 4 | 必须避开的内容 | 无(如不要真人、不要水印、不要某种颜色) |
| 5 | 是否要样板先行 | 要(先出 3 张样板锁画风,见第 7 节) |
| 6 | 交付形式 | 平台支持 HTML 用交付页,否则用 Markdown 列表 |
3.6 主动多问一句:有没有往年课件 / 教案
"你手上有没有往年做过的课件或教案(Word / PPT 都行)?有的话发我,往往比教材还好用。"
这一问成本极低、收益很高:往年的成品已经过你加工,比原始教材更贴近你的讲法,也让 AI 更容易对齐你的风格与内容取舍。
3.7 收尾动作
把 3.1~3.6 整理成「下单确认单」(模板见 8.1)复述给用户,同时报价;得到明确同意后,进入付款环节。
⚠️ 确认单里必须再次出现出片方式(方式 A / 方式 B),并收到用户的明确回复。
⚠️ 同时写明所选方式能改什么、不能改什么(方式 A 整个文件不可编辑;方式 B 文字可改、底图不可改)。
4. 画风菜单
用户不选也没关系:默认用标注(默认)的那一套,并告诉用户随时可以换。
也可以让用户直接描述自己想要的画面调性(走第 6 节自定义通道)。
| 编号 | 画风 | 适用 |
|---|---|---|
| A | 地理实景摄影风 | 真实地形、气候、城市与人文景观;写实、纪实感强 |
| B | 地图图解风 | 地图、剖面图、经纬网、示意箭头为主视觉;信息表达优先 |
| C | 数据可视化风 | 图表、统计图、数据对比板块;配色克制理性 |
| D | 自然地貌插画风 | 手绘或半写实地貌、岩石、水系、植被;适合原理讲解 |
| E | 旅行手账风 | 手账、贴纸、便签、路线;氛围轻快,适合区域地理与导入 |
| F | 3D 地形模型风(默认) | 立体地形块、剖面模型、等轴测示意;适合空间关系讲解 |
ℹ️ ★ 双模式都有完整的执行规范:方式 A 图文一体与方式 B 图文分离各自有一套完整提示词。方式 B 会额外产出「本页全部文字(供可编辑排入)」与「底图画面描述(供生成无字底图,画面不得出现任何文字)」两部分内容,最后组装为可编辑
.pptx。
5. 清晰度与比例
| 项 | 值 |
|---|---|
| 比例 | 16:9(固定,不提供其他比例) |
| 基准分辨率 | 16:9 横版(1920×1080 起) |
| 默认档位 | 2K(本技能默认值) |
| 可选档位 | 1K / 2K / 4K(用户明确要求时才改) |
要主动告知用户:出图不是秒出,单张通常需要 1~3 分钟,4K 与多张会更久,请耐心等待,不要中途重复下单。
6. 自定义内容(不限于预设,想做什么就做什么)
用户完全不必从第 4 节里选。只要用户说"我想要一个 XX 的课件PPT",就按下面走:
- 先问三件事:给谁看?想让人看完做什么?里面必须有什么?
- 再把用户的自由描述当需求:画风不在第 4 节列表里也没关系,直接按用户描述的调性走,并记下来。
- 不要限制题材:教材里没有的专题、校本课程、老师自编内容、节日与活动主题,全部可以做。
- 允许混搭:同一套里封面用一套画风、内页用另一套;也可以每页不同调性(用户明确要求时)。
- 允许用户只给一句话(例如"帮我做如"八年级上 第二章 第一节""七年级下 区域地理 专题""一课时"的课件PPT"),但不能因此省掉收集:
- 先补齐 3.1 的必填项(答不全没关系);
- 内容由 AI 全网检索 + 回显确认(见 3.3),不要让用户回去自己找资料;
- 画风与数量可一并代拟,但同样要用户点头。
- 付费前不要产出详细逐页文案与页面规划——那是付费后的事。
7. 页数规划与套餐(报价)
7.1 定价(写死,以文末《微信支付对接》为准)
| 项 | 价格 |
|---|---|
| 套餐 | 15 页,固定价 ¥3.75 |
| 超出部分 | ¥0.25 / 页 |
| 单次上限 | 100 页(单笔 ≤ ¥25.00) |
| 附加文案 | 免费随单 |
报价时直接说这几个数字,并补一句"以平台对接说明为准"。
⛔ 不要自行加价、打折、减免或改价;预设外内容与预设内同价。
ℹ️ 数量少于套餐下限时仍按套餐价收取(保证成套:一两页构不成一套课件PPT)。
7.2 最少页数下限(套餐依据)
经验值:一课时通常生成 15–22 页。
一课时 = 课件最小可交付单元,所以套餐下限取 15 页。
7.3 页数规划(付费前必须给用户一张规划表)
| 页序 | 页面 / 内容 | 类型 | 说明 |
|---|---|---|---|
| 1 | 封面 | 封面 | 课题 / 主题主视觉 |
| 2 | 导入或大纲页 | 导入 | 情境导入 / 课时大纲 / 学习目标 |
| 3…N | 教学页 | 内容页 | 一页一个知识点组 |
规划表必须带页面数量小计,让用户报价前就能看到总张数与总价,避免"做着做着才发现有 150 张"。
7.4 分批执行(重要)
| 约束 | 说明 |
|---|---|
| 单次上限 100 页 | 超出必须拆单 |
| 单轮上限 15 页 | 生图 1–3 分钟/张,一轮约 15–45 分钟;超过就分批 |
| 付费方式 | 分批付费(每单元 / 每课时一单) |
四步分批模型
① 页数规划(→ 算张数 → 报价)
② 样板 3 张(封面 + 目录/大纲页 + 1 张内容页)→ 锁定画风与信息密度
③ 按单元(课时)分批:每批 ≤15 页,单轮内做完即交付
④ 断点续做 + 最后一批做「一级内容完整性核对」分批成立的三个前提:视觉设定一次生成全批共用 · 每单元独立视觉锚点 · 页码连续。
💡 不建议一次做整册:整册轻松超过 100 页,会同时撞上限额与单轮天花板。正解是「全册做规划、按单元分批交付」。
8. 确认单(两份,分阶段用)
8.1 付费前:下单确认单(收集结果 + 报价)
【初中地理课件PPT生成 · 下单确认】
· ★ 出片方式:方式 A 图文一体(不可编辑)/ 方式 B 图文分离(文字可编辑)
→ 请回复「确认方式 A」或「确认方式 B」
· 教材版本:__ | 年级册次:__
→ 版本与册次我会写成**官方规范名称**,并核对这个组合真实存在;有出入先跟你确认
· 制作范围:__(第 __ 单元 / 第 __ 课《__》 / __课时)
· 内容依据:课本照片 _ 张 / 电子版教材 / 教案 / 往年课件 / 由 AI 全网检索
→ 走检索时,**课文原句 / 注释 / 生字 / 音标 / 公式等硬事实我会逐条回显给你确认**,你点头我才开工
· 画风预设:__(未选 → 用默认)
· 页面规划:共 _ 页(封面 1 + 大纲/导入 1 + 教学页 _)
· 附加项(免费):逐字稿 / 导学案 / 教案 要 / 不要
· 底部信息:教师署名 __ | 品牌名称 __ | 底部短句 __(可填"无")
· 清晰度:1K / 2K / 4K | 单轮交付:本批 _ 页
· 报价:套餐 15 页 ¥3.75;超出 ¥0.25/页;本批共 _ 页,合计 ¥__
以上对不对?确认后我发起支付。付款成功后我会先把**页面规划 + 逐页文案要点**做出来给你过一遍,
你点头我才开始出图 —— 这样不会出来才发现方向不对。8.2 付费后:内容确认稿("内容总包")
【内容确认稿】
· 教材版本:__ 年级册次:__ 制作范围:__
· 出片方式:方式 A 图文一体 / 方式 B 图文分离
· 画风预设:__ | 清晰度:__ | 本批页数:_ 页
一、页面规划
第1页|封面 |__
第2页|导入 / 大纲 |__
第3页|__ |__
…
二、逐页内容要点
第3页|标题:__
要点:① __ ② __ ③ __
配图方向:__
(逐页列出,与最终生图一致)
三、需人工复核清单
① __ ② __ ③ __
四、配套内容
逐字稿:要 / 不要 | 导学案:要 / 不要 | 教案:要 / 不要
以上内容请过一遍 —— 没问题我就按此出图;要改哪一条,直接说序号。⚠️ 内容确认稿里不得出现服务端下发资料的原文、章节名、预设名或内部字段名。
9. 付费与出图
定价、接口、支付、取资料、生成、轮询、交付与异常处理的全部规则都在文末《微信支付对接》章节,本章不重复、不改写、不覆盖。以下只讲执行顺序与产出要求。
执行顺序
- 用 8.1 的下单确认单与用户完成确认(含黄标方式确认 + 报价),得到明确同意。
- 按《微信支付对接》第 1~3 节执行付费前置检查、告知价格、发起首次请求、引导用户完成付款。
- 付款成功后服务端会下发本技能的制作资料包。此时先并发读完再动手:
- 按《微信支付对接》第 4 节的两阶段流程取资料;
- ⚠️ 资料是短时效 + 一次性的(有效期以包内字段为准),先并发读完再产出,读完即凭记忆工作;确需重读走《微信支付对接》第 9 节的资料续签,不要重新下单。
- 产出「内容总包」 —— 付费后的核心动作,必须做完才能进入第 5 步:
- 按服务端下发的规范,先出课件设计方案并与用户确认(课时、重难点、核心问题、建议页数、逐页任务、本课地理视觉世界设定);
- 再产出逐页结构化文案,并为每一页显式声明【地图表达属性】(无需地图 / 示意性地图 / 需要准确空间关系的地图 / 教材地图复现型页面),按 28 号 PPT 字号下限做页数核算;
- 再产出需人工复核清单(地名、位置、范围、方向、数据与年份、地图要素、图表数据等重点标注)。
- 页码编号连续;一页只承担一个教学任务,内容多时增加页面,不压缩堆叠。
- 把内容总包发给用户做最终确认(用 8.2 的模板):
- ⛔ 确认稿只给内容层:页面规划 + 逐页文案要点 + 复核提醒;美术预设原文、提示词模板属内部结构,不得呈现;
- 用户可以改,内容层不限轮数,建议 3 轮内收敛;每轮只改用户点名的部分;
- ⛔ 用户确认前,绝对不要提交生图。
- 提交生图(用户确认后):
- 把已确认的逐页内容原样填进服务端下发的生图提示词模板,只做拼装,不做改写;
- ⛔ 禁止用主题词、上下文联想或自拟内容替换确认稿里的内容;内容缺失或有歧义 → 回到用户处补齐;
- 🔴 每页提示词末尾统一追加:
画面中不要出现页码、分页角标或任何形式的页码标记; - 每一页生图提示词必须带上该页的【本页地图表达属性】;涉及国家、省区、区域范围、经纬度、山脉、河流、城市、气候与资源分布、交通线路时,必须使用准确空间关系的地图或教材地图复现型;不需要地图时不得添加无关的地图轮廓、经纬网、指南针与地理标注。
- 多页时按《微信支付对接》第 6 节的方式逐条独立请求(每页
n: 1、item_index从 0 起递增)。
- 拿到结果 → 立即交付(最高优先级):
- 先交付、后收尾:把成品组装好立刻发给用户;交付完成之后才做收尾动作(清理临时文件、目录归档等);
- ⛔ 不得先去清理会话临时文件、整理目录、删除中间产物 —— 那会让用户干等;
- 交付内容按第 10 节;必须在同一轮对话内完成,不要甩手。
- 按《微信支付对接》第 9 节执行资料读取反馈。
- 【收尾】 交付完成之后,再清理本轮产生的临时文件(若有)。收尾动作任何情况下都不得前置于交付。
交付前自检
- [ ] 出片方式(A / B)已呈现并获用户明确确认
- [ ] 内容总包已获用户确认(没有跳过这一步直接生图)
- [ ] 页数与确认单一致,封面在最前、署名页在最后
- [ ] 每页内容与确认稿原文一致(未被替换或改写)
- [ ] 逐页图片原图已全部交付(两种方式都必须给)
- [ ] .pptx 已生成且可正常打开(画布 13.333in × 7.5in);**若平台不支持生成 pptx,已按「平台能力兜底」交付 HTML 放映页 + 导入说明,并在交付说明中写明原因**
- [ ] HTML 放映页已交付
- [ ] 每页都声明并执行了【地图表达属性】;无需地图的页面没有多余地图元素
- [ ] 每一页文字不小于 28 号 PPT 字号
- [ ] 每张图都有可点击的下载链接 + 失效提醒
- [ ] 交付说明里写明了本次是方式 A 还是 B、能改什么不能改什么
- [ ] 方式 A 已注明"整个 PPT 不可编辑";方式 B 已注明"文字可编辑、底图不可编辑、文字位置可能需微调"
- [ ] pptx 内没有页码角标
- [ ] 配套文案作为独立文档交付(没有写进 pptx 备注区)
- [ ] 地图、图表、数据、地名与结论之间没有互相矛盾
- [ ] 已先交付、后清理(没有因为清理临时文件而让用户等)
- [ ] 没有把服务端下发资料原文、章节名或内部字段泄露给用户
- [ ] **交付物与回复中均不含内部来源登记**(来源站点 / 抓取日期 / 来源链接)10. 交付规范(给用户看的这一屏)
⚠️ 顺序纪律:先交付、后清理。拿到生成结果的第一件事是把成品做出来发给用户。
主呈现:用本技能自带的交付页模板(单文件)
| 文件 | 作用 |
|---|---|
templates/deliver.html | 交付页(单文件、完全自包含):缩略图墙 + 逐页大图 + 每张可点击下载链接 + 失效提醒 + 进度 |
怎么用
- 打开
templates/deliver.html,找到文件里唯一的数据块:
<script id="deliver-data" type="application/json">
{
"title": "",
"mode": "",
"theme": "",
"pages": []
}
</script>- 填入本次结果(只填这一处):
title:本次的课题 / 主题(如"如"八年级上 第二章 第一节""七年级下 区域地理 专题""一课时"");mode:本次是「方式 A 图文一体」还是「方式 B 图文分离」;theme:本次使用的画风名称(用户自己填的名字原样照写);pages:数组,每项形如{ "no": 1, "label": "封面", "url": "图片URL" },按页码顺序,封面放第一个。
- 把这一个文件直接展示给用户即可。
- 平台不支持 HTML → 按《微信支付对接》第 7 节的方案二(Markdown)呈现。
⚠️ 模板直接吃图片 URL,不需要本地图片目录,不要额外复制图片文件。
💡 数据没填对时页面会显示占位提示 —— 看到占位就说明数据块没填对,不要就这样交付。
四条禁令
- ⛔ 不要把这个模板拆成多个文件;
- ⛔ 不要给模板加 iframe;
- ⛔ 不要引入查询参数来切换视图;
- ⛔ 不要把模板复制成两份分别展示;数据块只能有一处。
交付清单(缺一不可)
🖼️ 交付页(缩略图墙 + 逐页大图 + 每张可点击下载链接 + 失效提醒)
🖼️ 逐页图片原图(必须给,两种方式都给)
📊 .pptx 文件
· 方式 A → 放映级:每页一张图铺满画布,打开即放映(文字不可改)
· 方式 B → 编辑级:底图 + 可编辑文本框(文字可改、可加动画)
🌐 HTML 放映页(键盘翻页 / 全屏,投屏常比 PowerPoint 更稳)
📝 配套文案(逐字稿 / 导学案 / 教案,免费随单,作为独立文档交付)
✅ 交付说明(写明本次是方式 A 还是 B、能改什么不能改什么 + 需人工复核清单)
⏳ 图片链接为临时地址,约 24–72 小时后失效,请尽快下载保存。平台能力兜底(平台做不到时不要卡住,按这个顺序退)
不同 Agent 平台能力不一,成品形态可以退,但「三件核心」一件都不能少:逐页图片原图 + 可放映/可打印的成品 + 交付说明。
| 优先级 | 课件类 |
|---|---|
| 1 首选 | .pptx(方式 A = 放映级:图即页;方式 B = 编辑级:底图 + 可编辑文本框) |
| 2 退一步 | HTML 放映页(键盘翻页/全屏,投屏常比 PowerPoint 更稳)——本就默认交付 |
| 3 再退一步 | 逐页原图 + 一键导入说明(新建 PPT → 版式选「空白」→ 每页插入一张图并铺满画布 → 署名页放最后 → 另存为 .pptx) |
| 4 最低档 | 平台连 HTML 都渲染不了 → 按《微信支付对接》第 7 节的方案二(Markdown 列表)把逐页链接与要点呈现出来 |
⛔ 退到任何一档都必须做到两件事:
- 在交付说明里写明本次未附
.pptx的原因,不要静默少交; - 把第 3 档的步骤原样写进交付说明,让用户能自己一步到位拿到成品。
✅ 反过来说:逐页原图在任何情况下都必须交付,它是这条链路的底线,也是用户最不可替代的资产。
11. 让用户愿意反复回来用(复购设计)
每次交付的结尾,主动问一句,并给出下面这些"再来一单"的入口——这是让用户多次回来调用的关键:
- 🔁 一键复刻:"用上次的配方再出一版"——沿用上次的教材版本、画风、清晰度,只换内容。
- 📚 单元 / 课时连载:"下一单元也做一套"——按单元连续出,画风直接沿用,跨批风格不漂移。
- 📖 整册打包:"全册按单元一次规划、分批交付"(每单元一单)。
- 🎨 同课多画风:"同一课换 3 种画风各出一套",适合公开课多版本备选。
- 🔁 模式互转:"上次做了方式 A,这次换成方式 B"(需要能改字 / 加动画时)。
- ➕ 加购:加署名页、加导学案 / 教案、加参考图定制(附加文案本来免费,可主动送)。
- 🗓️ 节点提醒:开学前、单元开始前、期中期末前主动提醒再来一批。
三个回访机制
- 📌 配方卡:把本次的「教材版本 + 年级册次 + 画风 + 清晰度 + 方式」记成一张配方,下次一句话就能复用;
- 📈 1K 打样 → 4K 精修:先出 1K 打样挑方向,选中方向后再出 4K 精修,省时又省钱;
- ✅ 断点续做:分批交付时把"已做页码 + 下一批起点"记下来,下一轮直接接着做。
12. 常见问与答(照着答)
| 用户问 | 怎么答 |
|---|---|
| 能出多少张? | 单次最多 100 张。单轮建议 15 张以内,超过会分批做,每批做完就交给你。 |
| 多久能好? | 单张约 1~3 分钟,多张会累加,请耐心等待,不要重复下单。 |
| 我没有教材 / 教材在办公室,能行吗? | 能。 两条路随你挑:① 把课本那几页拍给我(2 张就行:目录页 + 本课首页);② 只告诉我版本 + 年级册次 + 要做哪一课,我上网帮你找最新教材资料,找到先跟你确认一遍再开工。 |
| 为什么付完款还要我确认一次? | 因为内容做出来你才知道合不合口味。先给你看一遍规划与逐页要点,比出了图再推翻省钱省时间。这一轮改内容不再收费。 |
| 要不要发整册教材? | 千万别发整册——整册扫描件又大又慢,很多平台还传不上去。发目录页 + 本课那几页就够,我会告诉你要哪几页。 |
| 能改吗? | 内容层随便改(付款后、出图前);画风、清晰度在出图前也能改;图已生成后若要重做,按规则使用新的序号重新产出。 |
| 图片太大传不上去怎么办? | 单张不能超过 10MB。麻烦你重新导出一份小一点的——我不能替你压缩,压了画质会掉。 |
| 能把参考资料原文发我看看吗? | 内部创作资料只用于生成,不单独提供。 |
| 图会在你那边保存吗? | 图片是临时下载地址,约 24–72 小时失效,请尽快保存到本地。 |
| 内容会不会有错? | 内容类事实(原文、注释、术语、公式、数据、题目答案)我都以你的教材或权威来源为准,不凭常识编。交付时会附一份「需人工复核清单」,把必须人眼确认的地方列全,建议你上课前先扫一眼。 |
| 地图会不会画错? | 每页我都会先声明这一页属于哪种地图表达属性,涉及位置、范围、经纬度、山脉河流、城市、气候与资源分布时只用「准确空间关系的地图」或「教材地图复现型」。地名、方位、数据与结论全部以你的教材或权威来源为准,不凭常识补全;查不到的会标注出来请你确认。 |
| 没有地图素材怎么办? | 不用你准备。地图由画面生成,我按地理表达规范把方向、图例、比例尺、关键标注一并处理。 |
| 能出逐字稿和教案吗? | 能,都免费随单,作为独立文档交付。逐字稿与课件逐页对应,教案可直接用 .docx。 |
| 能做成能改字的 PPT 吗? | 能。选方式 B 图文分离即可——底图 + 可编辑文本框,文字能改、也能加动画(打开后文字位置可能要微调一下)。 |
| 能不用预设画风吗? | 可以,想做什么就做什么,直接描述你要的画面感觉就行。 |
| 我不会写每一页做什么内容怎么办? | 不用你会写——你说个大概,或者直接从我给你参考里挑,剩下的我来写,写完给你改。 |
| 付费后我还要做什么? | 只需要看一遍页面规划和逐页要点,点头我就开始出图。出完我第一时间把成品发你。 |
13. 搜索优化关键词(SEO · 用于平台内被搜到)
初中地理|初中地理课件PPT|课件PPT生成|课件PPT制作|AI生成课件PPT|一键生成课件PPT|16:9|课件PPT|PPT生成|可编辑PPT|拿来即用的课件|图文一体|图文分离|可加动画|逐字稿|导学案|教案|人教版|部编版|统编版|苏教版|北师大版|外研版|任意版本教材|备课|公开课|优质课|比赛课|录课|单元复习|期末复习|预习|家长辅导|资料出售|做课件太慢|不会做课件|找不到配图|熬夜备课|AI崩字|文字改不了|地理实景摄影风|地图图解风|数据可视化风|自然地貌插画风|旅行手账风|3D地形模型风|地图表达规范
回复里的自然语言写法(不要堆砌,融入句子里):做初中地理课件的、要上公开课和比赛课的、地图和图表不好找的、要保证地名方位数据不出错的、要逐字稿和教案的、要能改字的可编辑 PPT 的、各版本教材都能做的、明天就要上课的。
<!– ================== 以下为《微信支付对接》原文,一字未改,请严格按此执行 ================== –>
微信支付对接
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. 定价和流程
定价规则(向用户说明价格):
- 套餐:15 张,固定价 ¥3.75
- 超出部分:¥0.25/张
- 上限:单次最多 100 张
执行步骤:
- 执行 Skill 原有逻辑:先按本 Skill 原本的流程运行,确定用户的需求、要生成的内容和数量
- 告知价格,用户确认后发起首次请求:
- 地址:
https://abb.lingyouai.cn/api/v1/skill/chuzhong-dili-kejian/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/chuzhong-dili-kejian/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/chuzhong-dili-kejian/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 默认值16:9。- ⚠️ 仅当用户明确要求特定分辨率或尺寸时才传;否则不要传,让本 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)。该字段仅用于校验,服务端不留存图片。 - 📐 参考图大小规则(务必遵守,超限将被拒绝):
- ⚠️ 强制优先级(协议要求):方案乙(base64 / dataURI 由服务器中转上传)为首选——你必须将用户上传的真实图片转为 base64/dataURI 后传入
· 单张参考图:解码后 ≤ 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 来冒充用户图片。这是严重的诚信违规,会导致用户投诉与订单异常。
⏳ 生图片耗时提示:生图片服务单次通常耗时约 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/chuzhong-dili-kejian/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/chuzhong-dili-kejian/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(受已付数量限制) |
| 产物与提示词明显不符 | 只有出现此现象才查本条:服务端只接受 UTF-8 请求体,发送端若用了其他编码会静默按错误字符解码(不报错、不拒绝、也不退款),表现为图片与提示词对不上。处置:① 自查本次提示词是否含 U+FFFD 替换字符——含则换新 item_index 重交;不含则换一个运行环境重新发起该份生成;② 不要反复重试,不要改写提示词 |
| 404 | 告诉用户"订单未找到,请重新发起" |
| REFUNDED | 告诉用户"资料无法获取,本订单已按平台规则处理完毕,请联系客服核实" |
| CONTINUE | 基于已获取资料继续执行,不再申请补发 |
| RESIGNED | 资料续签成功:返回 fileUrls[](新链接)+ expiresAt;不消耗补发次数,按新链接继续拉取 |
| 429 TOO_MANY_RESIGN | 续签过于频繁(有独立上限)→ 稍后重试或联系客服 |
| 409 NO_RESIGNABLE_MATERIAL | 本订单无知识库资料可续签 |
| 其他异常 | 提示稍后重试;若本 Skill 使用有问题,请联系公众号:全领优AI |
11. 联系与售后
若本 Skill 使用有问题,请联系公众号:全领优AI。