Gemini 3.1 Flash Lite 如何让图像编辑保持连续状态

攻城狮Ray 专家 2026/7/24 905 浏览 0 点赞 约 1 分钟

图像生成通常需要多轮调整,但每次修改都需重复输入完整的描述,容易导致细节丢失或出现构图偏移、角色替换等问题。Google 的 gemini-3.1-flash-lite-image(内部代号 NundefinedLite)通过 Interactions API 引入了状态化机制,让后续编辑能够基于原图继续修改,而非从零开始。

传统 API 每次请求都是独立的,无法记录上下文。而 Interactions API 则引入了 interaction_id 作为状态索引,并将其存储在 Google 服务器端。具体流程需满足以下条件:

  1. 首次调用 client.interactions.create 时,必须 设置 store=True,否则无法生成可重用的状态。
  2. API 返回的 interaction_id 代表当前画布状态,必须 保存并传递给后续请求。
  3. 后续编辑时,必须 将最新的 interaction_id 作为 previous_interaction_id 传入,否则会导致状态断链。

在 Antigravity CLI 中,用户无需重复完整描述,只需输入简短指令,例如:

Add a lantern in its paw.

模型会自动结合之前的画布状态(如晨雾森林、白桦树、红围巾狐狸)进行修改,而非重新生成。

部署与实操要点

这项功能依赖 FastMCP server,将 Gemini 3.1 Flash Lite 包装为 Antigravity 的 Skill。部署前需满足以下条件:

  • 环境准备:必须使用 Python 虚拟环境,并安装 fastmcp 和 google-generativeai,否则可能出现依赖冲突。配置 API 键后,启动命令为:
  python server.py

服务器启动后,才能将其暴露给 AI Agent 使用。

  • 关键配置限制:

- 思考等级(Thinking Levels)仅支持 low 和 high,minimal 或 medium 会导致 HTTP 400 错误。
- 首次生成时确定的宽高比(如 16:9 或 1:1)会被后续编辑自动继承。若强制修改比例,可能降低图像连续性。
- 每次编辑都会生成新的 interaction_id,必须严格按链式传递最新 ID。如果传入旧 ID,编辑将基于旧状态重启,之前的修改会丢失。

整体架构由三部分组成:

  • 底层模型:gemini-3.1-flash-lite-image
  • 传输协议:MCP(Model Context Protocol)
  • 交互端:Antigravity CLI

这种状态化设计不仅简化了 Prompt 输入,还解决了图像编辑中上下文遗失的问题。部署示例可参考:nb2lite-skill-agy。

Gemini工作流AIAI落地antigravity

全部回复 (2)

想当场把话说完?进全球 AI 聊天室,登录就能开口。

程
程序员老陈 初级 2026/7/25

直接搜 Dart 实现库确实方便,但如果想实现更高效的图像编辑流程,可以参考 Google 的 gemini-3.1-flash-lite-image(内部名 NundefinedLite)的做法,它通过 interaction_id 保存画布状态,让后续修改能够基于同一状态进行,比如在 Antigravity CLI 中只需输入 Add a lantern in its paw. 就能在同一场景中直接添加道具,而无需重复描述整个场景。这种方式避免了传统 API 无状态的问题,效率和准确性都大幅提升。如果你需要部署类似功能,可以参考 FastMCP 的单文件实现,直接启动 server.py 即可集成。

0 回复
数
数据分析师小美 初级 2026/7/25

直接让它改背景色,人物轮廓竟然没崩,这细节处理绝了!继续微调时记得沿用最新的 interaction_id,别传旧 ID,否则会从旧状态分支,之前改动就丢了。

0 回复

发表回复

支持 Markdown 格式
同类方向的延伸案例可以参考AI大模型变现案例库,有不少直接可参考的案例。