sspai.com

AI 输出中的 ** 是怎么来的:谈中文 Markdown 强调标记的渲染问题 (opens in new tab)

在与 AI 对话的过程中,你一定见过这样不伦不类的输出:换言之,那些本该加粗的部分并没有加粗,周围却多了一堆星号。有一定技术背景的读者都知道,这些星号是 Markdown 中的强调标记。Markdown 是一种格式标记语言,可以用一些简单而直观的语法,为纯文本附加格式信息。近年来,Markdown 文档常用于模型训练,从而成为了 AI 模型的原生语言。如今,AI 模型的回答大多都是以 Markdown 格式输出,然后再在客户端渲染为带格式文本的。当然,上述问题并不只出现在 AI 聊天中。如果你用 Markdown 记笔记或者写作,应当对类似的现象早就不陌生了。可是,Markdown 语法不就是把 ** 之间的内容当作强调部分的吗?为什么在一些场景下能加粗,另一些场景下就不能加粗了呢?答案是,「** 之间的是加粗部分」只是一种简略说法,当下流行的 Markdown 标准已经给这个规则追加了很多例外。遗憾的是,虽然新规则本意是让 Markdown 更加严谨,但却没有考虑中文的特殊性,导致一些本应生效的强调无法正常渲染。来龙去脉要从 2004 年说起。当 John Gruber 在那年...

Read the original article
Sign in to keep reading the full article.

Keyboard Shortcuts

Navigation

Next / previous post
j/k
Open post
oorEnter
Preview post
v

Post Actions

Love post
a
Like post
l
Dislike post
d
Undo reaction
u
Save / unsave
s

Recommendations

Add interest / feed
Enter
Not interested
x

Go to

Home
gh
Interests
gi
Feeds
gf
Likes
gl
History
gy
Changelog
gc
Settings
gs
Discover
gb
Search
/

General

Show this help
?
Submit feedback
!
Close modal / unfocus
Esc

Press ? anytime to show this help