第 23 届 ChinaJoy 刚结束,我把 965 个展台做成了 3D 云展馆

2026 年 8 月 3 日,第二十三届 ChinaJoy 在上海新国际博览中心落幕。主题是「与AI同游」:900 多家企业、超 14 万平方米、39 个国家和地区的展商、超过 500 家游戏公司带来逾 1000 款产品。新增的 Vision Future 前沿科技展区里,人形机器人和 AI 大模型成了新主角。

我没去现场,但做了一件事:把官方名录里的 965 个展台 ,按官方展馆布局一比一搬进一个 3D 场景。17 个馆体(含 4 个空馆)、965 个可点击的展台,一个不少。点开任意一个,能看到品类、亮点、热度,以及一行小字:模型对这条信息有多确定

它不是一张只能看的全景图。你可以搜展商、查官方日程、说一句话生成一条逛展路线、看统计图表------全程数据可溯源,每个数字都来自官方公开数据。

我把它做成了一条会展情报的数据管道:官方数据全量收集 → AI 结构化提取 → 3D 渲染 → 智能逛展。今年装的是 ChinaJoy,明年换一份数据,它还是它。

这篇文章讲讲它是怎么一步步做出来的。


一、为什么做这个

展会信息是互联网上最散的一种数据。官方名录、媒体报道、社媒攻略、厂商通稿------同一个展商,五个来源五种说法。想逛个展,先做考古:翻十几篇攻略,对着展馆图找 N4 在哪,再查展台在哪个区。

作为独立开发者,我平时做外贸、跑展会、盯展商名录是常事。每次最头疼的就是信息整理------资料散在 Excel、官网、微信群、会刊 PDF 里,真要查一个展商的展位和介绍,得开五六个窗口。

所以我做了件反过来的事:不整理攻略,整理数据本身。 攻略三天就过期,数据不会。

ChinaJoy 官网本身就有公开的展商名录接口:展位号、所在馆、官方介绍、官网、LOGO,全是官方自己公开的内容,和会刊上印的一致。我把全部 965 家完整收集------不是媒体报道的二手转述,是官方一手数据。

数据有了,但 965 条原始记录没法直接逛。这时候轮到 Seed Evolving 上场------8 月 3 日它刚完成第二次升级,三大能力里有一条叫「幻觉控制」。我很好奇一件事:

让它批量分析 965 个展台,它会不会编?


二、它能做什么

先看成果,再说怎么做的。

搜展商,一秒飞到

顶栏输入展商名或展位号,镜头直接飞过去。搜「腾讯」跳到 N4-03,搜「N1-CJE76」这种展位号也行。不用翻会刊,不用对图例。

点展台,看情报卡

每个展台点开是一张情报卡:品类、2-3 条核心亮点、目标人群、热度,以及最关键的置信度。AI 提取的亮点和官方原文并排展示,对得上才信。置信度低于 0.4 的展台,卡片上会顶一个琥珀色的「待验证」。

说一句话,生成逛展路线

这是我最喜欢的功能。输入「我想看 3D 游戏」,它直接排好一条 5 站路线:

css 复制代码
① 索尼(N1)→ ② B站(N2)→ ③ 网易(N3)→ ④ 网之易(N3)→ ⑤ 腾讯(N4)

路线遵守官方动线:普通票从 1 号门进,先逛 E 馆,穿过中央通道到 N 馆(西南→东北);VIP 票从 4 号门直接进 N 馆。站与站之间画出一条 3D 光带,点「开始巡航」,一个小人沿光带走,镜头跟着走。

更打动我的是它的诚实。输入「我想看科幻小说」这种没有直接匹配的,它不会硬编一个结果,而是明确说:

「未找到直接匹配,推荐 内容平台 区内容展台(置信度 0.4)」

不硬编,不硬推,给一个带置信度的替代方案。

官方日程,按天排好

131 场子日程、185 位嘉宾,按日期分三组(7-30 / 7-31 / 8-01),每组按时间排序,每场显示时间、类型、话题、嘉宾。有 Team NINJA 制作人这种国际嘉宾,也有 AI 短剧论坛这种行业话题。

展会洞察,四张图看穿

四个图表全部来自真实数据,纯 SVG 自绘:品类分布环形图、AI 相关展台占比、N/E/W 三区品类差异、置信度分布直方图。不用逛完,光看图表就能对「这届展会是什么构成」有个整体判断。

BTOB 游戏专场

官方还有一份 BTOB 专场数据:17 款知名游戏(燕云十六声、幻兽帕鲁、赛博朋克 2077、天外世界 2、洛克王国......)按 RPG / 策略 / 动作冒险 / Indie 分类,加上 78 张官方专场 Logo 组成的品牌墙。BTOB 区不只是商务洽谈,也是新游集中亮相的地方。


三、数据:965 不是吹的

字段很全:中文名、展位号、所在馆、品类 ID、官方介绍、官网、logo。但展位号格式五花八门:

css 复制代码
N1-CJE76    (N 馆 1 号,CJE 系列)
E5-414      (E 馆 5 号,简写)
W4-B-IG001  (W 馆 4 号,B 区独立游戏)
N1-CJE37-39,46-48  (一个展商占多个展位)

这些格式差异,直接决定了后面坐标算法的复杂度。

数据收集完做了两层校验:

第一层:完整性。 ID 级对应零缺失------原始数据 965 条,进入场景的展台 965 个,一个不多一个不少。

第二层:真实性。 抽取知名展商交叉验证:腾讯在 N4-03、高通在 N5-01、PlayStation 在 N1-G001、网易在 N3......全部和官方信息对得上。官网抽查 HTTP 200,嘉宾日程可查证。

审计还发现一些细节:25 家海外展商没有中文名(Doro Mobile、Sensor Tower、Razer Gold 这些),是因为官方数据在英文区、中文名本来就是空的,不是抓取错误;14 组展商同名,是因为一家公司租了多个展位。这些都保留了下来,没有为了好看而「修正」。


四、AI 提取:965 条介绍 → 结构化情报

965 条原始记录没法直接逛,需要一步:把每家的官方介绍,变成结构化情报。

这一步交给 Seed Evolving 分批完成。每家提取四样东西:

字段 说明 规则
品类 映射到 8 个大类 游戏 / AI科技 / 硬件 / 内容平台 / 营销服务 / 独立游戏 / 影视动漫 / 其他
亮点 2-3 条核心卖点 严格基于官方介绍,缺失则留空,绝不虚构
目标人群 谁适合来看这家 基于介绍信息量估算
置信度 模型对以上判断有多确定 介绍越详细越高,空介绍给 0.2-0.4

关键在最后一项------置信度。这不是噱头,是幻觉控制的直接体现。原始数据有 16 个细分品类,UI 展示时归并成 8 个大类(比如「游戏硬件」并入「硬件」、「文创潮玩」并入「影视动漫」),归并后 965 家分布如下:营销服务 354、独立游戏 170、硬件 131、游戏 78、AI 科技 70、影视动漫 69、内容平台 17、其他 76。

965 个展台的置信度分布:

置信度 数量 占比
0.8 以上 694 个 72%
0.6--0.79 236 个 24%
0.4--0.59 25 个 3%
低于 0.4(待验证) 10 个 1%

注意这个分布的形状------没有出现「全部 0.8+」的完美分布。694 个高把握,是因为这些展商官方介绍写得详细(腾讯、高通这种大厂动辄几百字);25 个低把握、10 个待验证,是因为它们的介绍确实只有一两句话。模型如实反映了信息量,没有为了显得聪明而假装什么都懂。


五、它承认自己不确定

这是我最想讲的部分。

10 个待验证展台里,有一个特别典型:抖音直播

它的中英文简介都是空的,没有任何信息。Seed Evolving 给它的置信度是 0.25。按规则,置信度低于 0.4 的展台,界面上显示琥珀色的「待验证」。

这里有个细节值得说:抖音直播是知名产品,如果模型「懂事」一点,完全可以给个 0.8------反正也没人较真。但它没有。它诚实地给了 0.25,因为官方简介确实信息不足。

这才是幻觉控制的真正意义:不是所有回答都正确,而是每个回答都标了「我有多确定」。

一个模型不会因为承认不确定而显得弱。恰恰相反,在 965 条信息面前,知道哪些是确定的、哪些不是------这本身就是一种能力。而且这种能力可以验证:每个「待验证」背后,都对应一份信息量不足的官方介绍,点开情报卡就能核对原文。


六、把 965 个展台放进 3D 空间

布局:以官方图为唯一依据

15 个有展台的馆体加上 E1/E2/W1/W2 四个空馆,共 17 个馆体。N 馆 5 个在北侧横排(N1 西→N5 东),E 馆 7 个在东南斜向(E1 左下→E7 右上),W 馆 3 个在西侧(BTOB)。中央通道分隔 N 馆与 E 馆,1 号门在南侧(普通票)、4 号门在北侧(VIP→N1)。

图片来源:ChinaJoy 官方

这里有个小插曲。我最初想让 Seed Evolving 直接照着官方布局总览图生成 3D 场景,效果很差------官方图上元素太密:展馆编号、通道标注、入口标识、广告位......模型抓不住重点,生成的布局是乱的。

那就先把布局图简化再喂给它。第一版只保留展馆相对位置、形状、N/E/W 分区,效果好了不少,但间距和排列方向还不够干净;第二版去掉所有文字,只留纯几何块------N 区一排、E 区斜排、W 区一列,这次终于对了。

这件事给我的启发是:和模型协作,不是把最全的信息丢给它,而是帮它先想清楚「什么重要」。简化到什么程度,比模型本身更能决定结果好坏。

坐标算法:四版迭代

965 个展台放进 3D 空间,核心是「展位号 → 三维坐标」的转换。这一步我踩了大坑,一踩就是四版。

  • 第一版:哈希散列。 把展位号直接哈希成坐标。跑完一看,965 个展台 671 个叠在一起,光柱跟叠罗汉一样,没法看。卒。
  • 第二版:按展区分组。 按展位号前缀(N/E/W + 馆号)分组,组内再排网格。碰撞从 671 降到 130,但展区之间衔接还是乱。
  • 第三版:发现单馆容量问题。 W4 馆有 249 个展台,固定网格根本装不下,展台会互相穿模。这才意识到网格尺寸必须跟着展台数走。
  • 第四版:动态盒体。 按展区代码分组、组内编号排网格、子序号微偏移、展馆尺寸随展台数动态适配。965 个全部可解析,碰撞只剩 22 个(2.3%)。

有意思的是,第四版不是我想出来的,是 Seed Evolving 在处理第三版数据时自己发现「固定网格会撞」这个问题,主动提出动态适配方案,我确认后它重构了算法。这个迭代就是 Coding 工程能力的真实战场------不是写新代码,是在已有代码上发现问题、定位根因、修正方案。而这一次,提出方案的是模型自己。

性能:965 展台不卡

3D 渲染里有个概念叫 draw call------浏览器每帧给显卡下的指令。965 个展台单独画就是每帧 965 条指令,显卡忙不过来,帧率就崩。

解决方案是 instancedMesh:把 965 个展台合并成一次指令,同一个几何体换不同的位置、颜色、高度,一次告诉显卡「画 965 个,位置都在这」。整帧 draw call 从 965 降到 30 以内。鸟瞰时再用 LOD 优化,镜头拉远就自动降级成单点渲染,贴脸看一个展台或拉远看整个场馆都流畅。


七、模型是怎么跑起来的

这套流程我是直接买火山方舟 Agent Plan订阅来测的。

做这种多轮迭代项目,调用次数非常多:965 个展台分批提取,每批来回调;坐标算法改四版,每版都跑;还有各种试错。按量付费心里没底,订阅制一个固定成本,用多用少都这个价。

这个订阅一份覆盖国内主流模型:豆包 Seed 系列(包括本文主角 doubao-seed-evolving,1024k 上下文),加上 GLM、MiniMax、DeepSeek、Kimi。我实际是「混合用工」:Seed Evolving 做主力,负责写场景、改算法、重构组件这类复杂编码;DeepSeek 跑得快,做格式检查、文案润色这类小任务。一个订阅、一个入口,模型切换就是改个名字,需要省事就开 Auto 模式让系统按任务自动调度。


八、技术规格

数值
展商数据 965 家(官方公开数据,两层校验)
展馆 17 个馆体(N1--N5 / E1--E7 / W1--W5,其中 E1、E2、W1、W2 为空馆)
官方日程 131 场子日程 / 185 位嘉宾
AI 相关展台 280 个(29%)
置信度分布 694 高把握 / 236 中 / 25 低 / 10 待验证
展台渲染 instancedMesh 合并(965 展台 draw calls < 30)
坐标算法 4 版迭代,碰撞 671 → 22(2.3%),965/965 可解析

每个数字都在项目里找得到对应------不是宣传口径,是构建时从真实数据统计出来的。


九、做过的取舍

做完之后回头看,有几个决策比功能列表更值得说------它们决定了这个项目「可信」还是「好看但不经查」。

  1. 诚实优于完整。 官方 BTOB 数据里有 95 条记录,但只有 17 条有完整企业名,其余 78 条只有 Logo。产品选择展示 17 家命名游戏 + 78 张 Logo 品牌墙,而不是用 AI「猜出 95 个名字」。缺数据就展示缺,比假名单更有说服力。

  2. 官方简介不进主数据包。 965 段文字塞进 scenes.json 会撑爆体积。改成独立 JSON 文件,点开情报卡时才懒加载。

  3. 馆内分位 > 全场热度。 光柱高度用馆内百分位,而不是全场统一热度值。否则大馆天然比小馆高,鸟瞰信息密度假高。

  4. 待验证必须可见。 置信度低于 0.4 的展台标琥珀色警告,不靠文案淡化。这是幻觉控制的底线,不是可以商量的 UI 细节。

  5. 交互保对比。 选中一个展台时,鼠标仍可悬停查看旁边的展台。适合「这家和那家比什么」的真实逛法,不用先关掉当前详情。

还没做完的

项目本身已经能逛了,但离"完美"还有距离。目前有两件事没落地:

  • 大面积展台的面积角标(area_m2:腾讯 150㎡ 这种大展台,值得一个醒目的标记,数据都在,只是 UI 还没做。
  • 一键截图分享:逛到喜欢的视角想发朋友圈,现在还得靠系统截图,体验不够顺。

这两件事都不复杂,属于"数据准备好了、就差一层 UI"的活。我把项目开源了,感兴趣的小伙伴可以直接下载,继续优化和完善------代码结构、数据格式都在 README 里写清楚了,接手的成本不高。

这些不影响「965 展台可逛」的主结论,但影响下一轮打磨。做完这个项目我最大的感受是:链路完整、数据诚实、交互站得住------这三件事做好了,功能本身反而是可以慢慢加的。


写在最后

做完这个项目,我对「幻觉控制」有了新的理解。

以前总觉得 AI 的「不确定」是缺陷。现在发现,敢不敢标「待验证」,才是模型成熟度的分水岭。

这个项目里,模型的能力分了三层:

  • Coding 工程:从零搭起 965 展台的 3D 应用,坐标算法四版重写、布局方案两轮简化
  • Agent 检索:全量数据提取加缺失召回,路线无匹配时给置信度替代方案
  • 幻觉控制:965 个展台每个标置信度,10 个诚实标注「待验证」,情报卡里 AI 亮点和官方原文可对照

而我把这三层,变成了一件「逛」就能验证的事。

数据管道是通用的。这次装的是展会,换一个输入------发布会、演唱会、电影片单------就是下一个云场馆。

项目已开源,在线就能逛:

打开 Demo,建议按这条路径走一遍:鸟瞰认馆 → 点一个高热展台 → 展开官方简介 → 看置信度 → 切到日程翻一天 → 打开分析看 BTOB

五分钟走完,比刷十篇现场稿,更接近「整场 ChinaJoy 的结构感」------展馆在哪、谁在讲、AI 提炼了什么、哪些结论还不够稳,一趟逛下来心里就有数了。

数据是官方的,判断是模型的,确定与不确定,都是透明的。

相关推荐
程序员黑豆3 小时前
鸿蒙应用开发之生命周期方法完全指南
前端·harmonyos
wordbaby3 小时前
前端请求缓存写了,同一个接口为什么还是打了十几次?
前端·promise
不可能掉发3 小时前
Env Guard:让浏览器一眼分清生产、测试和开发环境
前端·javascript·chrome·测试工具·html·开源软件·个人开发
茨球是只猫3 小时前
A 股 AI 量化全链路系统技术拆解:分层架构、双引擎验证与低换手实盘闭环
人工智能·机器学习·架构·量化交易
饼干哥哥3 小时前
Codex 必改的8 个基础配置
前端·人工智能·后端
ifenxi爱分析3 小时前
GEO市场规模有多大?2026—2030年中国GEO市场规模预测
大数据·人工智能
ClouGence3 小时前
AI Agent 能写测试、跑流程,为什么回归测试还不能完全交给 AI?
前端·测试
码云之上3 小时前
Context Engineering:让 Agent 在当前步骤看到正确的事实
前端·人工智能·前端工程化
百度Geek说4 小时前
面向 Coding Agent 的多仓库 Git Worktree
人工智能