Polyglot
ข้อความของแอปและเว็บไซต์ของคุณใน 43 ภาษา แปลโดยโมเดลของคุณเองและตรวจสอบทีละข้อความ
- Linux or macOS
- Python 3.9+
- Local LLM
- 6 file formats

ฟีเจอร์หลัก
Polyglot รับสตริงภาษาอังกฤษที่แอปและเว็บไซต์ของคุณมีอยู่แล้ว แล้วเขียนเป็นภาษาอื่นได้สูงสุด 42 ภาษา ในรูปแบบไฟล์และโฟลเดอร์ที่แต่ละแพลตฟอร์มต้องการ โดยใช้โมเดลที่คุณรันเอง สตริงทุกตัวจะได้รับการตรวจสอบ หาก placeholder, tag หรือชื่อที่คุณต้องการคงไว้หายไป หรือคำตอบไม่ได้อยู่ในสคริปต์ของภาษานั้น ระบบจะขอคำตอบใหม่ และสตริงที่ยังไม่ผ่านจะถูกตัดออกพร้อมรายงานผล แทนที่จะส่งออกไปแบบผิดพลาด
- รูปแบบไฟล์ที่คุณใช้งาน ไฟล์ข้อความ JSON (i18next, vue-i18n, next-intl, react-intl), Flutter ARB, Android strings.xml, Apple .strings, gettext .po และเอกสาร Markdown โดยเขียนลงบน values-de, de.lproj, app_de.arb หรือ locale/de
- ตรวจสอบทีละสตริง %1$s, {name}, {{count}}, HTML tags, ตัวขึ้นบรรทัดใหม่, URLs และชื่อที่คุณต้องการคงไว้ต้องกลับมาตรงเป๊ะ ใช้สคริปต์ที่ถูกต้อง ไม่มีคำตอบว่างหรือยาวเกินกำหนด และไม่มีอะไรตกค้างเป็นภาษาอังกฤษ
- รูปพหูพจน์ที่ถูกต้อง ภาษารัสเซียมี one, few, many และ other ภาษาอาหรับมี 6 รูป ภาษาญี่ปุ่นมีรูปเดียว: Android plurals และ ICU messages จะปฏิบัติตามกฎของภาษานั้นๆ
- เฉพาะส่วนที่เปลี่ยน การแปลที่ถูกต้องจะถูกจดจำไว้ ดังนั้นเมื่อแก้ไขสตริงภาษาอังกฤษหนึ่งตัว ระบบจะส่งเฉพาะสตริงนั้น ไม่ใช่ทั้งไฟล์
- โทนเสียงและคำศัพท์ของคุณ คำอธิบายสินค้า โทนเสียง ชื่อที่ไม่ต้องแปล และคำศัพท์เฉพาะ จะถูกส่งไปในทุกคำขอ และคอมเมนต์ของคุณจะติดไปด้วยในฐานะบันทึก
- โมเดลของคุณ เครื่องของคุณ รองรับเซิร์ฟเวอร์แบบ OpenAI-compatible ใดๆ ก็ตาม: vLLM, llama.cpp, Ollama หรือ LM Studio หรือใช้ API แบบโฮสต์หากคุณเลือก ไม่มีค่าใช้จ่ายรายคำ
ทดสอบกับโมเดลจริง
- โมเดลจริง หกรูปแบบ ห้าสคริปต์: แอปตัวอย่างที่มี 70 สตริงใน JSON, Flutter ARB, Android, Apple .strings, gettext และ Markdown แปลเป็นภาษาเยอรมัน รัสเซีย ญี่ปุ่น อาหรับ และสเปน โดยใช้โมเดล Qwen แบบเปิด (Qwen3.8-Flash-Next, quantised เป็น 4 บิต) ที่ให้บริการโดย vLLM บนเครื่องของเราเอง: สตริง 346 จาก 350 รายการผ่านการตรวจสอบในขั้นตอนนำเข้า ภายในเวลา 7.5 นาที บนเซิร์ฟเวอร์ที่ใช้ร่วมกันซึ่งมีการใช้งานหนาแน่น
- 4 สตริงที่ไม่ผ่าน เกิดจากข้อผิดพลาดในการตรวจสอบของเรา ไม่ใช่ของโมเดล: คำยืมภาษาเยอรมัน อีเมลแอดเดรส และข้อความพหูพจน์ภาษาญี่ปุ่น เราแก้ไขการตรวจสอบแล้ว การรันครั้งถัดไปส่งเฉพาะ 4 สตริงนั้นและเขียนครบทั้ง 350 สตริงภายใน 45 วินาที
- รูปพหูพจน์ถูกต้องตั้งแต่ครั้งแรก: one, few, many และ other สำหรับภาษารัสเซีย 6 รูปสำหรับภาษาอาหรับ และรูปเดียวสำหรับภาษาญี่ปุ่น
- ครบทั้ง 42 ภาษา: ข้อความเว็บ 22 รายการจากตัวอย่างถูกแปลเป็นทุกภาษาที่ Polyglot รองรับ ตั้งแต่ภาษาอัมฮาริกจนถึงภาษาจีนตัวเต็ม: เขียนครบ 924 จาก 924 ข้อความ ภายใน 15 นาที
- และสิ่งที่การตรวจสอบมองไม่เห็น: ในภาษาเขมร ข้อความ "You are offline" ถูกแปลกลับเป็น "you are online" ซึ่งถือเป็นภาษาเขมรที่สมบูรณ์แบบ จึงผ่านการตรวจสอบ นั่นคือเหตุผลที่เอกสารคู่มือแนะนำให้ใช้เจ้าของภาษาตรวจสอบข้อความที่สำคัญที่สุด
มีอะไรอยู่ในชุดเครื่องมือ
ตัวแปลภาษา
ส่งงานเป็นชุดไปยังโมเดลของคุณ ตรวจสอบ ลองใหม่พร้อมระบุปัญหา มีหน่วยความจำการแปล และแปลหลายภาษาพร้อมกัน
หกฟอร์แมต
ตัวอ่านและตัวเขียนที่คงไว้ซึ่ง Escape character โครงสร้างโฟลเดอร์ และกฎพหูพจน์ของแต่ละแพลตฟอร์ม
การตรวจสอบ
ใช้งานแยกต่างหากได้: ตรวจสอบการแปลที่คุณมีอยู่แล้วเทียบกับต้นฉบับภาษาอังกฤษ
แอปตัวอย่าง
แอปขนาดเล็กหนึ่งตัวในทั้งหกฟอร์แมตพร้อมการตั้งค่า เพื่อทดลองใช้ก่อนนำไปใช้กับงานของคุณเอง
ข้อกำหนด
- Linux หรือ macOS พร้อม Python 3.9 ขึ้นไป ไม่ต้องติดตั้งอะไรเพิ่มเติมจาก pip
- เซิร์ฟเวอร์โมเดลที่รองรับ OpenAI-compatible พร้อมโมเดลคำสั่งแบบหลายภาษา โดยของเราคือโมเดล Qwen แบบเปิด (Qwen3.8-Flash-Next, quantised เป็น 4 บิต)
ข้อมูลที่เป็นประโยชน์
- การตรวจสอบจับเฉพาะสิ่งที่ทำให้แอปทำงานผิดพลาด ไม่ใช่ความหมายที่ผิด: จ้างเจ้าของภาษาอ่านหน้ารายละเอียดสินค้า ระบบชำระเงิน และข้อความทางกฎหมายของคุณ
- รายการพหูพจน์แบบ gettext จะยังคงเป็นภาษาอังกฤษในเวอร์ชันนี้
- ความเร็วขึ้นอยู่กับโมเดลของคุณ
- การตรวจสอบเป็นซอฟต์แวร์ฟรีและโอเพนซอร์ส: translation-checks บน GitHub ส่วนชุดเครื่องมือจะเพิ่มตัวแปลภาษา หกฟอร์แมต รูปแบบพหูพจน์ หน่วยความจำ และการอัปเดตตลอดหนึ่งปี
จากบันทึกภาคสนามของเรา
คำถาม
รองรับภาษาอะไรบ้าง?
ภาษาอาหรับ อัมฮาริก บัลแกเรีย เช็ก เยอรมัน กรีก สเปน เปอร์เซีย ฟินแลนด์ ฟิลิปปินส์ ฝรั่งเศส สก็อตติชเกลิค ฮีบรู เฮติครีโอล ฮังการี อาร์เมเนีย อินโดนีเซีย อิตาลี ญี่ปุ่น เขมร กันนาดา เกาหลี มาซิโดเนีย มลายู ดัตช์ นอร์เวย์ โอโรโม ปัญจาบ โปแลนด์ โปรตุเกส (บราซิล) โรมาเนีย รัสเซีย สโลวัก สโลวีเนีย เซอร์เบีย สวีเดน ไทย ตุรกี ยูเครน เวียดนาม และจีน (ตัวย่อและตัวเต็ม) โดยแปลจากภาษาอังกฤษ
ต้องใช้ GPU หรือไม่?
ตัว Polyglot เองไม่จำเป็นต้องใช้ ขึ้นอยู่กับเซิร์ฟเวอร์โมเดลของคุณ โมเดลขนาดเล็กทำงานบน CPU ได้แต่ช้า ส่วน GPU จะช่วยให้การแปลไฟล์ขนาดใหญ่ในหลายภาษาเสร็จสิ้นภายในไม่กี่นาที
เกิดอะไรขึ้นกับข้อความที่โมเดลแปลผิด?
ระบบจะขอข้อความนั้นใหม่แยกต่างหาก โดยระบุปัญหาให้ชัดเจน หากยังผิดพลาดอยู่ ระบบจะตัดข้อความนั้นออก ทำให้แอปของคุณแสดงข้อความภาษาอังกฤษสำหรับส่วนนั้น และรายการผลลัพธ์จะระบุข้อความพร้อมเหตุผลไว้ โดยไม่บันทึกข้อมูลที่มีปัญหา
ใช้ API แบบโฮสต์แทนได้ไหม?
ได้: ใช้บริการใดก็ได้ที่มีจุดเชื่อมต่อแชทแบบ OpenAI-compatible ใส่ URL ฐานและชื่อโมเดลใน polyglot.json และใส่คีย์ในไฟล์
อัปเดตแล้ว: