Markdown 会成为 AI 时代的编程语言吗?
Markdown 会成为 AI 时代的编程语言吗?
编程语言是接口。它们定义了人类如何向机器表达意图。汇编语言与 CPU 对话,SQL 与数据库对话,JavaScript 与浏览器对话。如今,随着大型语言模型成为一种新的计算基础,有一个值得探讨的问题:什么语言与 AI 对话?
答案可能是一个已经存在的东西,一个大多数开发者不假思索就会使用的东西:Markdown。
效率数据
这不是一个哲学论点,而是可以量化的论点。
LLM 将文本处理为词元(token)。每一个 HTML 标签、CSS 类名和数据属性都会消耗词元,却不贡献任何语义。一篇典型的 3000 字文章用 HTML 渲染可能包含 8000 个词元,而同样的内容用 Markdown 表示大约只需 2800 个词元——减少了 65%。
对比如下:
| 格式 | 词元数(3000 字文章) | 相对成本 | |------|---------------------|---------| | 原始 HTML | ~8,000 | 1.0× | | 清理后的 HTML | ~4,500 | 0.56× | | Markdown | ~2,800 | 0.35× | | 纯文本 | ~2,400 | 0.30× |
Markdown 在效率上优于清理后的 HTML,同时保留了纯文本所缺失的语义结构。标题告诉模型这是一个章节边界,代码块告诉模型这是代码而非正文,列表传达并列结构。纯文本则没有这些——它只是文字。
训练数据的契合性
LLM 对格式并非一视同仁,它们的偏好已深植于训练数据之中。
GPT、Claude、Gemini 和 Llama 的训练语料库都包含大量 Markdown:GitHub 的 README 文件、Stack Overflow 的帖子、Reddit 评论、文档网站、Jupyter 笔记本。这些模型已经见过数十亿次 Markdown,它们不只是解析 Markdown,而是用 Markdown 进行思考。
当 Claude 或 ChatGPT 回答问题时,默认使用什么格式?Markdown。章节用标题,重点用粗体,枚举用列表,代码用代码块。这些模型默认使用 Markdown,因为那是它们训练最深入的格式。
这形成了一个正向循环:AI 最善于读取 Markdown,AI 原生输出 Markdown,向 AI 输入 Markdown 的用户获得更好的结果,更多 Markdown 被创造出来,更多 Markdown 进入训练数据。
GEO 革命:llm.txt 与语义网络
搜索引擎优化(SEO)的出现,是因为网站需要被 Google 的爬虫发现。如今,一个新领域——生成式引擎优化(GEO)——正在兴起,因为网站现在需要被 AI 爬虫理解。
2024 年提出的 llm.txt 规范,要求网站在 /llm.txt 路径发布一个纯文本 Markdown 文件,概述其内容、API、使用场景和功能。其理念是:AI 系统在爬取网络信息时,可以读取这个文件来了解网站的内容,而无需解析数千个页面。
早期采用者包括开发者工具、AI 公司和 SaaS 产品。该规范尚未成为标准,但正在不断发展。
与此平行的还有一个发展:llms-full.txt,供希望 AI 爬虫访问完整内容的网站使用。可以将其视为面向 AI 的 robots.txt,但它不是阻止访问,而是主动邀请并引导访问。
共同点在于:这一切都是 Markdown。
Markdown 作为中间层
在计算领域,一些最持久的技术是中间层——在两个世界之间进行转换的格式。POSIX 处于应用程序和操作系统之间,HTTP 处于客户端和服务器之间,SQL 处于应用程序和数据库之间。
Markdown 可能正在找到自己的定位——作为人类意图与机器理解之间的中间层。
考虑这条链路:
- 人类写作或查找信息(散文、HTML、PDF)
- 该信息被转换为 Markdown(通过 Web2MD、Pandoc 或类似工具)
- Markdown 被输入到 AI 模型
- AI 生成 Markdown 响应
- 人类阅读响应,可能将其转换回其他格式
在每一个需要将人类意义跨越鸿沟传递给机器处理再传回的步骤中,Markdown 都出现了。
反驳观点:Markdown 还不够
将 Markdown 称为传统意义上的编程语言会是一种过度解读。编程语言具有形式语法、类型系统和执行语义,而 Markdown 是一种有意保留模糊性的格式约定。
真正可能出现的是结构化 Markdown——用机器可读的约定来增强 Markdown:
- YAML 前置数据用于元数据(已在 Jekyll、Hugo、Obsidian 中成为标准)
- Dataview 查询(Obsidian 插件)将 Markdown 文件转变为可查询的数据库
- MDX(Markdown + JSX)在正文中嵌入可执行组件
- 提示词模板使用带有
{变量}的 Markdown 进行 AI 指令编写
发展轨迹十分清晰:Markdown 正在获得结构化能力,同时不失其人类可读的核心特性。
实践结论
无论 Markdown 是否在正式意义上成为"编程语言",它在 AI 工作流中的角色已经举足轻重:
- LLM 提示词的首选输入格式
- LLM 响应的首选输出格式
- AI 索引知识的存储格式(Obsidian、Notion、Logseq)
- 人机协作的传输格式(llm.txt、API 文档)
- 网络内容转换的中间格式(Web2MD、Pandoc)
最持久的计算格式得以存续,是因为它们简单、人类可读且具有互操作性。Markdown 二十年来一直具备这三点。AI 时代并没有威胁 Markdown,而是在印证它的价值。
如果你正在构建 AI 工作流,Markdown 不是可选项,而是基础。
Web2MD 一键将任意网页转换为经 AI 优化的 Markdown。立即开始构建以 Markdown 为原生格式的 AI 工作流。