跳到內容

語言

yaku 不維護硬編碼的語言清單。它將目標語言代碼傳給 LLM 後端,由後端處理實際翻譯。這表示 yaku 支援你選擇的後端模型能翻譯的所有語言

常用語言代碼(BCP 47 格式):

代碼語言代碼語言
enEnglishko韓文
zh-TW繁體中文th泰文
zh-CN簡體中文vi越南文
ja日文fr法文
de德文es西班牙文
pt葡萄牙文it義大利文
ru俄文ar阿拉伯文

語言有區域變體時,請使用完整的 BCP 47 代碼。例如 zh-TW(台灣使用的繁體中文)和 zh-CN(中國大陸使用的簡體中文)。

yaku 會依 BCP 47 標準驗證 --to--from 的值。它會自動正規化大小寫(zh-twzh-TW),並在代碼無效時提供有用的建議:

Terminal window
yaku --to japanese "Hello"
# Error: unknown language "japanese". Did you mean "ja"?
yaku --to zh-tw "Hello"
# 正常運作——靜默正規化為 zh-TW

在 LLM 提示詞中,yaku 會將語言代碼和顯示名稱並列(例如「Translate to Japanese (ja)」)以提高清晰度。

每次翻譯都需要目標語言。使用 --to 指定:

Terminal window
yaku --to zh-TW "Hello, world"
yaku --to zh-TW -f README.en.md

設定預設值就可以省略 --to

Terminal window
yaku config set default-target zh-TW

這樣以下兩種寫法等價:

Terminal window
echo "Hello" | yaku --to zh-TW
echo "Hello" | yaku # 使用 default-target

明確傳入 --to 時一律覆蓋預設值:

Terminal window
echo "Hello" | yaku --to ja # 日文,不是 zh-TW

預設情況下,yaku 讓 LLM 自動偵測來源語言。大多數文字都能正常運作:

Terminal window
yaku --to zh-TW "This is a test"
# 這是一個測試

需要明確控制時使用 --from

Terminal window
yaku --from en --to zh-TW "This is a test"

何時使用 --from

  • 文字混合多種語言,自動偵測選錯了。
  • 在腳本或 CI/CD 流程中需要確定性行為。
  • 文字很短(幾個字)且 LLM 猜錯了語言。

如果 --from--to 是同一語言,yaku 會建議改用潤飾模式

Terminal window
yaku --from zh-TW --to zh-TW "我想要跟你討論關於部署的問題"
# Hint: source and target language are both zh-TW. Consider using --mode polish for language refinement.
  • 使用託管後端 — 預設後端使用精調過的語言專屬提示詞,能產出更高品質的翻譯。詳見託管服務與方案
  • 加入上下文 — 使用 --context 提示領域。這幫助 LLM 選擇正確的用語:
    Terminal window
    yaku --to zh-TW --context "medical documentation" -f report.en.md
  • 使用術語表 — 要在專案中維持用語一致,請建立術語表檔案
  • 使用潤飾模式進行編修 — 如果你已有目標語言的草稿,--mode polish 可以改善它而不重新翻譯:
    Terminal window
    yaku --mode polish --to zh-TW -f draft.md