优化基于段落的Markdown翻译成本 | 原创,AI翻译

Home 2025.07.14

我的 Jekyll 博客使用 Markdown 编写段落。写完英文后,我使用 DeepSeek 或 Mistral 等 AI 工具翻译成另外八种语言。虽然它们已经很便宜了,但仍有改进空间。

有时候,我只是修改一个单词或一个段落,然后整篇文章就会被翻译成另外八种语言。这种情况下,token 使用量很高。如果我只重新翻译一个段落,token 使用量会更低,尤其是对于长文章。

不过,我仍然想用 Markdown 记录我的想法。使用数据库维护和更新文章不太方便。使用 YAML 或 JSON 可能也太繁琐。

关键在于识别编辑前后文本的差异。如果采用基于段落的方法,意味着使用换行符 “\n” 拆分文本。

我需要知道编辑后哪些段落有变化,哪些没有变化。我们需要知道编辑前后文本之间的段落一一对应关系。

我们采用基于段落的方法,是因为我们想更新 AI 模型生成的翻译。如果使用句子,可能不够准确。

对于 Markdown,可能更重要的做法是使用 Markdown 解析来基于 Markdown 元素同步翻译。

但如果没有代码块或特殊 Markdown 语法,我们可以采用基于段落的方法。

对于简单的基于段落的方法,我们有两个段落数组,需要了解它们如何匹配。

在比较这两个数组中的任何段落时,有两种可能的结果:它们相同或不同。如果不同,有几种情况:两者都是新增的、左边的是新增的,或者右边的是新增的。

我只是想节省成本,所以我想减少 token 使用量。我不需要其他任何东西。我只需要翻译每个段落,缓存结果,下次对于每个段落,我会先查找翻译结果。如果不存在,那么需要重新翻译。

对于 Markdown,情况稍微复杂一些。我不想翻译代码块。因此,我们可以先使用 Markdown 解析库,对代码块和普通文本进行不同处理。


Back Donate