Beyond translation with AI 🇸🇬

Saowaluck Suksawat
odds.team
Published in
3 min readDec 27, 2023

มารู้จัก Ez Translation with DeepL จากงาน City JS 2023 กัน

picture by @Thohirah

นี่คงเป็น ช่วงท้ายๆ ที่คุณ Estee tey พูดไว้ใน talk ของ Ez Translation with DeepL คงเป็นประโยคที่ ทัชหัวใจ จนอยากนำมันมาเขียนไว้ในเป็นบทความเลยล่ะ

เกริ่นนำสักนิดละกัน เนื่องจากช่วงกรกฏาคม ที่ผ่านมาป๊อบเองและเพื่อนๆ ได้มีโอกาสไปเข้าร่วมงาน CityJS Singapore 2023 🇸🇬 ที่คนธรรมดาอย่างชาว ODDS เป็น sporncerให้ (ขอกราบงามๆ 🙏) เลยขอหยิบยกหัวข้อนี้ มาพูดกันหน่อย

เริ่มต้น session นี้ ด้วยการพาเราไปรู้จักกระบวนการแปล ตั้งแต่ต้นน้ำยันปลายน้ำ เลยทีเดียว ที่ใน talk ครั้งนี้จะทำให้เราสัมผัส ว่า “การแปลมันทำงานยังไง แล้วเราจะเอา DeepL เข้ามาช่วยในการแปลได้ยังไงกัน”

โดยขอสรุปเนื้อหาเป็น 2 part ใหญ่ๆ แบบนี้

Part 1 — How to string storage
Part 2 —Take a tour of DeepL
….

Part1 — How to string storage

เราจะพาคุณย้อนกลับไป ตรง Basic สุดของการแปล ว่าหากเราต้องการที่ให้หน้าเว็บของเรา สามารถที่จะแสดงข้อความ จากภาษาหนึ่ง ไปยังอีกภาษาหนึ่งได้นั้น มันเกิดขึ้นมาได้ยังไงกัน

วิธีแรก ที่โคตรง่ายเลย คือ การสร้าง constant ขึ้นมา เพื่อเก็บค่าของภาษานั้นไว้

very basic string use constant like this

แล้วถ้ามี หลายภาษาล่ะ? โอเคเราก็ตั้ง ชื่อตัวแปรไปตามภาษานั้นๆ เลย 😊

then use multiple language

จาก code ดังกล่าว ก็นำมาสู่ปัญหาที่ว่า ถ้าเกิดมีหลายคำล่ะ ? ตัวแปรน่าจะเยอะมากเลยนะ 😲 ก็เลยมีคนเห็นว่า นั่นไงมันมี pattern คล้ายๆกัน เลยเริ่มนำ object เข้ามาใช้

let’s use object to store this

จนสุดท้าย ก็เกิด i18n ที่เป็น standard ที่ผู้คนนิยมใช้กันมากที่สุดในการเก็บ แต่ละภาษาไว้ในรูปแบบของ json file

next solution that most people have a standardized to SRS i18n

Part 2 — Take a tour of DeepL

เมื่อคุณรู้จักแล้วว่า คำศัพท์ของแต่ละภาษาถูกจัดเก็บอย่างไร งั้นเรามาดูต่อว่า มีเครื่องมือ ใดบ้างที่เราใช้ในการแปล

ตัวแรก คงต้อง ยกให้คนนี้เลย Transifex ซึ่งมีคนเคลมว่าเป็น higher actual professional translator เลยนะ ซึ่งดีมาก แต่แอบแพงไปนิด 🥲💰

https://www.transifex.com/

เลยมีคนนำเสนอ DeepL ที่โดนเคลมว่าเป็น The world’s most accurate translator. และยังแม่นยำกว่า google translate ตั้ง 6 เท่า 😲 ในภาษาญี่ปุ่นและเยอรมัน (มีทั้งแบบฟรีและเสียเงินเลย)

โดยที่ DeepL เองก็เป็นระบบ machine translation ที่ใช้เทคนิคการเรียนรู้เชิงลึก (deep-learning) เพื่อทำให้การแปลมีคุณภาพสูง ซึ่งดูสถิติ ได้จากรูปด้านล่างเลย

https://www.deepl.com/whydeepl

ต่อมา เขายกตัวอย่าง 2 project ที่เอา DeepL มาใช้งานจริงๆ อย่างใน วิดีโอ ด้านล่างเป็นผลงานของ Local SG ที่แปลงเสียง anime waifu โดยที่พากษ์เสียงแค่ภาษาอังกฤษ แต่ตัวละครสามารถพูดเป็นภาษาญี่ปุ่นได้ด้วย

Local SG dude turned his voice into anime waifu using ChatGPT and DeepL

และอีก project หนึ่ง ที่ชาว X อย่างเราเห็นกันบ่อยใน Twitter ก็มีการเอา DeepL เข้ามาใช้งานด้วย

Translate with DeepL method on Twitter

….

มาต่อกัน หลังจากเรารู้จักวิธีการจัดเก็บข้อมูลของแต่ละภาษาแล้ว และรู้จัก DeepL แล้ว ก็เข้าสู่ช่วงการนำ DeepL เข้ามาใช้จริงๆใน project

โดยการลง lib ตัวหนึ่ง ที่มีชื่อว่า “vue -i18n-nextที่จะช่วยเราในการ config ให้การแปลภาษาง่ายขึ้น

มาลองใช้ vue -i18n-next กัน

หลังจาก เราลง config เสร็จ ก็มาลองใช้งาน DeepL ผ่าน github action กัน โดยหลังจากที่เราเปิด PR เสร็จ เราก็จะรู้ได้ชุดของ text ในภาษาอื่นมาด้วยเลย โดยที่เราเองก็เพียงระบุแค่เพียง ภาษาอังกฤษ ไว้เท่านั้น!!! 🤩

ลองเอา DeepL เข้ามาช่วยแปลกัน

แต่ตอนนี้ทาง DeepL ยังไม่ support ภาษาไทย 🇹🇭 และรองรับ payment แบบไทยนะ แต่ก็น่าจะเป็น concept คร่าวๆให้เราได้เห็นอีกมุมของการแปล ว่ามีอะไรแบบนี้ด้วย

วนกลับมาที่ ท้ายๆ ของ session นี้ นอกจากเนื้อหาทั้ง 2 part ที่กล่าวไปแล้วนั้น ส่วนตัวค่อนข้างประทับใจใน mindset ของ speaker ที่พยายามสอดแทรกความเอาใจใส่ อย่าง Quote ที่บอกว่า

“Not everyone will have a browser that provides built-in translation by default. It would be good for every app to offer localization in some way or another.”

สุดท้าย ขอบคุณเพื่อนๆ ที่ไปด้วยกันมาก และขอบคุณผู้อ่านทุกท่านที่อ่านกันมาจนจบ จริงๆภายในงานยังมีอีกหลาย session ที่น่าสนใจ ตามอ่านได้ที่นี่เลย

Ref:
ชม Talk เต็มๆได้ที่นี่เลย https://www.youtube.com/watch?v=9bc-z-WTqKA

--

--