Files
memind/docs/image-make-integration.md
T

2.7 KiB
Raw Blame History

image_make 隔离接入

边界

image_make 是独立服务。Memind 只通过 HTTP API 调用,下载结果并校验后写入 MindSpace; image_make 不连接 Memind 数据库,也不能直接写 MindSpace。开关关闭或请求失败时,现有页面、 封面与缩略图流程保持不变。

后台开关

开关位于 memind_adm 的「资产能力」页面,按以下顺序生效:

  1. 资产能力总开关开启;
  2. 图片生成插件开启,Provider 选择 image_make
  3. 单独开启需要的用途:页面正文图片、页面头图、卡片封面、信息流与缩略图源图;
  4. Memind 运行环境同时配置 IMAGE_MAKE_BASE_URLIMAGE_MAKE_TOKEN

所有开关默认关闭。信息流缩略图仍由 MindSpace 从 feed_cover canonical 源资产派生,禁止为了 缩略图再次调用生图模型。

Memind API

登录用户可显式调用:

POST /api/mindspace/v1/images/generate
Idempotency-Key: imgreq_xxx
Content-Type: application/json

{
  "purpose": "hero",
  "prompt": "无文字的安静未来阅读空间,暖色自然光"
}

purpose 可选值:inline_imageherocard_coverfeed_cover

成功时服务先完成以下步骤,再返回 201

  1. 创建并轮询 image_make 任务;
  2. 下载图片并校验 MIME、文件头、大小与 SHA-256
  3. 通过现有 createChatAsset 写入用户 MindSpace 公共候选资产;
  4. 获得 canonical publicUrl 后 best-effort acknowledge image_make 临时结果。

开关关闭返回带 fallback: true409;服务未配置或暂不可用返回带 fallback: true503。调用方必须继续原有页面或默认缩略图流程。

本地配置

IMAGE_MAKE_BASE_URL=http://127.0.0.1:8080
IMAGE_MAKE_TOKEN=dev-token
IMAGE_MAKE_REQUEST_TIMEOUT_MS=15000
IMAGE_MAKE_GENERATION_TIMEOUT_MS=600000
IMAGE_MAKE_POLL_INTERVAL_MS=1000
IMAGE_MAKE_MAX_RESULT_BYTES=20971520

Token 只进入 Memind 运行环境,不在 memind_adm 页面或数据库中保存、展示。

页面 Agent 通过 sandbox MCP 的 generate_image 工具调用 Portal 内部入口。需要额外配置 MINDSPACE_AGENT_API_BASE_URLMCP 使用现有 MINDSPACE_INTERNAL_AGENT_SECRET 鉴权,成功结果 直接返回 MindSpace publicUrlworkspaceRelativePath。工具始终受同一后台总开关、Provider 开关和用途开关约束。容器部署时 base URL 应使用容器可访问的 Portal 地址,不能使用容器自身的 127.0.0.1

回滚

memind_adm 关闭图片生成插件或资产能力总开关即可立即停止新调用。该回滚不删除已经入库 的 MindSpace 图片,不要求回滚数据库字段,也不改变既有页面内容。