|

从历史照片到交互式 3D:Gemini 4 Carbon 用一条提示词重现埃菲尔铁塔的建设过程

从历史照片到交互式 3D:Gemini 4 Carbon 用一条提示词重现埃菲尔铁塔的建设过程

作者注:本文从 Google 的埃菲尔铁塔演示出发,解释多 Agent 如何把历史图片和工程资料组织成交互式三维展览。

术语速览(to know)

  • Agent(智能体):能调用工具、执行任务的 AI 程序,不只回答问题,还会规划、执行和检查结果。
  • 多 Agent 协作:多个智能体分工处理子任务,并交换各自的中间结果。
  • Antigravity:Google 提供的 AI 开发工具,Gemini 4 Carbon 已在其中上线。
  • Swarm(/swarm):Antigravity 中组织多个智能体协作的预览功能,于 2026 年 11 月 10 日推出。
  • 工程图纸:用图形和尺寸表达工程设计的资料,是三维重建的关键几何来源。
  • Three.js:在网页中构建三维场景的 JavaScript 库,可以直接在浏览器里渲染和交互。
  • 格构结构:由许多杆件组合而成的承重结构,埃菲尔铁塔就是典型的铁制格构结构。

Google 在 2026 年 11 月 10 日正式开放 Gemini 4 Carbon,并在官方公告中展示了一个很有画面感的案例:多个 Carbon Agent 借助 Antigravity 的 /swarm 功能,把历史照片和工程图纸转化为一个交互式 Three.js 3D 展览,重现埃菲尔铁塔 1887—1889 年的建设过程。整个任务由一条提示词启动。

这不是“AI 随手画了一座铁塔”。Google 官方公告和 Antigravity 博客对这个案例及 Swarm 机制都有说明。本文会区分三类信息:历史事实、Google 官方演示的描述,以及我们的分析推断。

核心价值:读完本文,你会知道这个演示到底解决了哪些技术问题,多 Agent 在其中扮演什么角色,以及开发者怎样用 API 尝试类似的“图纸到 3D”工作流。

截图

gemini-4-carbon-eiffel-tower-3d-swarm-image-0


Gemini 4 Carbon 埃菲尔铁塔演示核心信息速览

先看 Google 官方公告中能确认的信息。下表只列出官方明确提到的内容,没有披露的细节会单独说明。

信息项 详情
发布方 Google(Gemini 4 Carbon 由 Google DeepMind 开发)
公布时间 2026 年 11 月 10 日,随 Carbon 正式开放一并公布
使用工具 Google Antigravity 的 /swarm 多 Agent 协作功能(预览版)
参与模型 多个 Gemini 4 Carbon Agent
输入材料 埃菲尔铁塔的历史照片与工程图纸
重现内容 1887—1889 年的建设过程
最终交付 交互式 Three.js 3D 展览
启动方式 一条提示词
未披露内容 本次任务的具体 Agent 数量、分工细节、迭代轮数与 Token 消耗
调用渠道 Gemini API、Google AI Studio、Antigravity;也可通过 API易 apiyi.com 等 OpenAI 兼容平台接入 Gemini 系列模型

需要注意的是,“一条提示词”不等于“单轮生成”。用户只发出一次指令,后续的拆解、并行处理和检查由多个 Agent 在 Swarm 框架里完成。这是理解整个案例的前提。


埃菲尔铁塔为什么是 Gemini 4 Carbon 的高难度考题

如果只是生成一个“看起来像铁塔”的模型,这个演示并不稀奇。真正的难点在于,埃菲尔铁塔本身就是一项资料密集、结构复杂的工程。以下数据来自埃菲尔铁塔官方网站的历史档案。

工程项目 历史数据
设计金属构件 18,038 件
工厂设计图 5,300 张
工程师与设计人员 50 人
铁材总量 7,300 吨
铆钉数量 250 万颗
建造时间 2 年 2 个月 5 天

施工时间线同样清晰。1887 年 1 月 26 日正式开工,同年 7 月 1 日开始安装塔柱;1888 年 4 月 1 日第一层建成,8 月 14 日第二层建成;1889 年 3 月 31 日塔顶及整体组装完成。对于一个“重现建设过程”的展览来说,这些节点就是时间轴的骨架。

埃菲尔铁塔的格构结构与抗风设计

据官方历史资料,铁塔的设计构想最初来自工程师 Maurice Koechlin 和 Émile Nouguier,建筑师 Stephen Sauvestre 参与了外观设计,古斯塔夫·埃菲尔推动了最终方案。最初方案采用四根格构柱,底部分开,向顶部逐渐汇聚。

塔柱的曲率经过数学设计,用来改善结构抵抗风力的能力。每个金属构件都在工厂预制,并经过专门设计和计算,图纸精度达到十分之一毫米。这意味着重建它不是“堆几何体”,而是要理解杆件、曲线和层级之间的严格关系。


Gemini 4 Carbon 如何把二维历史资料变成三维结构

这一部分是本文的分析,Google 并未公开该任务的内部步骤。从输入和输出反推,任务至少需要跨越三道门槛。

  1. 理解历史照片:施工照片拍摄角度不一、清晰度有限,需要识别出画面中已建成到哪一层、塔柱处于什么阶段,并把照片对应到时间线上的节点。
  2. 提取图纸中的几何信息:工程图纸包含立面、剖面、尺寸标注等内容,需要从中读出塔柱倾角、平台高度、杆件排布等参数。
  3. 推断空间关系并组织成可重建的数据:照片和图纸都是二维的,必须把多个视角的信息对齐,推断构件在三维空间中的位置,再整理成能驱动建模代码的结构化描述。

Gemini 4 Carbon 的模型卡显示,它支持文本、图像、音频和视频输入,输出为文本,总上下文额度为 1,048,576 Token。由此可以合理推断,展览是以 Three.js 代码这种“文本”形式交付的,三维效果由浏览器执行代码后呈现,而不是模型直接输出一个三维文件。

Google 在同一份公告里还展示过一个可参照的案例:Carbon 处理 7 份公开的城市规划 PDF,提取出 206 个工程图视图,经过 10 轮夜间迭代,最终生成约 906,000 个三角面的交互式 Three.js 建筑模型。两个案例思路相近,都是“异构资料 → 空间信息 → 交互式三维”。

gemini-4-carbon-eiffel-tower-3d-swarm-image-1


Gemini 4 Carbon 多 Agent 如何协同完成埃菲尔铁塔展览

Google 确认这个案例由多个 Carbon Agent 通过 /swarm 协作完成,但没有披露本次任务的具体分工。因此下面介绍的是 Antigravity 官方博客描述的 Swarm 一般机制,不是该案例的实录。

Swarm 组件 官方描述的职责 放到“资料到 3D”任务中的可能作用(分析)
Coordinator(协调 Agent) 接收总任务、拆解、分配子任务、整合结果 把“重现建设过程”拆成照片解析、图纸提取、建模、时间轴等子任务
Parallel Workers(并行工作 Agent) 在隔离的 Git Worktree 中并行执行子任务 分别处理不同资料或场景模块,避免互相覆盖代码
Adversarial Verifiers(对抗式验证 Agent) 检查修改、运行测试、挑战不合理改动 检查结构比例是否与图纸矛盾、页面能否正常渲染
Shared Message Board(共享消息板) 追加式记录协作进度,Agent 空闲时休眠 汇总各子任务的中间结果,供后续环节读取

Google 称 Agent 空闲等待时不消耗 Token,但同时提醒,多 Agent 并行执行仍会明显增加整体用量。官方还建议按角色分配模型:架构设计、任务协调、复杂审计交给 Carbon,常规实现和并行文件修改交给更快、更轻量的模型。

这种分工对工程资料重建很有意义。协调者需要深度推理来理解“哪些资料对应哪一阶段”,而批量生成杆件、拼接场景这类重复工作,并不需要每一步都动用最贵的模型。验证环节则是质量的保险,因为单个模型连续生成的三维结构很容易出现比例漂移。

gemini-4-carbon-eiffel-tower-3d-swarm-image-2


如何用 Gemini 4 Carbon API 尝试类似的图纸到 3D 任务

Antigravity 的 /swarm 是产品内功能,开发者无法通过一个 API 参数直接复现。但你可以用 API 搭一个简化版流程,体验“读图 → 抽参数 → 生成 Three.js”的链路。官方模型 ID 为 gemini-4-carbon。

极简示例:让 Carbon 解析一张施工照片

import base64
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.apiyi.com/v1"  # OpenAI 兼容的统一接口
)

with open("eiffel_1888.jpg", "rb") as f:
    img_b64 = base64.b64encode(f.read()).decode()

resp = client.chat.completions.create(
    model="gemini-4-carbon",
    messages=[{"role": "user", "content": [
        {"type": "text", "text": "判断照片中铁塔建到了哪一层,估算塔柱倾角与平台高度比例,输出 JSON。"},
        {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img_b64}"}}
    ]}]
)
print(resp.choices[0].message.content)

查看完整实现代码(简化版“协调—并行—验证”流程)
import base64
import json
from concurrent.futures import ThreadPoolExecutor
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.apiyi.com/v1"
)
MODEL = "gemini-4-carbon"


def encode(path: str) -> str:
    with open(path, "rb") as f:
        return base64.b64encode(f.read()).decode()


def ask(content, system: str = "") -> str:
    messages = []
    if system:
        messages.append({"role": "system", "content": system})
    messages.append({"role": "user", "content": content})
    resp = client.chat.completions.create(model=MODEL, messages=messages)
    return resp.choices[0].message.content


def worker_extract(path: str) -> str:
    """并行工作者:从单张照片或图纸中提取结构参数"""
    return ask([
        {"type": "text", "text": "提取该资料中的结构信息:所属施工阶段、塔柱倾角、平台高度比例、可见杆件排布,只输出 JSON。"},
        {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{encode(path)}"}}
    ], system="你是结构工程资料分析员,数据不确定时标注 uncertain,不要编造。")


def builder(merged: str) -> str:
    """构建者:根据合并后的参数生成 Three.js 页面"""
    return ask(
        "根据以下结构参数,生成单文件 HTML,使用 Three.js 构建四根格构塔柱与两层平台,"
        "并提供 1887—1889 时间轴滑块按阶段显示结构:\n" + merged
    )


def verifier(merged: str, html: str) -> str:
    """验证者:检查代码与参数是否一致"""
    return ask(
        "检查下列 Three.js 代码是否与结构参数一致,列出比例错误、阶段错误和无法运行的代码:\n"
        f"参数:{merged}\n代码:{html}"
    )


sources = ["photo_1887.jpg", "photo_1888.jpg", "drawing_elevation.jpg"]

with ThreadPoolExecutor(max_workers=3) as pool:
    results = list(pool.map(worker_extract, sources))

merged = json.dumps(results, ensure_ascii=False)
html = builder(merged)
report = verifier(merged, html)

with open("eiffel_exhibit.html", "w", encoding="utf-8") as f:
    f.write(html)
print(report)

这段代码是我们用普通 API 模拟 Swarm 思路的简化实现,并非 Google 的内部方案。有两点需要留意:Carbon 会忽略 temperature、top_p 等采样参数,传入 thinking_budget 会返回 HTTP 400;默认推理等级为 MEDIUM,高等级推理更耗 Token、响应更慢。

🚀 快速上手建议:做这类多图、多步骤实验时,最好先用小样本验证提示词效果。推荐通过 API易 apiyi.com 获取免费测试额度,一个 API Key 即可在 Gemini、Claude、OpenAI 等模型之间切换,方便把“轻量模型做批量提取、强推理模型做规划和验证”的分工落到代码里。


Gemini 4 Carbon 交互式 3D 展览与传统交付形式对比

Three.js 的作用,是让三维场景直接在浏览器中运行。观众不需要安装软件,就能旋转视角、缩放细节,或拖动时间轴查看不同年份的施工状态。下表对比了几种常见的历史资料呈现方式。

交付形式 信息维度 交互能力 可修改性 适合场景
静态历史图片 单视角二维 无 不可修改 档案保存、文章配图
视频 / 动画 预设视角 + 时间 只能播放暂停 需重新渲染 纪录片、宣传
普通 3D 渲染图 三维但视角固定 无 需回到建模软件 效果展示
交互式 Three.js 展览 三维 + 时间轴 自由视角、按阶段浏览 代码可迭代修改 数字展馆、教学、工程讲解

gemini-4-carbon-eiffel-tower-3d-swarm-image-3

交互式展览最大的价值在于“可追溯”。因为它本质上是代码,每一层平台、每一段塔柱都对应可读的参数,后续发现与图纸不符时可以定点修正,而不是推倒重来。这也是验证 Agent 能够发挥作用的基础。


Gemini 4 Carbon 埃菲尔铁塔演示的影响分析

先强调边界:这是 Google 官方展示的案例,不是独立第三方验证的结果。它说明了 Carbon 加 Swarm 能做到什么,但不能直接推出“任何建筑资料都能稳定重建”的普遍结论。

对开发者的影响

  • 工作流从单次调用转向编排:一条提示词背后是多个 Agent 的分工,开发者需要关注任务拆解、中间结果格式和验证机制。
  • 成本要按任务而非按单价计算:Carbon 首发价为每百万输入 Token 2 美元、输出 10 美元,12 月 1 日起翻倍;思考 Token 计入输出,多 Agent 并行还会放大用量。
  • 多模型混用更现实:官方建议只让 Carbon 承担规划、协调和审计,批量执行交给轻量模型,这对控制成本很关键。

对行业的影响

  • 历史建筑数字化:大量只存在于照片和图纸中的建筑,有机会以更低门槛转化为可交互模型,供研究者比对。
  • 工程资料重建:城市规划 PDF 案例和铁塔案例都指向同一方向,即从异构文档中提取空间信息。
  • 数字展览与教育可视化:博物馆和教师可以把“5,300 张图纸、250 万颗铆钉”这类抽象数字,变成学生能拖动时间轴观察的场景。

同时也要看到限制。/swarm 目前仍是预览功能,模型卡明确提示 Carbon 可能出现幻觉,高推理等级可能响应较慢甚至超时。在需要严格精度的工程场景中,AI 重建结果仍应由专业人员复核。


常见问题 FAQ

Q1:Gemini 4 Carbon 埃菲尔铁塔演示到底做了什么?

据 Google 11 月 10 日公告,多个 Gemini 4 Carbon Agent 通过 Antigravity 的 /swarm 功能,以历史照片和工程图纸为输入,由一条提示词启动,生成了重现 1887—1889 年建设过程的交互式 Three.js 3D 展览。

Q2:一条提示词是不是意味着模型一次就生成了完整展览?

不是。用户只发出一条指令,但后续由多个 Agent 在 Swarm 框架中拆解任务、并行处理和互相检查。Google 未公开该案例的具体分工,协调、工作、验证三种角色是 Swarm 的一般机制。

Q3:演示中的埃菲尔铁塔历史数据可靠吗?

本文引用的 18,038 件构件、5,300 张图纸、250 万颗铆钉以及施工时间线,均来自埃菲尔铁塔官方网站的历史档案。至于 Google 展览中对这些数据还原到什么精度,官方没有给出量化说明。

Q4:这种“资料到 3D”的能力适合哪些场景?

– **历史建筑档案数字化**:把老照片和测绘图转化为可浏览模型。
– **城市规划与工程审阅**:从规划 PDF 中提取图纸视图并生成交互模型。
– **课堂与展馆**:用时间轴演示大型工程的建造阶段。

Q5:没有 Antigravity,能通过 API 调用 Gemini 4 Carbon 做类似实验吗?

可以。Gemini API 付费用户可直接调用 `gemini-4-carbon`,不需要购买 Google AI Ultra。如果希望用一个 Key 同时测试多个模型,可以在 API易 apiyi.com 注册获取测试额度,再用本文代码搭建简化的“提取—生成—验证”流程。

Q6:复现这类多 Agent 任务的成本高吗?

成本主要取决于推理等级、图片数量和迭代轮数。思考 Token 按输出计费,多 Agent 并行会显著放大总用量。建议先用 MEDIUM 等级和少量样图跑通流程,再逐步扩大规模;通过 API易 apiyi.com 按量计费测试,便于在投入前估算真实开销。

Q7:这个演示有哪些局限?

它是 Google 官方演示,不是第三方独立验证;/swarm 仍处于预览阶段;Carbon 仍可能出现幻觉,高推理等级可能较慢。在工程精度要求高的场景,结果需要人工核对图纸。


Gemini 4 Carbon 埃菲尔铁塔演示核心要点 Key Takeaways

  • 案例本质:多个 Carbon Agent 把历史照片和图纸转成 Three.js 交互展览。
  • 一条提示词不等于单轮生成:背后是 Swarm 的任务拆解与并行协作。
  • 工程难度真实存在:18,038 件构件、5,300 张图纸,结构精度要求极高。
  • 交付形式是代码:Carbon 输出文本,展览以可修改的 Three.js 代码呈现。
  • 成本要看整体:多 Agent 并行放大用量,按角色混用模型更经济。
  • 边界要说清:官方演示不代表普遍性能,Swarm 仍是预览功能。
  • 上手方式:可借助 API易 apiyi.com 统一接口,小样本验证读图与建模流程。

总结

Gemini 4 Carbon 的埃菲尔铁塔演示,核心看点有三个:

  1. 输入是异构历史资料:照片和工程图纸需要被理解、对齐,并转换为空间参数。
  2. 过程是多 Agent 协作:一条提示词启动 Swarm,协调、执行、验证分工完成任务。
  3. 交付是可交互的三维展览:Three.js 让 1887—1889 年的施工过程能在浏览器中被自由浏览。

对开发者来说,更值得借鉴的是“深度推理模型做规划、轻量模型做执行、验证环节兜底”的编排思路。推荐通过 API易 apiyi.com 用小规模资料先跑通流程,再决定是否投入更大的多 Agent 任务。


📚 参考资料

  1. Google 官方公告:Gemini 4 Carbon is now available:埃菲尔铁塔案例与 /swarm 发布信息
  2. 链接: blog.google/innovation-and-ai/models-and-research/gemini-models/gemini-4-carbon-now-available/
  3. 说明: 案例的原始描述、开放范围与价格变化

  4. Google Antigravity 官方博客:Gemini 4 Carbon in Google Antigravity

  5. 链接: antigravity.google/blog/gemini-4-carbon-in-google-antigravity/
  6. 说明: Swarm 的协调、并行工作、对抗式验证与消息板机制

  7. Gemini 4 Carbon Model Card:Google DeepMind 模型卡

  8. 链接: deepmind.google/models/model-cards/gemini-4-carbon/
  9. 说明: 输入输出模态、上下文额度与已知限制

  10. Gemini 4 Carbon 开发者指南:Google Cloud 文档

  11. 链接: docs.cloud.google.cn/gemini-enterprise-agent-platform/models/guides/gemini-4-carbon
  12. 说明: Thinking Level、参数限制与长解码说明

  13. 埃菲尔铁塔官方历史资料:La tour Eiffel

  14. 链接: toureiffel.paris/en/the-monument/history
  15. 说明: 构件数量、图纸数量、施工时间线与结构设计背景

作者: APIYI 技术团队
技术交流: 对多 Agent 编排或多模态 3D 生成有疑问,欢迎通过 API易 apiyi.com 网站首页联系我们交流

延伸阅读

类似文章