早在1997年便搭建完成的个人网站,每次修改一行文字都需要打开终端手动编写HTML代码,这种维护方式一坚持就是将近三十年。
如今,著名数学家陶哲轩决定将自己的个人主页交给一个AI智能体来管理。
仅仅花费了一天时间,多达560篇论文及预印本、374次旅行记录、68门课程资料、19本著作以及29个数学小工具程序,便从一套运行了近三十年的老旧架构中批量迁移出来,在GitHub Pages上重新安了家。
比这次网站搬家更有价值的,是迁移过程中的意外收获。
AI智能体在扫描这近三十年的旧站点时,发现了一堆相互矛盾的信息、早已过时的条目以及失效的链接。这些错误都是陶哲轩自己在几十年的维护过程中一点一点积累下来的。
更令人惊讶的是,它顺手把那些用Ja va 1.0编写的老旧数学小程序移植成了Ja vaScript,并且在陶哲轩二十多年前亲手编写的原始代码中,揪出了两个连他自己都从未察觉的bug。
这一次,AI并没有去证明数学定理,而是替这位数学家干了他最不想碰的“数字家务活”。

近30年的老架构,他一直撑到了2026年
陶哲轩的个人网站始建于1997年,当时他还只是UCLA的Hedrick助理教授。页面上挂满了手工整理的外部链接,从sci.math新闻组到他喜爱的《时光之轮》系列。典型的Web 1.0风格——每个页面一个主题,满屏都是文字链接,完全依靠人工维护。
1997年5月21日,还是助理教授的陶哲轩,与他刚刚建好的个人主页合影。
近三十年来,这套网站架构再也没有变过。陶哲轩不断往上面添加内容:三百多篇论文的详细子页面、教学记录、旅行日程、个人简历、书籍勘误表。他的做法始终是一页一页地手动修改,改完之后再手动上传,早年间甚至是在Unix账户里直接使用vi编辑器手工敲代码。
他向21世纪做出的唯一一次妥协,是改用现代网页编辑器来生成HTML,但代价是生成的代码比他当年手写的版本要臃肿得多。内容虽然呈线性增长,但维护成本却是指数级飙升。中途他曾把书籍页和职业建议搬到了博客上,缓解了一部分压力,但整体依然很笨拙。当内容越积越厚,修改的成本也越来越高,最终达到一个临界点,你开始默许那些错误长期留在那里。
而那些Ja va小程序死得更彻底。浏览器早已抛弃了Ja va 1.0,他一个人也没有精力把二十多个程序移植到新语言上,页面就那么挂着,一挂就是十年。

YAML才是真相,网页只是一个“打印件”
陶哲轩说,他最近才意识到:有了AI智能体的帮助,迁移这套运行了近三十年的老网站系统,本应是一件例行公事。于是他真的尝试了。过程“相当无痛”,他这样评价道。
关键在于,他没有让AI去逐页重写一批HTML,而是让AI重建了一套完整的数据流水线。这个新仓库名为tao-web,逻辑上类似于一个印刷厂。底稿存放在data目录下的YAML文件中,八类内容各有一个独立的文件夹;schema负责管理格式,规定了每个字段应该是什么样的。两个Python脚本,一个负责校验,一个负责生成。校验不通过,代码根本无法推送。生成的网页被放入site目录,但不纳入版本库。最后只需要推送一次main分支,GitHub Actions就会自动完成校验、生成和发布的全流程。
仓库README中的一句话,支撑起整套路架构:YAML是唯一的真相来源,网页只是生成出来的产物。后面还跟着一句操作守则:要改数据,永远不要去修改site目录下生成的HTML。
在旧系统中,每个页面都是一份独立的事实陈述。同一个信息散落在五个不同的页面上,只要漏改一个,它们就开始“打架”。而在新系统中,事实只存在一份。网页降级成了纯粹的显示层,就像一张随时可以重新打印的纸。一个人的知识库,就这样从一堆杂乱文档变成了一个结构化的数据库。
tao-web仓库。README里明确写着:YAML是唯一真相源,网页是生成出来的。(图源:GitHub teorth/tao-web)

AI在他的老代码里,挑出两个bug
搬完数据之后,陶哲轩顺手做了第二个实验。从1999年开始,为了给复分析和线性代数课程制作可视化工具,他陆续用Ja va 1.0编写了一批小程序。当年这些程序反响不错。但后来浏览器不再支持那个版本的Ja va,这批工具便集体过时了。
现在,他让AI智能体把它们全部移植到了Ja vaScript上,二十来个小程序,仅仅几个小时就全部复活了。
大模型在生成代码时通常会制造各种明显或隐蔽的bug,在这些小程序的移植过程中,陶哲轩只发现了一个问题:某个复分析小程序在拖拽出主显示框时,行为不太正常。反过来,智能体却在他的原始代码中找出了两个他自己从未意识到的bug。一进一出,他的结论是:代码质量净打平。
一位菲尔兹奖得主,被AI在自己二十多年前的代码里挑出了两处错误。他紧接着给这个结论划了一条清晰的边界:这些小程序只是辅助性的视觉工具,并非数学论证的关键部分,因此出bug的风险后果本来就不高。拖拽出框,用户自己就能发现。但如果是证明写错了,那就是职业事故。这条边界,恰恰是陶哲轩这套方法论的关键所在。

错不可怕,修不动才可怕
陶哲轩并没有回避AI的幻觉问题。他明确表示,现代AI依然存在幻觉倾向,在迁移过程中有可能引入了新的错误。但经过他本人的仔细检查,现在的错误率“看上去确实比以前低了”。而且更重要的是,大规模纠错变得容易得多。
当然,这只是他人工复核之后的个人印象,并非经过评测得出的精确数字。
陶哲轩并没有拿AI去和“完美”做比较,而是拿“AI加上人工复核”这个组合,去和自己“纯人工维护三十年”做对比。人工维护本身就是一个持续产生错误的机器,只不过它错了三十年,没有人有精力去逐一排查。大多数关于AI的争论,都卡在“它会不会出错”这一个问题上。而陶哲轩主要衡量的是:谁的错误率更低,谁的纠错成本更小。存量错误并不可怕,可怕的是修不动。旧站点要改一个信息需要翻五个页面,而新站点只需要改一行YAML,全站就会自动重建。

一个搁置了27年的想法,两小时做完了
移植完老程序之后,他决定再往前走一步。1999年,他曾有过一个雄心勃勃的构想:为狭义相对论制作一个可视化工具。他想要的是一块能画出相对论的画板:画一条运动轨迹上去,然后切换观察者的视角,整张图就会自动按照相对论的规则变换。用他的话说,就是“闵可夫斯基空间里的Inkscape”。他甚至已经动手写了Ja va代码,但最终因为代码复杂度太高而放弃,项目就此中断。
这次,他与AI智能体一起用“vibe coding”的方式合作了两个小时,那个1999年的构想就被实现了。7月11日,这个时空图模拟器正式上线,成为新站点上第一个原创应用,他自己还注明这只是一个alpha版本。
当年拦下他的并不是数学本身,而是代码复杂度。27年之后,这块短板终于被补齐了。
1999年构想、27年后上线的时空图模拟器。同一趟星际旅行,左右两个参照系各画一遍。(图源:teorth.github.io/tao-web)
陶哲轩为整件事写下了一个注脚。他说,网页维护大概是学术工作流程中最不迷人、最不令人兴奋的环节之一。而恰恰是这类枯燥的例行任务,特别适合现代平台(比如GitHub),也特别适合自动化工具——既包括现代AI,也包括传统的确定性脚本。
有多少实验室、期刊、研究机构,还压着几十年的HTML、Excel文件和本地目录。AI智能体的第一份现实工作,可能就是扮演这些“数字资产”的迁移工程师。
当然,这件事证明的是AI适合做资料迁移、结构化和自动化维护,并不意味着AI已经能可靠处理所有学术数据,更不意味着人工校验可以省略。它真正改变的,是一位数学家与他三十年积累之间的关系:过去他要亲自打理这些积累,而现在他变成了一个最后把关的人。
参考资料:
https://mathstodon.xyz/@tao/116893088594916122
https://terrytao.wordpress.com/2026/07/11/old-and-new-apps-via-modern-coding-agents/
https://github.com/teorth/tao-web
https://teorth.github.io/tao-web/https://news.ycombinator.com/item?id=48880170
