☰
火宝短剧道具最终提示词规范解析:白底单品静物的 prompt-generator 技能设计与工程落地
2026/10/4 1:49:56 网站建设 项目流程
  • AI 应用
  • 人工智能
  • 媒体生成
  • 音视频
  • AI Agent
  • 后端
  • 前端

【免费下载链接】huobao-drama

🎬 火宝短剧 - 基于AI的一站式短剧生成平台 《一句话生成完整短剧,从剧本到成片全自动化》 Huobao Drama - An AI-Powered End-to-End Short Drama Generator "One Sentence to Complete Drama: Fully Automated from Script to Final Video"

项目地址:https://gitcode.com/gh_mirrors/hu/huobao-drama
点击查看免费下载

本文围绕火宝短剧(Huobao Drama)开源仓库中 prompt-generator Agent 的道具提示词技能规范(prop-prompt/SKILL.md)展开,剖析「白底单品 · 标准产品摄影」提示词的结构模板、硬性约束与生成规则,并结合 image-prompt-tools.ts、final-prompt.ts 等源码,说明该规范如何通过技能注册、工具调用与视觉风格自动注入机制落地为可复现的生成管线。读完本文,你将掌握道具类图片提示词的撰写标准,并理解其在「剧本 → 资产 → 分镜 → 视频」全自动流水线中的真实调用方式。

一、道具提示词在短剧生成流水线中的定位

在火宝短剧的 AI 编排架构中,素材资产(角色、场景、道具)的图片提示词由prompt_generatorAgent 统一创作。系统提示词(backend/src/agents/index.ts)明确了该 Agent 的双重职责:

  • 图片最终提示词:为角色(三视图)、场景(固定视角 + 前中后景)、道具(白底单品静物)分别创作可供生图直接使用的提示词;
  • 视频提示词:为分镜段落产出 3 秒一段的 video_prompt。

其中道具资产的定位与角色、场景截然不同:道具是短剧中的关键叙事物件(凶器、信物、关键文件、定情礼物、证据等,提取规则见 agents/index.ts 中 extractor 的判定三问),它需要在分镜中反复出现、被特写或被使用,因此外观必须可复现、可挂接。这正是 SKILL.md 将道具图定义为「白底单品 product shot」的原因——脱离剧情环境的孤立呈现,才能保证后续视频生成中 @道具名 挂接的参考图干净、准确、无歧义。

二、规范核心:三条硬性要求

SKILL.md 在开头即给出白底单品图(product shot)的定义与三条不可妥协的硬性要求:

  1. 物品各部分比例准确——不夸张、不变形、不风格化拉伸,道具的相对尺寸关系必须真实,避免「特写放大」或「卡通化」破坏后续素材一致性;
  2. 边缘完整——道具整体完整入镜、四周留白,任何部分不得被画面边缘裁切,保证主体可被完整提取与复用;
  3. 背景不承载任何叙事内容——纯白背景只是衬底,不带场景感、不带情节暗示、不带装饰元素,防止剧情信息混入素材图。

这三点共同服务于一个目的:保证道具参考图的「纯度」。在后续 storyboard 分镜中,道具通过prop_ids与段落绑定(agents/index.ts),其提示词中@道具名会被自动替换为参考图片标记;背景若承载叙事,就会把剧情污染进视频生成,破坏「道具外观固定」的复用前提。

三、输出结构模板:单段连贯描述

SKILL.md 规定了严格的组装顺序,要求模型输出单段连贯描述(不分点、不列项),语言跟随会话语言指令:

单品产品图,标准产品摄影视角,[道具名 + 材质/颜色/形状/大小 + 新旧程度与磨损细节], 物品各部分比例准确,孤立放置在纯白背景上,居中完整入镜,边缘完整无裁切, 背景纯净不承载任何叙事内容,无其他物品、无人物、无场景, 柔和均匀的影棚光,轻淡阴影,高细节

模板的段落节奏是「主体信息 → 构图约束 → 背景约束 → 光影质感」,其中方括号部分是唯一需要模型创作的内容,其余均为固定约束句式。这种「约束骨架 + 变量填充」的设计,与 prompt_generator 系统提示词中「单段连贯描述,不要分点,不要混入无关词汇」的通用规范(agents/index.ts)完全一致。

四、生成规则详解

4.1 物理细节逐项落地(辨识度来源)

以道具的name(名称)与description(物品外貌)为输入核心,将材质、颜色、形状、大小、新旧程度、磨损痕迹等逐项落地。这与 extractor 提取道具时对description的要求(只描写物品本身的物理外观,不写剧情用途,见 agents/index.ts)严格对齐——提取阶段只收物理外观,生成阶段再把物理外观翻译成可生图的描述。

4.2 视角规范:按道具形态二选一

  • 常规立体道具(杯子、凶器、信物等):标准产品摄影的微俯视 3/4 视角——同时看清顶面与侧面,立体感最强,是产品图最经典的展示角度;
  • 扁平道具(纸张、证件、照片):改用正俯视平铺,避免透视压缩导致文字或图案变形。

4.3 光影与质感

柔和均匀的影棚光、轻淡阴影、高细节。禁止环境反光与彩色光(见下文禁止事项),防止材质质感被破坏或画面出现干扰性的光斑。

4.4 语言与措辞纪律

  • 只描写物品本身,不要提及剧情、角色或用途(背景与画面都不承载叙事);
  • 输出使用会话语言指令指定的目标语言,不混入无关词汇;
  • 明确禁止「电影质感」类词汇——道具图是产品图而非剧照,词汇错位会让模型把道具往「剧情镜头」方向生成,破坏白底单品约束。

关于「会话语言指令」的实现,见 language.ts:当会话目标语言为非中文(en/ja/ko)时,会在 instructions 末尾追加## Output Language (HIGHEST PRIORITY)指令块,强制所有面向用户的产出(含图片提示词)使用目标语言,并明确「视觉风格前缀由系统自动注入(英文),不要翻译、改写或重复」。

五、禁止事项清单

SKILL.md 明确列出六类禁止项,作为模型的负面约束:

禁止类别说明
手部持握、人物、其他物品、场景环境入镜保持画面只有道具本体
包装、底座、展示架除非它就是道具本体的一部分(如首饰盒本身是道具)
文字、水印、签名道具本体上印刷的文字图案可以保留并如实描述
环境反光、彩色光破坏影棚光的纯净感
夸张透视、变形、比例失真、边缘裁切对应三条硬性要求的反向约束

注意「包装、底座、展示架」的例外条款:当包装本身就是道具本体的一部分时允许保留——这条边界需要模型根据道具语义自行判断,是规范中少有的「上下文敏感」规则。

六、保存机制:save_prop_final_prompt 与风格自动注入

SKILL.md 的「保存」一节指出:调用save_prop_final_prompt,且prompt 参数不含风格词,项目视觉风格由工具自动注入到最终提示词的最前方。

对应实现位于 image-prompt-tools.ts,其执行流程为:

const stylePrompt = await getDramaStylePrompt(dramaId) const finalPrompt = stylePrompt ? `${stylePrompt}, ${prompt}` : prompt await db.update(schema.props) .set({ finalPrompt, updatedAt: now() }) .where(eq(schema.props.id, prop_id))

即:查询项目绑定的视觉风格预设(style-preset.ts 通过dramas.style关联style_presets.value,取isActive为 true 的预设的英文 prompt 片段),若存在则拼接为风格前缀, 道具提示词,否则直接使用模型产出的提示词,最终写回props.finalPrompt字段。

这是「提示词规范」与「项目级风格控制」解耦的关键设计:SKILL.md 只约束道具本身的呈现方式,项目统一的画面风格(如古风、都市、赛博等)由风格预设系统负责,二者以「逗号拼接、风格前置」的方式组合,互不干扰。这也解释了 SKILL.md 反复强调「不要自行添加风格词」的原因——风格词由工具注入,模型重复添加会造成冲突或冗余。

七、触发链路:从资产缺失到自动生成

道具最终提示词的生成由 final-prompt.ts 的ensurePropFinalPrompt驱动:

  1. 若prop.finalPrompt已存在且非 force 模式,直接返回已有提示词(幂等,不重复消耗 token);
  2. 否则记录任务日志prop-generate,通过mastra.getAgent('prompt_generator')发起生成请求,消息模板为:为道具「${prop.name}」(prop_id=${prop.id}) 生成白底单品最终提示词,并调用 save_prop_final_prompt 保存。(maxSteps: 12,允许模型多轮工具调用);
  3. 生成后重新查询props表取最新finalPrompt返回;失败时记录错误日志并返回空串,由调用方回退到本地拼接提示词。

也就是说,SKILL.md 是 Agent 在步骤 2 中被注入的「创作规范」,而save_prop_final_prompt是步骤 2 中模型必须调用的「落库工具」。规范文件与工具实现共同构成完整闭环:规范约束「怎么写」,工具约束「写在哪、怎么存」。

八、技能注册与多语言变体机制

prop-prompt 技能通过 skills.ts 的AGENT_SKILL_MAP注册到prompt_generatorAgent:

prompt_generator: [ 'prompt-generator/character-prompt', 'prompt-generator/scene-prompt', 'prompt-generator/prop-prompt', 'prompt-generator/video-prompt', ],

技能扫描器会递归遍历backend/workspace/skills/下所有含SKILL.md的目录(scanSkillPaths),并支持语言变体直读:当会话语言为非中文时,优先读取SKILL.<lang>.md(仓库中已提供SKILL.en.md/SKILL.ja.md/SKILL.ko.md),缺失时回退基础中文版。这与 prompt 文件的多语言机制一致(见 prompts.ts 的<type>.<lang>.md回退逻辑),保证多语言用户在技能层面获得一致的约束质量。

Agent 组装 instructions 时(agents/index.ts),会把「基础系统提示词 + 技能全文 + 语言指令块」拼接注入,因此 SKILL.md 的全部规则(三条硬性要求、输出模板、禁止事项、保存指令)都会作为 Agent 行为约束实际参与推理,而非仅存在于仓库中的文档。

九、常见问题与调优建议

结合源码实现,给出几个实操层面的注意点:

  1. 不要手工往 prompt 参数里写风格词:save_prop_final_prompt会自动前置项目风格(getDramaStylePrompt),模型手写风格词会造成重复;若项目未绑定风格预设,工具返回的就是纯模型产出,此时可考虑在设置页为项目绑定风格预设(存于dramas.style,指向style_presets.value)。
  2. 生成失败可强制重跑:ensurePropFinalPrompt(prop, episodeId, force = true)会忽略已有finalPrompt强制重新生成,适合资产外观描述更新后刷新素材图。
  3. 语言混入的处理:若发现产出混入无关语言或词汇,可检查会话语言指令是否正确传入;buildLanguageDirective仅对非中文语言注入指令块,中文会话默认不注入。
  4. 模型端点与输出上限:prompt_generator 的文本模型跟随 AI 配置,agents/index.ts 中的getModel会注入温度与max_tokens上限(默认 16384,可用AI_MAX_TOKENS覆盖),确保长提示词 + 多轮工具调用不被截断。

结语

火宝短剧的 prop-prompt 技能文档虽然只有数十行,却完整定义了短剧道具素材图的生成标准:从「白底单品 + 标准产品摄影」的定位、三条硬性要求,到逐项落地的物理细节、按形态区分的视角规范、禁止事项清单,再到save_prop_final_prompt的落库与风格自动注入。它与角色(三视图)、场景(固定视角)技能并列,共同支撑 prompt_generator Agent 的资产提示词生产能力,是「一句话生成完整短剧」流水线中保证素材可复用、可挂接、无剧情污染的关键一环。需要深入实践时,可直接阅读 prop-prompt/SKILL.md 与 image-prompt-tools.ts 对照验证。

  • AI 应用
  • 人工智能
  • 媒体生成
  • 音视频
  • AI Agent
  • 后端
  • 前端

【免费下载链接】huobao-drama

🎬 火宝短剧 - 基于AI的一站式短剧生成平台 《一句话生成完整短剧,从剧本到成片全自动化》 Huobao Drama - An AI-Powered End-to-End Short Drama Generator "One Sentence to Complete Drama: Fully Automated from Script to Final Video"

项目地址:https://gitcode.com/gh_mirrors/hu/huobao-drama
点击查看免费下载

相关推荐

上一篇:KOSync 进度同步的 CFI↔XPointer 跨章解析:Readest 中 spine index 解析原理与 scroll-lag 陷阱修复
下一篇:终极WebTorrent性能优化指南:提升下载速度的完整方案

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询