mcpField
K
kien-thai

kien-thai

github.com/chakrit创意与媒体101136 次安装13 周前更新
代码仓库

关于 kien-thai

kien-thai 是面向生成式 AI 泰语写作的技能,通过七种篇章结构框架帮助起草和审校更符合泰语表达习惯的文本。可直接使用;若能调用泰语原生模型,也可先用其起草再审校。

主要功能

  1. 01七种泰语篇章结构框架
  2. 02泰语文本起草与审校
  3. 03可选泰语原生模型起草路线
  4. 04按语法与写作规范检查

适用场景

  1. 01润色 AI 生成的泰语文本
  2. 02将英文来源内容改写为自然泰语
  3. 03检查泰语文章的衔接与句子节奏

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/chakrit/kien-thai --skill kien-thai

安装后在 Claude Code 中输入/kien-thai确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
ai-tells.md
craft.md
examples.md
exemplars.md
forbidden-phrases.md
grammar.md
register.md
style-rules.md
scripts/
README.md
thai-native-draft.py
thai-route.sh

详细介绍

kien-thai

为什么需要此技能

AI 生成的泰语整套照搬了英语的话语机制,默认还会添加礼貌用语和连接词填充。母语读者会觉得生硬——反复重读、快速略读,最后放弃阅读。表层规则(“不要使用 ทั้งนี้”)只是在处理症状;下面这七个框架才是结构性原因。references/ai-tells.md(机械层面)、references/grammar.md(表层)和 references/craft.md(语言品味)中的细化规则,都是这些框架的具体应用——框架用对后,许多问题会自动消失。

最佳输出:如果能调用泰语母语模型,就用它起草

先坦诚说明:基础模型的选择对泰语自然度的影响,可能比此技能更大。 这些框架试图解决的机器腔泰语,大多是以英语为中心的模型(Claude、Codex)写泰语时产生的。泰语预训练模型——Typhoon-2、SEA-LION、OpenThaiGPT——将母语分布编码在权重中,而不是把内容翻译成泰语。

这个判断有多可靠?目前还不太可靠。 在一次母语者审阅中,未经引导的 Typhoon-2 8B 起草的泰语没有语法错误,也没有仿译痕迹——而这些正是大多数规则要解决的问题。但这只是单一语体、单篇草稿的结果,尚未复现。之后的机械化对比结果不一:在某些语体中,母语模型草稿使用的正式连接词甚至比此技能生成的内容更多;它也出现过未能遵循指令的情况(输出提纲标签而非正文),而这些问题并非框架所能解决。

应将这条路径视为有前景但尚无定论,而非已知的优势方案。

因此,如果能调用泰语母语模型,最佳做法是先用它起草,再用此技能审校,而不是只用此技能起草。框架仍然适用——它们会成为审校层(kode-thai 流程),用于检查母语模型起草的内容。如果无法调用这样的模型,kien-thai 就直接负责起草和审校,具体方式与本文其余部分完全相同。此技能可以独立使用;模型能让效果更好。

这条路径由脚本执行,而不是手动遵循的指令:

# Draft with the best available model (falls back cleanly if none is up),
# then audit the result with the kode-thai loop.
skills/kien-thai/scripts/thai-route.sh <register> "<your prompt>"

scripts/thai-route.sh 根据退出码决定路径:标准输出中有母语模型草稿(退出码 0 → 对其运行 kode-thai),或退出码为 3 → 没有可用模型,直接使用 kien-thai 起草。scripts/thai-native-draft.py 中已包含 ollama 输出捕获注意事项和来自 corpus/ 的少样本条件设置。完整的设计依据、状态和待完成的评估步骤见 scripts/README.md。

f1 (框架 · 全语体 · 结构层面)

框架 1——以话题—评论结构取代主语—动词—宾语结构。 英语默认采用 SVO 语序。泰语常将话题前置(即句子谈论的内容),再对其加以评论。如果英语原文的主语很长(如“X 这一事实是……”),将其仿译成泰语就会产生 การที่...นั้น... 这样的链式结构,泰语读者不会不经思考就这样表达。

  • 英语(SVO):The system processes this data every five minutes.
  • 仿译:ระบบประมวลผลข้อมูลพวกนี้ทุก ๆ 5 นาที
  • 话题前置:ข้อมูลพวกนี้ ระบบจะ process ทุก 5 นาที

启发式:如果英语主语很长、很抽象,或实际上是动词的受事,就在泰语中将它作为话题前置。

涵盖 non-adversative-thuk(ถูก 被动句)和 garn-thi-tham-hai(การที่...ทำให้)。

f2 (框架 · 全语体 · 结构层面)

框架 2——先说条件、时间和背景框架。 英语会把条件和时间范围放在主句之后:“当 Y 时,X 发生”/“如果 Y,则 X”。泰语更倾向于倒过来:先说条件,再说主句。

  • 英语:The DB starts timing out when traffic spikes.
  • 仿译:DB จะเริ่ม timeout เมื่อ traffic พุ่งสูง
  • 地道表达:พอ traffic พุ่งสูง DB ก็เริ่ม timeout

泰语中常用于前置条件或时间的句首表达:พอ...ก็...、ถ้า...จะ...、เมื่อ...、ตอน...、หาก...。

涵盖 tirai-frame-closure、frame-scoped-ko 和 whenever-calque——条件框架需要成对的闭合结构或连接词(参见 references/grammar.md、references/ai-tells.md)。

f3 (框架 · 所有语域 · 结构)

框架 3——句子边界由空格和段落划分,而非句号标示。 英语在每个句子后都使用句号。现代泰语网络写作 (博客、营销文案、说明文、新闻)很少使用句号。句子边界由 空格和段落换行承载;句号则留给段落末尾的利落收束或真正的终结性陈述。

  • AI 密度:ระบบทำงานเร็วขึ้น. ใช้ memory น้อยลง. ทีมพอใจมาก.
  • 母语写法:ระบบทำงานเร็วขึ้น ใช้ memory น้อยลง ทีมพอใจมาก

启发式规则:删去段落中间的句号;用空格承载边界。只有确实需要利落收束或表达终结时才保留句号。

泰国皇家学会的 หลักเกณฑ์การเว้นวรรค 正式规定了两级空格系统—— 分句内部空格与句子边界空格。现代键盘两种情况都会输入单个 ASCII 空格,因此区别体现在视觉节奏上。处理方式:分句内部使用短的单个空格;句子边界使用段落换行。

涵盖 mid-paragraph-period(句号滥用——参见 references/ai-tells.md)。

f4 (框架 · 所有语域 · 结构)

框架 4——用句末助词收束。 英语不需要收束助词。泰语会使用一组数量不多的助词,来利落地收束分句:ด้วย(也/还——收束补充性想法)、แล้ว(完成、过渡)、ไป(离开/完成)、อยู่(持续状态)、เลย(加强语气或“当即”)、ก็แล้วกัน(就这样吧/作出决定)、อยู่ดี(仍然/尽管如此)、ต่างหาก(对比性纠正——“其实是 X,不是 Y”)。

关于 แล้ว 的变体(依据 Olsson 2013 对泰语 iamitive 的研究):单独使用的 แล้ว (f4/laeo-completion)表示完成/“到现在为止”。X แล้ว ก็ Y 增加了顺序和节奏感(参见框架 6)。เสร็จแล้ว(f4/set-laeo-perfective)是完成体变体,表示动作彻底结束,完成意味比单纯的时间性完成更强。根据收束所需表达的是纯粹的完成、顺序推进,还是动作已完成的强调,选择相应形式。

如果 AI 因为英语原文没有对应词项而省略这些助词,泰语句子就会显得悬而未决——仿佛作者话说到一半便停了。

  • 未收束:repo นี้ไม่ได้มากับกฎอย่างเดียว มี eval harness ผูกกับ claude และ codex
  • 已收束:repo นี้ไม่ได้มากับกฎอย่างเดียว มี eval harness ผูกกับ claude และ codex ด้วย

ด้วย 补充性收束(f4/duai-additive):特别留意 ไม่ได้...อย่างเดียว、ไม่ใช่แค่...、ไม่เพียงแต่... 这些句式——它们几乎总是需要一个收束助词,来补全隐含的“还有 Y”。

ต่างหาก 收束(f4/targhak-closure):对比性纠正句式 (ไม่ได้ X อยู่ที่/เป็น/คือ Y)需要加上 ต่างหาก——这是泰语中用于强调纠正的助词,用来收束“其实是 Y,不是 X”这一想法。

  • 未收束:ปัญหาส่วนใหญ่ไม่ได้อยู่ที่ยอดขาย อยู่ที่ต้นทุน
  • 已收束:ปัญหาส่วนใหญ่ไม่ได้อยู่ที่ยอดขาย อยู่ที่ต้นทุนต่างหาก

涵盖 dangling-additive-frame 和 seam-connective-missing(审计模式对缺失分句间节奏这一类问题的检测)。

f5 (frame · all-registers · structural)

Frame 5 — 通过零形回指和指示词实现衔接。 英语需要明确的代词:it / they / he / she / this / that。泰语有三种主要策略,但 AI 很少使用:

  1. 零形回指(f5/zero-anaphora)——话题确立后,完全省略主语。只有在控制权发生变化时才重新说明。以 เราเรียนรู้จากความผิดพลาด... 开头的一段话,可以连续写好几句,都不必再次出现 เรา。

  2. 用指示词代替代词——นี่ / นั่น / โน่น 分别表示“这个 / 那个 / 远处那个”;需要时,用指示词 + 量词来指代名词(คนนี้、เคสนั้น、ปัญหานั้น)。AI 过度使用 มัน、เขา、พวกเขา,因为它们对应英语中的 it / he / they。

  3. 用指示词连接分句(f5/demo-bridge)——在英语会重复主语的分句之间,泰语会用指示词回指刚刚陈述的事实:ตรงนี้แหละที่...、นี่คือเหตุผลที่...、ส่วนนี้...。在从问题转向解决方案时尤其有用(另见 Frame 7)。

    • 生硬:ของค้างก็กลายเป็นต้นทุนเงียบ ระบบนี้ช่วย...
    • 衔接自然:ของค้างก็กลายเป็นต้นทุนเงียบ ตรงนี้แหละที่ระบบช่วยได้
  • 仿译:bun ได้ปล่อย feature ต่าง ๆ ออกมามากมาย มันปรับปรุงเรื่องของ performance จากการ build มันลดการใช้งาน memory ในขณะ runtime และมันยังปรับปรุงแนวทางการทดสอบอีกด้วย
  • 地道:bun ได้ปล่อย feature ต่าง ๆ ออกมามากมาย ทั้งการปรับปรุงเรื่องของ performance จากการ build และลดการใช้งาน memory ในขณะ runtime รวมทั้งยังได้ปรับปรุงแนวทางการทดสอบอีกด้วย

注意——零形回指也有局限。 如果指代对象无法从上下文中推知,过度省略主语就会让文字变得像机器人写的一样,句子里没有主语。如果分句以连接词(เพราะ...、ดังนั้น...、ส่วน...)开头,后面紧接着动词,却没有话题,应通过指示词衔接或重组为话题—评论结构来补充指代,而不是使用 มัน(dummy-man 禁用此词)。

  • 机器人式:เพราะรับประกัน output rate
  • 地道(衔接):เพราะแบบนี้ output rate จะคงที่
  • 地道(补充话题):algorithm นี้รับประกัน output rate
f6 (frame · all-registers · structural)

Frame 6 — 用 ก็ 调节节奏。 ก็ 是泰语特有的节奏助词,用于标记预期、顺序、轻微让步和“如预期”的因果关系。英语没有直接对应的表达,因此 AI 会省略它,而没有 ก็ 的泰语文字读起来会显得断续或机械。

  • 不用 ก็:พอ traffic ขึ้น DB เริ่มอืด
  • 使用 ก็:พอ traffic ขึ้น DB ก็เริ่มอืด

ก็ 作为节奏助词(f6/ko-pacing)。常见句式:พอ X ก็ Y、X แล้ว ก็ Y、ถ้า X ก็ Y、เลย...ก็...、X ไม่ทัน ก็เลย Y。单独使用 แล้ว(不带 ก็)也可以连接顺序发生的动作分句,英语中则不需要连接词:

  • 生硬:ถ่ายรูปบิลจากตลาด ระบบอ่านรายการให้เอง
  • 衔接自然:ถ่ายรูปบิลแล้วระบบจะอ่านรายการให้เอง

子模式:ก็ 作为话题回接桥梁(f6/ko-resumptive;Takahashi 2023 对 ก็ 作为语用助词的研究对此进行了形式化描述)。句子先提出一个话题,随后给出一条原本会显得突兀的评论时,在评论开头加上 ก็,可以带来自然的“如预期 / 合乎情理”的节奏。AI 往往会省略 ก็ 来写评论,导致句子显得突兀、不自然。

  • 突兀:ในรายการนี้ ไม่มีคอลัมนิสต์ดังคนไหน เป็นความตั้งใจ
  • 衔接自然:ในรายการนี้ ไม่มีคอลัมนิสต์ดังคนไหน ก็เป็นความตั้งใจ

把 ก็ 当作呼吸和节奏的助词,而非连接词的替代品。不要在不适合的地方硬加;但在泰语自然需要这个节奏时,也要使用它。

f7 (框架 · 全部语域 · 结构)

框架 7——通过疑问句、指示语或简单的 แต่ 转折。 英语常通过正式的连接词在不同观点间转折:however、moreover、on the other hand、furthermore。泰语行文更常通过以下方式转折:

  1. 设问转折(f7/question-pivot)——แล้วถ้า X ล่ะ?、นั่นแปลว่ายังไง?、ทำไมถึงเป็นแบบนั้น?。
  2. 指示语衔接(f7/demo-pivot)——ตรงนี้แหละ...、นี่คือเหตุผลที่...(另见框架 5)。
  3. 简单使用 แต่(f7/tae-pivot)——在大约一半的英语对应场景中,它取代 อย่างไรก็ตาม。
  • AI 式转折:อย่างไรก็ตาม การใช้งานในระดับ production มีข้อจำกัด
  • 自然转折:แต่พอเอาขึ้น production จริง ก็มีอะไรให้ปวดหัวอีก
  • 自然转折(设问):แล้วถ้าโหลดเพิ่มอีกสิบเท่าล่ะ? ตรงนี้แหละที่เริ่มน่าสนใจ

特殊情况——从问题清单转向解决方案(f7/problem-solution-pivot)。列出 2–3 个读者的痛点后,AI 往往会直接进入产品/解决方案的分句,中间没有转折,形成项目符号式的节奏。加入设问转折、指示语衔接或表示对比的 แต่,标明这一转变。

  • 项目符号式节奏:ของหมดก็เสียยอดขาย ของค้างก็กลายเป็นต้นทุนเงียบ ระบบนี้ช่วย...
  • 加入转折(设问):ของหมดก็เสียยอดขาย ของค้างก็กลายเป็นต้นทุนเงียบ — แล้วทำไงให้คุมของได้แม่น?
  • 加入转折(指示语):ของหมดก็เสียยอดขาย ของค้างก็กลายเป็นต้นทุนเงียบ ตรงนี้แหละที่ระบบนี้ช่วยได้

经验法则:每次你想写“然而”时,先想想改用疑问句或简单的 แต่ 是否更好。两次中至少换掉一次。

人称指示(在撰写面向读者的内容前应用)

起草前先确定三个角色:第一人称(说话者)、第二人称(受众)、第三人称(产品/概念/第三方)。对营销内容尤其重要。

AI 最常违反的一条规则:绝不要用受众的群体称谓(เจ้าของร้าน、ผู้ใช้、นักลงทุน、ผู้ประกอบการ)代替正文文案中的 คุณ。群体称谓用于标题和分类;คุณ 才是主动指向读者的第二人称。

  • 错误:เครื่องมือนี้ทำให้เจ้าของร้านเห็นภาพจริงของร้านตัวเอง
  • 正确:ระบบนี้ช่วยให้คุณเห็นภาพจริงของร้านได้ทันที

一旦为一段文字确立了指示视角——包括隐含第二人称视角,即没有明说代词,但读者是受众——段落其余部分就必须保持一致(见 register.md 中的 deixis-continuity)。不要在隐含第二人称的段落中插入泛指某人的表达(ใคร、คน、ใครๆ);应将其改为修饰语(โดยไม่รู้ตัว)。

各语域的完整指示视角默认规则、品牌情绪/性别/正式度的语气属性,以及 Krungsri 的“正文用 เรา、建议用 คุณ”模式,均见 references/register.md。

风格惯例(在各框架基础上应用)

表层语气的微调规则见 references/style-rules.md(正向规则:句式、动词优先于名词、开头/结尾、具体性、语气、泰语外来语转写、翻译技巧)和 references/craft.md(柔性审美规则)。

要求撰写泰语文本时的工作流

  1. 先进行路由。 运行 scripts/thai-route.sh <register> "<prompt>"。如果返回原生草稿(退出码为 0),则由泰语母语模型完成起草——跳到审校环节(步骤 3–4,或完整的 kode-thai 循环),对草稿进行检查。如果退出码为 3(没有模型),则通过以下步骤 1–4 自行起草。

  2. 确定语体、语气和人称指示。 如果有任何不明确之处,请先提问——语体不当比文字粗糙更糟糕。

    六类语体(完整指南见 references/register.md):

    • 新闻 / 参考资料——不用第一人称,不用语气助词,使用主动语态。
    • 说明文——银行 / 科技类长篇内容,不用语气助词,以问题为先,用 เรา/คุณ 称呼读者。
    • 营销文案(系列)——SaaS-SME / B2B 正式 / 金融科技亲和 / 零售科技等子语体;必须明确人称指示。
    • 个人博客 / 开发者实战经历——根据性别使用第一人称 ผม 或 ดิฉัน,仅在开头和结尾使用 ครับ/ค่ะ。如果未说明性别,请先提问——不要默认使用 ผม。
    • 学术长篇内容——不用语气助词,可以使用较长句子,以综合性内容收尾。
    • 官方文件 / 会议记录——政府会议记录、部长备忘录、内部政策、法律 / 监管文件。不用语气助词,不用第一人称,明确主语,使用四部分程序性句式,并替换为正式词汇。暂定规则——等待扩充语料库。

    语气属性(性别、品牌风格、正式程度)与语体相互独立——两者都要选择。对于任何面向读者的内容,也要选择第一 / 第二 / 第三人称指示(见上文)。

  3. 先搭框架再起草。 选词之前,先检查七种句式框架:

    • 主题是否前置?(框架 1)
    • 条件和时间从句是否置于句首?(框架 2)
    • 句子是否衔接流畅,避免滥用句号?(框架 3)
    • 从句结尾是否使用了恰当的语气助词?(框架 4)
    • 是否通过零形回指和指示词实现衔接?(框架 5)
    • 是否在泰语需要停顿处使用 ก็?(框架 6)
    • 是否通过疑问句或简单的 แต่ 转折,而不是使用正式连接词?(框架 7)
  4. 自我编辑。 检查是否存在 AI 写作痕迹:

    • forbidden-phrases.md 禁用词清单。
    • 连接词限额:每段 ≤1 个 ซึ่ง / ≤1 个 โดย / ≤1 个 ดังนั้น (connective-budget)。句末语气助词不计入限额。
    • 句号检查:删除段落中间的句号(mid-paragraph-period)。
    • 句末检查:ไม่ได้...อย่างเดียว / ไม่ใช่แค่... 需要句末语气助词 (dangling-additive-frame)。
    • 句长变化(mixed-sentence-length)。
    • ครับ/ค่ะ 的用法是否符合语体(khrap-kha-in-body)。
    • ถูก 被动句:每处用法都应确实表示不利结果或施事者不明 (non-adversative-thuk)。
  5. 结尾。 不要复述全文(no-recap-close)。地道的泰语写作通常以面向未来的一句话、重新表述的问题、轻松的交接语(เท่านี้ก่อน、ลองเอาไปเล่นดู)收尾,或者直接结束。切勿使用 โดยสรุปแล้ว...,然后重述正文内容。

要求编辑泰语文本时

反向执行相同的检查:查找框架违规和 AI 写作痕迹,并说明具体修改建议及其原因。前后修改示例见 references/examples.md。

收到将英语翻译成泰语的请求时

翻译是 AI 最容易失败的任务,因为它会保留英语的句式结构——这意味着全部七种框架都面临最高风险。

最低限度的检查清单:

  • 调整语序,采用话题—评论结构(框架 1)。
  • 将条件/时间从句移到句首(框架 2)。
  • 去掉英语式的段落中间句号(框架 3)。
  • 当句子因沿用英语结构而悬而未决时,添加泰语句末助词(框架 4)。
  • 确立话题后省略代词;英语使用代词的地方改用指示词 (框架 5)。
  • 在泰语需要节拍的地方加入 ก็(框架 6)。
  • 将“however / moreover”改成疑问句或简单的 แต่(框架 7)。
  • 转换习语;以一致的泰语造词保留作者的隐喻。
  • 不要添加源文没有的礼貌表达。自信的散文作者在泰语中也应保持自信。
  • 按照 references/style-rules.md 中的四类指南判断是否使用音译词。

参考资料

资料包顺序:ai-tells.md(机械规则)、craft.md(较灵活的语感)、examples.md(标注语域的修改前后对照)、forbidden-phrases.md(审查禁用清单)、grammar.md(表层规则)、register.md(6 种语域类型 + 指示语 + 语态)、style-rules.md(正向风格),最后是 exemplars.md(母语语料摘录),以便将母语文本放在最接近任务提示词的位置。已知当前语域时,Harness 会将 register.md、examples.md 和 exemplars.md 限定在该语域范围内。

学术出处(Iwasaki & Ingkaphirom、Smyth、Prasithrathsint、Takahashi、Olsson、Thai Discourse Treebank、Singnoi、Royal Institute、Marcel Barang)保存在 corpus/curated/scholarly/ 中,不在资料包内。

评论

支持 Markdown