返回博客

为什么 AI 聊天机器人会说 Markdown

2025-12-083 min read

如果您曾与 ChatGPTClaudeGemini 或任何现代 AI 助手(包括本网站右下角的那个)交谈过,您可能已经注意到了:它们的回复带有 粗体字、项目符号和可点击的链接。这不是魔法。这是 Markdown。

什么是 Markdown?

Markdown 是由 John Gruber 于 2004 年创建的一种使用简单符号来格式化文本的轻量级方式。您无需点击文字处理器中的按钮,只需输入代表格式的字符即可:

**粗体文本**
*斜体文本*
[链接文本](https://example.com)
- 项目符号

渲染后,它们会变成:

为什么 AI 模型使用 Markdown?

AI 模型输出 Markdown 并非巧合。它们是在海量的互联网文本上训练出来的,而 Markdown 在线无处不在:GitHub、Stack Overflow、技术博客、文档。这种格式已经根植于它们的训练数据中。

GPT-5ClaudeLlamaGeminiGrok 这样的大语言模型是在海量互联网文本上训练出来的。其中很大一部分文本来源于:

  • GitHub:README 文件、文档、Issue、评论
  • Stack Overflow:问题和答案
  • 技术博客:教程和文档
  • Reddit 和论坛:用户讨论

所有这些平台都使用 Markdown。因此,当 AI 模型学习交流时,它自然而然地将 Markdown 作为其“语言”的一部分学会了。

实际的好处

即使不渲染,Markdown 也是人类可读的。比较一下这两者:

**重要提示**:请查看文档

对比

<strong>重要提示</strong>: 请查看文档

第一个是 Markdown。第二个是 HTML。两者产生相同的结果,但 Markdown 在原始形式下更简洁、更易读。

这一点很重要,因为 AI 的响应需要在多种环境中可读:原始 API 响应、聊天界面、文档等等。

实际中解析 Markdown

我多年来一直在文档、README 文件和内容管理系统中处理 Markdown。在构建 AI 聊天机器人时,它变得尤为重要。模型返回的文本可能包含 Markdown 格式,因此前端需要对其进行解析。

以下是用于基本格式化的简化解析流程:

AI 响应(带有 Markdown 的纯文本)

解析 [文本](url) → 可点击的链接

解析 https://... → 可点击的 URL

解析 **文本** → 粗体文本

在聊天气泡中渲染

对于生产环境中的聊天机器人,您可能需要一个完整的 Markdown 解析库,例如 react-markdownmarked.jsmarkdown-it。这些库可以处理完整的 Markdown 规范:标题、表格、代码块等等。

您无法完全控制 AI 输出的格式。即使您要求使用 [标题](url) 样式的链接,模型也可能返回原始 URL。请构建您的解析器以同时处理这两种格式。

您应该在提示中使用 Markdown 吗?

是的,但要抱有切合实际的期望。当您为 AI 编写系统提示时,要求输出 Markdown 是有意义的,因为:

  1. 这是模型自然产生的内容
  2. 前端易于解析
  3. 它是安全的(没有像 HTML 那样的 XSS 风险)
  4. 作为后备方案,它是人类可读的

请记住,LLMs 并不总是能完美遵循指令。请构建您的前端以优雅地处理各种变化。

保持更新

在您的收件箱中获取最新的文章和见解。

Unsubscribe anytime. No spam, ever.