Các ngôn ngữ được hỗ trợ
champollion đi kèm với Language Cards (Thẻ ngôn ngữ) — các tệp cấu hình có cấu trúc dành cho 50 ngôn ngữ. Mỗi thẻ chứa các thiết lập trước về văn phong (register presets), siêu dữ liệu hệ thống mức độ trang trọng (formality system metadata), cờ hỗ trợ phương thức, quy tắc trình bày văn bản (typography rules) và thông tin chữ viết (script information). Bất kỳ ngôn ngữ nào mà LLM của bạn biết đều có thể được thêm vào chỉ với một dòng cấu hình duy nhất — đây là những ngôn ngữ có các văn phong đã được tinh chỉnh và sẵn sàng cho môi trường production.
Các phương thức dịch thuật
Mỗi ngôn ngữ có thể sử dụng một hoặc nhiều phương thức dịch thuật sau:
| Biểu tượng | Phương thức | Cách hoạt động | Chi phí |
|---|---|---|---|
| 🟢 | Google Translate | Bản dịch máy nơ-ron (Neural MT) cơ bản. Hơn 130 ngôn ngữ. Chỉ hỗ trợ chuỗi key-value — không thể dịch nội dung Markdown một cách an toàn. | ~$20/1 triệu ký tự |
| 🔵 | LLM (OpenRouter) | Bất kỳ ngôn ngữ nào mô hình biết. Prompt điều hướng theo văn phong. Xử lý cả chuỗi key-value + nội dung Markdown. | Thay đổi tùy theo mô hình |
| 🟣 | LLM-Coached | LLM + từ điển ngữ pháp + dữ liệu hướng dẫn (coaching data) được đưa vào prompt. Tốt nhất cho các ngôn ngữ có hình thái học phức tạp. | Thay đổi tùy theo mô hình |
| 🟠 | API (Plugin) | Các pipeline dịch thuật do cộng đồng host được cung cấp qua HTTP. Tương thích với OCAP. | Thay đổi tùy theo nhà cung cấp |
Thiết lập GOOGLE_TRANSLATE_API_KEY cho Google Translate, hoặc OPENROUTER_API_KEY cho các phương thức LLM. Xem Các phương thức dịch thuật để biết thêm chi tiết.
Các ngôn ngữ ưu tiên
Đây là các locale được yêu cầu phổ biến nhất cho các ứng dụng web và di động, được liệt kê theo thứ tự ưu tiên khả năng tiếp cận (accessibility-first) do champollion khuyến nghị.
| Quốc kỳ | Ngôn ngữ | Mã | LLM | Coached | Chữ viết | Ghi chú | |
|---|---|---|---|---|---|---|---|
| 🇸🇦 | Tiếng Ả Rập | ar | ✅ | ✅ | ✅ | — | RTL (Viết từ phải sang trái). Tiếng Ả Rập chuẩn hiện đại (فصحى). |
| 🇵🇭 | Tiếng Philippines (Taglish) | tl / fil | ✅ | ✅ | ✅ | — | Sử dụng fil trong cấu hình Docusaurus. champollion xử lý được cả hai. |
| 🇫🇷 | Tiếng Pháp | fr | ✅ | ✅ | ✅ | — | Ngôi trang trọng (Vous-form). Bao hàm giới tính (Connecté·e). |
| 🇪🇸 | Tiếng Tây Ban Nha | es | ✅ | ✅ | ✅ | — | Tiếng Tây Ban Nha Mỹ Latinh trung tính. |
| 🇩🇪 | Tiếng Đức | de | ✅ | ✅ | ✅ | — | Ngôi trang trọng (Sie-form). Bao hàm giới tính (Benutzer:innen). |
| 🇯🇵 | Tiếng Nhật | ja | ✅ | ✅ | ✅ | — | Dùng です/ます cho văn bản nội dung, する cho nhãn giao diện (UI). |
| 🇨🇳 | Tiếng Trung (Giản thể) | zh | ✅ | ✅ | ✅ | — | 简体中文. |
| 🇮🇹 | Tiếng Ý | it | ✅ | ✅ | ✅ | — | Ngôi trang trọng (Lei-form). |
| 🇧🇷 | Tiếng Bồ Đào Nha (Brazil) | pt | ✅ | ✅ | ✅ | — | Tiếng Bồ Đào Nha Brazil. |
| 🇰🇷 | Tiếng Hàn | ko | ✅ | ✅ | ✅ | — | Văn phong lịch sự 해요체. |
Các ngôn ngữ lớn trên thế giới
| Quốc kỳ | Ngôn ngữ | Mã | LLM | Coached | Chữ viết | Ghi chú | |
|---|---|---|---|---|---|---|---|
| 🇧🇩 | Tiếng Bengal | bn | ✅ | ✅ | ✅ | — | Ưu tiên dùng শুদ্ধ ভাষা (Shuddho bhasha). |
| 🇧🇬 | Tiếng Bulgaria | bg | ✅ | ✅ | ✅ | — | |
| 🇨🇿 | Tiếng Séc | cs | ✅ | ✅ | ✅ | — | Ngôi trang trọng Vykání (vy-form). |
| 🇩🇰 | Tiếng Đan Mạch | da | ✅ | ✅ | ✅ | — | |
| 🇬🇷 | Tiếng Hy Lạp | el | ✅ | ✅ | ✅ | — | Tiếng Hy Lạp hiện đại (Δημοτική). |
| 🇮🇷 | Tiếng Ba Tư | fa | ✅ | ✅ | ✅ | — | RTL (Viết từ phải sang trái). |
| 🇫🇮 | Tiếng Phần Lan | fi | ✅ | ✅ | ✅ | — | Không có giống ngữ pháp. |
| 🇮🇱 | Tiếng Do Thái | he | ✅ | ✅ | ✅ | — | RTL (Viết từ phải sang trái). |
| 🇮🇳 | Tiếng Hindi | hi | ✅ | ✅ | ✅ | — | Tiếng Hindi thuần (शुद्ध हिन्दी). Hạn chế tối đa từ mượn tiếng Anh. |
| 🇭🇺 | Tiếng Hungary | hu | ✅ | ✅ | ✅ | — | Ngôi trang trọng Ön-form. |
| 🇮🇩 | Tiếng Indonesia | id | ✅ | ✅ | ✅ | — | |
| 🇲🇾 | Tiếng Mã Lai | ms | ✅ | ✅ | ✅ | — | |
| 🇳🇱 | Tiếng Hà Lan | nl | ✅ | ✅ | ✅ | — | Ngôi trang trọng U-form. |
| 🇳🇴 | Tiếng Na Uy | nb | ✅ | ✅ | ✅ | — | Tiếng Na Uy Bokmål. |
| 🇵🇱 | Tiếng Ba Lan | pl | ✅ | ✅ | ✅ | — | Ngôi trang trọng Pan/Pani. |
| 🇵🇹 | Tiếng Bồ Đào Nha (Châu Âu) | pt-PT | ✅ | ✅ | ✅ | — | Tiếng Bồ Đào Nha Châu Âu. |
| 🇷🇴 | Tiếng Romania | ro | ✅ | ✅ | ✅ | — | |
| 🇷🇺 | Tiếng Nga | ru | ✅ | ✅ | ✅ | — | Ngôi trang trọng Вы-form. |
| 🇸🇰 | Tiếng Slovakia | sk | ✅ | ✅ | ✅ | — | Ngôi trang trọng Vykanie (vy-form). |
| 🇷🇸 | Tiếng Serbia | sr | ✅ | ✅ | ✅ | 🔤 Latin→Cyrillic | Bộ chuyển đổi chữ viết đơn trị (deterministic). |
| 🇸🇪 | Tiếng Thụy Điển | sv | ✅ | ✅ | ✅ | — | |
| 🇰🇪 | Tiếng Swahili | sw | ✅ | ✅ | ✅ | — | |
| 🇹🇭 | Tiếng Thái | th | ✅ | ✅ | ✅ | — | Các từ đệm lịch sự ครับ/ค่ะ. |
| 🇹🇷 | Tiếng Thổ Nhĩ Kỳ | tr | ✅ | ✅ | ✅ | — | Ngôi trang trọng Siz-form. |
| 🇺🇦 | Tiếng Ukraine | uk | ✅ | ✅ | ✅ | — | Ngôi trang trọng Ви-form. |
| 🇵🇰 | Tiếng Urdu | ur | ✅ | ✅ | ✅ | — | RTL (Viết từ phải sang trái). Ngôi trang trọng آپ. |
| 🇻🇳 | Tiếng Việt | vi | ✅ | ✅ | ✅ | — | |
| 🇹🇼 | Tiếng Trung (Phồn thể) | zh-TW | ✅ | ✅ | ✅ | — | 繁體中文. |
| 🇬🇪 | Tiếng Gruzia | ka | ✅ | ✅ | — | — | ქართული. Ngữ hệ Nam Kavkaz (Kartvelian). |
| 🇳🇬 | Tiếng Yoruba | yo | ✅ | ✅ | — | — | Èdè Yorùbá. Ngôn ngữ thanh điệu (3 thanh điệu). |
Các biến thể khu vực
| Quốc kỳ | Ngôn ngữ | Mã | LLM | Coached | Chữ viết | Ghi chú | |
|---|---|---|---|---|---|---|---|
| 🇲🇽 | Tiếng Tây Ban Nha Mexico | es-MX | ✅ | ✅ | ✅ | — | Ngôi thân mật Tú-form. Văn phong ấm áp. |
| 🇨🇦 | Tiếng Pháp Canada | fr-CA | ✅ | ✅ | ✅ | — | Thành ngữ Québécois. |
Ngôn ngữ bản địa & Ngôn ngữ ít tài nguyên
Những ngôn ngữ này không được hỗ trợ bởi các dịch vụ dịch máy thương mại. champollion cung cấp các công cụ để các cộng đồng ngôn ngữ tự xây dựng phương thức dịch thuật của riêng họ theo các nguyên tắc OCAP.
| Ngôn ngữ | Mã | LLM | Coached | Chữ viết | Trạng thái | ||
|---|---|---|---|---|---|---|---|
| 🪶 | Tiếng Plains Cree | crk | ❌ | ✅ | ✅ | 🔤 SRO→Syllabics | 🚧 Đang phát triển |
| 🌄 | Tiếng Quechua | qu | ✅ | ✅ | — | — | Runasimi. Hậu tố chứng thực (evidential suffixes). |
:::info Tiếng Plains Cree đang được tích cực phát triển Văn phong, cơ sở hạ tầng hướng dẫn (coaching), bộ chuyển đổi chữ viết và khung đánh giá (evaluation harness) cho tiếng Plains Cree đều đã hoạt động, nhưng pipeline dịch thuật vẫn chưa được phát hành. Chúng tôi đang làm việc với các cộng đồng ngôn ngữ theo các nguyên tắc OCAP để đảm bảo chất lượng trước khi phát hành. Xem Hỗ trợ một ngôn ngữ ít tài nguyên để biết toàn bộ câu chuyện — và cách bạn có thể đóng góp. :::
:::tip Thêm nhiều ngôn ngữ ít tài nguyên hơn Hệ thống plugin phương thức của champollion được thiết kế cho việc này. Một cộng đồng ngôn ngữ có thể xây dựng một phương thức dịch thuật tùy chỉnh, tự host và quản lý nó, rồi cung cấp thông qua phương thức API. Bảng xếp hạng phương thức theo dõi điểm số cho bất kỳ cặp ngôn ngữ nào — hãy xây dựng một phương thức, chạy khung đánh giá và giành vị trí dẫn đầu. :::
Ngôn ngữ nhân tạo
Các ngôn ngữ nhân tạo (conlang) được hỗ trợ thông qua văn phong LLM và các bộ chuyển đổi chữ viết tùy chọn. Chúng sử dụng cùng một cơ sở hạ tầng như các ngôn ngữ thực tế — quy trình kiểm soát chất lượng (quality gate), hệ thống hướng dẫn (coaching system) và pipeline chuyển đổi chữ viết hoạt động hoàn toàn giống nhau.
| Ngôn ngữ | Mã | LLM | Chữ viết | Ghi chú | ||
|---|---|---|---|---|---|---|
| 🖖 | Tiếng Klingon | tlh | ❌ | ✅ | 🔤 Romanization→pIqaD | Yêu cầu font PUA. Từ vựng của Marc Okrand. |
| 🧝 | Tiếng Sindarin (Tiếng Elf của Tolkien) | x-elvish-s | ❌ | ✅ | 🔤 Latin→Tengwar | Yêu cầu font CSUR PUA. |
| 🏴☠️ | Tiếng Anh cướp biển | x-pirate | ❌ | ✅ | — | Chỉ có văn phong. Sử dụng các ẩn dụ hàng hải. |
| 🦸 | Tiếng Krypton | x-kryptonian | ❌ | ✅ | 🔤 Latin→Kryptonian | Yêu cầu font PUA. |
| 🎭 | Tiếng Anh thời Shakespeare | x-shakespeare | ❌ | ✅ | — | Chỉ có văn phong. Sử dụng các dạng từ thee/thou, -eth/-est. |
| 🐸 | Cách nói của Yoda | x-yoda | ❌ | ✅ | — | Chỉ có văn phong. Trật tự từ OSV (Tân ngữ - Chủ ngữ - Động từ). |
Xem Ngôn ngữ nhân tạo, Chữ viết & Chính tả để biết các yêu cầu về font PUA, giới hạn Unicode và cách thêm ngôn ngữ của riêng bạn.
Các thiết lập sẵn ngôn ngữ
Trình hướng dẫn init hỗ trợ các tên thiết lập sẵn (preset) để thiết lập nhanh. Bạn có thể kết hợp các thiết lập sẵn với các mã ngôn ngữ riêng lẻ.
| Thiết lập sẵn | Mở rộng thành |
|---|---|
european | fr, de, es, it, pt, nl |
asian | ja, zh, ko |
global | fr, es, de, ja, zh, ko, pt, ar |
nordic | da, fi, nb, sv |
# Mix presets with individual codes
champollion init
# → Target languages: european, ja
# → Resolves to: fr, de, es, it, pt, nl, ja
Thêm bất kỳ ngôn ngữ nào
champollion có thể dịch sang bất kỳ ngôn ngữ nào mà LLM của bạn biết — bảng trên chỉ liệt kê các ngôn ngữ có sẵn các thiết lập trước về văn phong. Để thêm một ngôn ngữ không có trong danh sách, hãy đưa mã BCP-47 của ngôn ngữ đó vào cấu hình của bạn:
{
"languages": {
"sw": {},
"am": {
"register": "Formal Amharic. Professional register with Geʽez script."
}
}
}
LLM sẽ dịch bằng cách sử dụng kiến thức đã được huấn luyện về ngôn ngữ đó. Việc thiết lập một register giúp bạn kiểm soát tông giọng, mức độ trang trọng và các quy ước chính tả. Xem Cấu hình để biết thêm chi tiết.
Language Cards
Mỗi ngôn ngữ tích hợp sẵn đều có một Language Card (Thẻ ngôn ngữ) — một tệp JSON thống nhất trong shared/language-cards/ chứa tất cả siêu dữ liệu: văn phong, mức độ trang trọng, hỗ trợ phương thức, quy tắc trình bày văn bản, phân loại phả hệ, các thách thức ngôn ngữ và tài nguyên NLP.
Kiến trúc thẻ thống nhất
Mỗi thẻ được tải ngay lập tức (eagerly) khi import. Không có tầng tham chiếu riêng biệt — tất cả dữ liệu nằm trong một tệp duy nhất cho mỗi ngôn ngữ. Các thẻ được làm phong phú từ các nguồn uy tín:
| Nguồn | Dữ liệu |
|---|---|
| Glottolog | Phân loại ngữ hệ, chuỗi nguồn gốc, Glottocode |
| WALS | Phân loại chi (genus), các đặc điểm loại hình học |
| CLDR | Chữ viết, hướng viết, quy tắc số nhiều, trình bày văn bản |
| ISO 15924 | Mã chữ viết |
Các trường chính của thẻ
| Trường | Nội dung chứa |
|---|---|
nativeName | Tên tự gọi (Endonym) — tên của chính ngôn ngữ đó bằng chữ viết riêng của nó (ví dụ: ქართული, Runasimi) |
classification | Điểm neo phả hệ: ngữ hệ, chi, chuỗi nguồn gốc đầy đủ từ Glottolog |
contactInfluences | Lịch sử tiếp xúc phổ quát — các lớp từ mượn, siêu tầng (superstrates), phân tầng (substrates) |
| Hệ thống mức độ trang trọng | Phân biệt T-V (ngôi thân mật/trang trọng), các cấp độ nói, kính ngữ (keigo), trợ từ, v.v. |
| Thiết lập sẵn văn phong | Các thiết lập sẵn prompt LLM có tên gọi cụ thể cho đặc trưng của ngôn ngữ |
| Hỗ trợ phương thức | Các API dịch thuật nào hỗ trợ ngôn ngữ này |
| Hướng dẫn về giới tính | Các quy tắc giống ngữ pháp và mẹo viết bao hàm giới tính |
| Chữ viết/hướng viết | Mã chữ viết ISO 15924 và RTL/LTR |
| Quy tắc | Trình bày văn bản (dấu ngoặc kép, khoảng cách), viết hoa, các danh mục số nhiều |
glottocode | Mã định danh Glottolog chuẩn để đối chiếu chéo |
dataSources | Theo dõi nguồn gốc (ví dụ: ["glottolog-5.3", "cldr-48"]) |
Khởi tạo khung (Scaffolding) cho một Language Card mới
Sử dụng trình tạo để khởi tạo khung cho một thẻ từ các nguồn dữ liệu uy tín (IANA, CLDR, Glottolog):
# Preview what would be generated
node scripts/generate-language-card.mjs sw --dry-run
# Generate a unified card
node scripts/generate-language-card.mjs sw
Trình tạo sẽ tự động điền siêu dữ liệu (mã, chữ viết, hướng viết, số nhiều, dấu ngoặc kép, hỗ trợ phương thức, phân loại) và đánh dấu các trường đánh giá ngôn ngữ là TODO để con người tinh chỉnh.
Sử dụng các Preset Key
Thay vì viết toàn bộ văn bản văn phong, bạn có thể sử dụng tên preset key:
{
"languages": {
"fr": "casual-tu",
"ko": "formal-hapsyo",
"ja": "polite"
}
}
Champollion sẽ phân giải key đó thành prompt văn phong đầy đủ. Chạy npx champollion init để xem các thiết lập sẵn có cho từng ngôn ngữ.
Các thiết lập sẵn ví dụ
| Ngôn ngữ | Thiết lập sẵn | Mặc định |
|---|---|---|
| Tiếng Pháp | formal-vous, casual-tu | formal-vous |
| Tiếng Hàn | polite-haeyo, formal-hapsyo, casual-hae | polite-haeyo |
| Tiếng Nhật | polite, formal-keigo, casual | polite |
| Tiếng Đức | formal-Sie, casual-du | formal-Sie |
| Tiếng Thái | neutral-professional, polite-male, polite-female | neutral-professional |
| Tiếng Tây Ban Nha | neutral-professional, formal-usted, casual-tuteo | neutral-professional |
Xem Đóng góp một Language Card để biết đặc tả đầy đủ, bao gồm xác thực trường dữ liệu và danh sách kiểm tra PR.
Xem thêm
- Cấu hình — tài liệu tham khảo cấu hình đầy đủ bao gồm thiết lập ngôn ngữ
- Các phương thức dịch thuật — cách hoạt động của từng phương thức
- Bộ chuyển đổi chữ viết — pipeline chuyển đổi chữ viết đơn trị (deterministic)
- Ngôn ngữ nhân tạo, Chữ viết & Chính tả — font PUA, Unicode, thêm ngôn ngữ nhân tạo
- Hỗ trợ một ngôn ngữ ít tài nguyên — xây dựng các phương thức cho các ngôn ngữ chưa được hỗ trợ đầy đủ