Files
john 4b15610aa8
Memind CI / Test, build, and release guards (pull_request) Successful in 2m47s
feat(image): complete reviewed generation delivery
2026-07-20 20:04:53 +08:00

7.3 KiB
Raw Permalink Blame History

name, description
name description
image-generation 将用户简短的主题、场景或页面需求扩展为完整可执行的生图提示词,并调用 generate_image 生成、校验和交付真实位图。用于勾选 AI 配图、要求主图/背景图/封面/插画/照片、视觉类 H5 页面,或系统自动判断需要新视觉资产的场景。

智能生图

用户只需说明“做什么”和大致感觉。不要要求用户理解 purpose、负面提示词、构图术语、尺寸、模型或 jobId;由本技能补齐这些内容并实际完成生成。

执行原则

  1. 保留用户明确给出的主题、主体、时代、地点、文字、风格和禁用项,不擅自改题。
  2. 信息足够时直接生成。只有缺失会导致互斥结果的关键选择时才追问,例如“真人照片还是卡通角色”。
  3. 页面主图默认使用一次 generate_image(purpose=hero)。不要为了卡片和信息流再次生成同主题图片。
  4. 正面描述放入 prompt,禁止项放入独立的 negative_prompt,不要把大量 NO... 混进正面描述。
  5. 必须生成 PNG、JPEG 或 WebP 位图;禁止用 SVG、CSS 绘图、旧图、占位图、网页搜索图片或纯色块冒充新图。
  6. 本轮必须出现新的工具请求与返回。历史 jobId、历史路径和旧图片不能作为本轮结果。

从短需求扩展提示词

按以下槽位补全。用户没有指定时,选择与主题最自然、最克制的方案,不要堆砌互相冲突的风格词。

  1. 媒介与真实度:写实摄影、电影剧照、商业产品摄影、精致插画等。
  2. 核心主体:谁或什么是视觉中心;明确数量、服饰、材质、动作与表情。
  3. 时间与地点:国家、城市、年代、季节、天气、昼夜。
  4. 环境元素:必须同时出现的建筑、地貌、街市、室内陈设或自然景观。
  5. 构图:hero 默认宽幅远景或建立镜头,主体层级清晰,为标题保留可读空间。
  6. 光线与色彩:光源、冷暖关系、主色和氛围。
  7. 叙事状态:人物自然活动,避免排队合影、僵硬摆拍和无意义拼贴。
  8. 交付质量single continuous scene、cinematic lighting、realistic detail、no text。

推荐正面提示词结构:

[媒介与风格],[时间地点]。[核心主体与动作]。[必须出现的环境元素]。
[构图与镜头]。[光线、色彩和情绪]。single continuous scene,画面内无文字。

自动补充负面提示词

所有任务默认加入:

text, caption, watermark, logo, collage, montage, split screen,
duplicate subject, deformed anatomy, low resolution, blurry, oversaturated

再按主题追加:

  • 历史文化modern building, skyscraper, asphalt road, car, utility pole, wire, modern streetlight, modern sign, modern tourist, modern clothing, suit, jacket, sneakers, face mask。
  • 自然旅行city skyline, crowd, vehicle, power line;但用户明确要求城市或人群时不要加入冲突项。
  • 产品摄影wrong logo, extra product, distorted packaging, unreadable label, cluttered background。
  • 人物肖像extra fingers, malformed hands, duplicate face, plastic skin;不要擅自改变用户指定的人种、年龄和服饰。
  • 美食inedible object, deformed tableware, messy spill, artificial plastic texture。

每次生成前检查正负提示词是否冲突。例如正面要求“热闹人群”时,负面不得出现 crowd;正面要求城市夜景时,负面不得出现 city skyline

常见主题模板

历史文化与古城

  • 明确朝代、代表性建筑、传统材料、服饰、人群活动和夜空/天气。
  • 用“historical costume drama movie still”增强时代一致性。
  • 对现代建筑、交通、服装、标识和基础设施使用严格负面约束。
  • 不要只生成牌坊、空街或人物合影;用户要求节庆时必须同时写明街市、灯饰、摊位与自然流动的人群。

旅行与自然风光

  • 明确目的地标志性地貌、季节、天气、住宿或旅行活动。
  • 默认采用真实旅行电影画面,避免廉价旅游海报和画面内文字。
  • 若用户只说“安静、有电影感”,自动采用少量人物或无人远景、自然环境光、克制色彩和宽幅构图。

商品、品牌与美食

  • 商品必须是唯一视觉主体,材质、包装、使用场景和目标人群一致。
  • 不编造品牌 Logo、认证、价格、功效或包装文字。
  • 为标题和 CTA 留出干净区域,但不要生成带文字按钮的图片。

人物与生活方式

  • 补齐年龄段、服装、动作、环境和镜头距离。
  • 默认使用自然抓拍感,避免证件照、排队合影和僵硬直视镜头。
  • 用户未要求名人时,不生成可识别公众人物。

工具调用

  1. 根据用途选择:
    • 页面首屏、背景、专题主视觉:hero
    • 正文确实需要独立插图:inline_image
    • 只有后台关闭 hero 且仅需封面时:card_coverfeed_cover
  2. 调用:
{
  "purpose": "hero",
  "prompt": "完整正面提示词",
  "negative_prompt": "独立负面提示词"
}
  1. 不要先写 HTML 再补图。页面任务必须先生成并确认图片成功,再写页面。
  2. 工具已把图片保存到用户工作区。HTML 的 <img>、CSS 背景图和 mindspace-cover.cover 必须直接使用返回的 asset.htmlSrcworkspaceRelativePath 只用于 read_filelist_dir 等工作区文件操作,禁止直接写进 HTML;也禁止再用 shell、curl 或下载操作复制图片。

示例:工具返回 workspaceRelativePath: "public/images/hero.webp"htmlSrc: "images/hero.webp" 时,HTML 必须写 <img src="images/hero.webp">,不得写 <img src="public/images/hero.webp">

成功与重试

成功结果必须同时满足:

  • ok=true
  • 新的非空 jobId
  • 状态为 ready 或等价成功状态
  • source.mimeTypeimage/pngimage/jpegimage/webp
  • 返回非空 asset.htmlSrc,供页面直接引用

出现以下情况时不得宣称完成:工具未调用、返回失败、没有位图、使用旧路径、图片未落盘,或页面没有真正引用本轮图片。

首次结果明显遗漏用户的核心元素时,收紧提示词后最多重试两次:提高遗漏主体的描述优先级,删除冲突修饰词,并把错误元素加入 negative_prompt。不要无上限循环。

页面集成

页面任务还必须加载 static-page-publish

  1. 用本轮图片作为 <img> 或 CSS background-image 的真实资源;CSS 只负责布局,不能绘制替代主图。
  2. Hero 默认占满首屏,使用 object-fit: coverbackground-size: cover
  3. mindspace-cover.cover 与页面 Hero 引用同一张图,缩略图和信息流封面复用它。
  4. 图片路径优先使用工作区相对路径,避免把仅本机可用的临时绝对路径写进页面。
  5. 交付前确认页面与图片均可访问,标题未被裁切,移动端仍能看到关键主体。

向用户报告

用户不需要阅读完整提示词。完成后简洁报告:

  • 页面或图片链接
  • jobId
  • 图片尺寸与格式
  • 状态
  • 实际使用的工作区路径

若失败,报告真实错误和下一步;不得以“已经安排”“正在下载”或旧图片链接代替结果。