เผยแพร่เมื่อวันที่ 13 พฤศจิกายน 2024
ใช้ Translator API ใน Chrome เพื่อแปลข้อความในเบราว์เซอร์โดยใช้โมเดล AI ในเครื่อง
เว็บไซต์ของคุณอาจนำเสนอเนื้อหาในหลายภาษาอยู่แล้วเพื่อให้ผู้ชมทั่วโลกเข้าถึงได้ Translator API ช่วยให้ผู้ใช้มีส่วนร่วมได้โดยใช้ภาษาแม่ ตัวอย่างเช่น ผู้ใช้สามารถเข้าร่วมแชทสนับสนุนเป็นภาษาแรกได้ และเว็บไซต์สามารถแปลเป็นภาษาที่ตัวแทนฝ่ายสนับสนุนใช้ก่อนที่จะส่งออกจากอุปกรณ์ของผู้ใช้ ซึ่งจะมอบประสบการณ์การใช้งานที่ราบรื่น รวดเร็ว และครอบคลุมสำหรับผู้ใช้ทุกคน
โดยทั่วไปแล้ว การแปลเนื้อหาบนเว็บต้องใช้บริการระบบคลาวด์ ขั้นแรก ระบบจะอัปโหลดเนื้อหาต้นทางไปยังเซิร์ฟเวอร์ ซึ่งจะทำการแปลเป็นภาษาเป้าหมาย จากนั้นระบบจะดาวน์โหลดข้อความที่ได้และแสดงต่อผู้ใช้ การใช้การแปลในไคลเอ็นต์จะช่วยประหยัดเวลาในการเรียกใช้เซิร์ฟเวอร์และค่าใช้จ่ายในการโฮสต์บริการแปล
ความพร้อมใช้งาน
- เข้าร่วมช่วงทดลองใช้ Translator API จากต้นทางที่ใช้ใน Chrome เวอร์ชัน 131 ถึง 137 การทดลองใช้แหล่งที่มาจะเปิดใช้ฟีเจอร์นี้ให้กับผู้ใช้ทุกคนในแหล่งที่มาของคุณบน Chrome
- ทำตามการติดตั้งใช้งานใน ChromeStatus
- ข้อเสนอ Translator API พร้อมรับการพูดคุย
- เข้าร่วมโปรแกรมทดลองใช้ก่อนเปิดตัวเพื่อดูตัวอย่าง AI API ในตัวใหม่ก่อนเปิดตัวและเข้าถึงการสนทนาในจดหมายข่าว
แม้ว่าระบบจะทราบภาษาเป้าหมายที่เลือกเสมอ แต่ในบางสถานการณ์ ระบบอาจไม่ทราบว่าภาษาต้นฉบับคืออะไร เช่น เนื้อหาที่ผู้ใช้สร้างขึ้น ในกรณีเช่นนี้ ข้อเสนอ Translator API จะรวมทั้ง Translator API และ Language Detector API ซึ่งพร้อมใช้งานในช่วงทดลองใช้จากต้นทางด้วย ลงชื่อสมัครใช้ช่วงทดลองใช้จากต้นทางทั้ง 2 รายการเพื่อใช้ API เหล่านี้ร่วมกัน
ลงชื่อสมัครทดลองใช้จากต้นทาง
หากต้องการเริ่มใช้ Translator API ให้ทำตามขั้นตอนต่อไปนี้
- รับทราบนโยบายการใช้งานที่ไม่อนุญาตสำหรับ Generative AI ของ Google
- ไปที่ช่วงทดลองใช้ Translator API จากต้นทาง
- คลิกลงทะเบียน แล้วกรอกแบบฟอร์ม
- ในช่องต้นทางของเว็บ ให้ระบุต้นทางหรือรหัสส่วนขยาย
chrome-extension://YOUR_EXTENSION_ID
- ในช่องต้นทางของเว็บ ให้ระบุต้นทางหรือรหัสส่วนขยาย
- คลิกลงทะเบียนเพื่อส่งข้อมูล
- คัดลอกโทเค็นที่ระบุ แล้วเพิ่มลงในหน้าเว็บทุกหน้าในต้นทางหรือไฟล์ของส่วนขยายที่คุณต้องการเปิดใช้ช่วงทดลองใช้
- หากคุณกำลังสร้างส่วนขยาย ให้ทําตามวิธีการทดลองใช้ต้นทางของส่วนขยาย
- เริ่มใช้ Translator API
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีเริ่มต้นใช้งานการทดสอบต้นทาง
เพิ่มการรองรับ localhost
หากต้องการเข้าถึง Translator API ใน localhost
ในระหว่างช่วงทดลองใช้จากต้นทาง คุณต้องอัปเดต Chrome เป็นเวอร์ชันล่าสุด จากนั้น ดำเนินการตามขั้นตอนเหล่านี้:
- เปิด Chrome ในแพลตฟอร์ม Windows, Mac หรือ Linux
- ไปที่
chrome://flags/#translation-api
- เลือกเปิดใช้
- หากต้องการลองใช้คู่ภาษาหลายคู่ ให้เลือกเปิดใช้โดยไม่มีขีดจํากัดของแพ็กภาษา
- คลิกเปิดใหม่หรือรีสตาร์ท Chrome
ใช้ Translator API
หากต้องการตรวจสอบว่าระบบรองรับ Translator API หรือไม่ ให้เรียกใช้สnippet การตรวจหาฟีเจอร์ต่อไปนี้
if ('translation' in self && 'createTranslator' in self.translation) {
// The Translator API is supported.
}
ตรวจสอบการรองรับคู่ภาษา
การจัดการการแปลจะดำเนินการด้วยแพ็กภาษาที่ดาวน์โหลดตามคําขอ แพ็กเกจภาษาเปรียบเสมือนพจนานุกรมสำหรับภาษาหนึ่งๆ แพ็กเหล่านี้จะจับคู่กับฟังก์ชัน canTranslate()
แบบไม่พร้อมกัน ซึ่งจะช่วยให้คุณระบุได้ว่าระบบรองรับคู่ภาษาหรือไม่
ฟังก์ชัน canTranslate()
ต้องใช้พารามิเตอร์ options
ที่มี 2 ช่อง ดังนี้
sourceLanguage
: ภาษาปัจจุบันของข้อความtargetLanguage
: ภาษาสุดท้ายที่ควรแปลข้อความ
ใช้รหัสย่อภาษา BCP 47 เป็นสตริง เช่น 'es'
สำหรับสเปนหรือ 'fr'
สำหรับฝรั่งเศส
await translation.canTranslate({
sourceLanguage: 'en',
targetLanguage: 'fr',
});
// 'readily'
ฟังก์ชัน canTranslate()
สามารถแสดงผลลัพธ์ใดก็ได้ต่อไปนี้
no
: เบราว์เซอร์นี้ไม่สามารถแปลตามที่ขอได้readily
: เบราว์เซอร์สามารถแปลตามที่ขอafter-download
: เบราว์เซอร์จะทำการแปลได้ก็ต่อเมื่อดาวน์โหลดโมเดลหรือแพ็กภาษาที่เกี่ยวข้องแล้วเท่านั้น
คุณสามารถฟังความคืบหน้าของการดาวน์โหลดได้โดยใช้เหตุการณ์ downloadprogress
ดังนี้
translator.ondownloadprogress = progressEvent => {
updateDownloadProgressBar(progressEvent.loaded, progressEvent.total);
};
หากการดาวน์โหลดไม่สำเร็จ ระบบจะหยุดส่งเหตุการณ์ downloadprogress
และปฏิเสธready
promise
สร้างและเรียกใช้โปรแกรมแปล
หากต้องการสร้างตัวแปล ให้เรียกใช้translation.createTranslator()
ฟังก์ชันแบบแอซิงโครนัส เช่นเดียวกับ canTranslate()
ต้องใช้พารามิเตอร์ options ที่มี 2 ช่อง ได้แก่ 1 ช่องสําหรับ sourceLanguage
และอีก 1 ช่องสําหรับ targetLanguage
// Create a translator that translates from English to French.
const translator = await self.translation.createTranslator({
sourceLanguage: 'en',
targetLanguage: 'fr',
});
เมื่อมีผู้แปลแล้ว ให้เรียกใช้ฟังก์ชัน translate()
แบบแอซิงโครนัสเพื่อแปลข้อความ
await translator.translate('Where is the next bus stop, please?');
// "Où est le prochain arrêt de bus, s'il vous plaît ?"
ข้อจํากัดในการทดลองใช้ต้นทาง
ข้อจํากัดต่อไปนี้จะมีผลระหว่างช่วงทดลองใช้จากต้นทาง
คู่ภาษาที่รองรับ
ขณะนี้คุณดาวน์โหลดแพ็กภาษาเพื่อใช้ในการแปลได้สูงสุด 3 แพ็ก
เรามุ่งมั่นที่จะขยายช่วงภาษาที่รองรับในรุ่นต่อๆ ไป ขณะเดียวกันก็รักษามาตรฐานความเป็นส่วนตัวของผู้ใช้ในระดับสูง คุณสามารถตรวจสอบว่าระบบรองรับคู่ภาษาที่ต้องการหรือไม่ด้วยฟังก์ชัน canTranslate()
ระบบอาจใช้คู่ภาษาบางคู่ที่ใช้ไม่บ่อยนักเพื่อการพิมพ์ลายนิ้วมือ ตัวอย่างเช่น การแปลระหว่างภาษาอังกฤษกับภาษาสเปนนั้นพบได้บ่อยกว่าการแปลระหว่างภาษาที่ไม่พบบ่อย เช่น ภาษากาลิคและภาษาคาตาลัน คู่ภาษาที่พบไม่บ่อยนักอาจถือเป็นจุดข้อมูลสำหรับการระบุผู้ใช้
ในระหว่างช่วงทดลองใช้ต้นทาง เราจะจำกัดคู่ภาษาที่อาจแปลได้เพื่อปกป้องความเป็นส่วนตัวของผู้ใช้ คู่ภาษาต้องเป็นไปตามเกณฑ์ต่อไปนี้
- ทั้งภาษาต้นทางและปลายทางได้รับการตั้งค่าเป็นภาษาที่ต้องการใน Chrome
- หรือมีการตั้งค่าภาษาใดภาษาหนึ่งเป็นภาษาที่ต้องการใน Chrome และอีกภาษาหนึ่งเป็นภาษายอดนิยมต่อไปนี้
- อังกฤษ (
en
) - จีนกลาง (
zh
ตัวย่อ) หรือจีนกลางไต้หวัน (zh-Hant
ตัวเต็ม) - ญี่ปุ่น (
ja
) - โปรตุเกส (
pt
) - รัสเซีย (
ru
) - สเปน (
es
) - ตุรกี (
tr
) - ฮินดี (
hi
) - เวียดนาม (
vi
) - เบงกอล (
bn
)
- อังกฤษ (
ข้ามข้อจำกัดด้านภาษาสำหรับการทดสอบในเครื่อง
สําหรับการทดสอบเวอร์ชันต้นแบบในเครื่อง คุณสามารถข้ามการตรวจสอบเหล่านี้ได้โดยเรียกใช้ Chrome ด้วยตัวเลือกบรรทัดคําสั่ง --disable-features=TranslationAPIAcceptLanguagesCheck
หรือตั้งค่า chrome://flags/#translation-api
เป็นเปิดใช้โดยไม่จำกัดจำนวนแพ็กภาษา
โปรดไปที่ chrome://on-device-translation-internals/
เพื่อติดตั้งและถอนการติดตั้งแพ็กภาษาด้วยตนเอง
คำแปลตามลำดับ
ระบบจะประมวลผลการแปลตามลำดับ หากคุณส่งข้อความจำนวนมากให้แปล ระบบจะบล็อกการแปลข้อความที่ส่งมาภายหลังจนกว่าการแปลข้อความก่อนหน้าจะเสร็จสมบูรณ์
หากต้องการให้คำขอแปลภาษาตอบสนองได้ดีที่สุด ให้รวมคำขอเข้าด้วยกันและพิจารณาแสดงอินเทอร์เฟซการโหลด เช่น ไอคอนหมุนแสดงการโหลด เพื่อบ่งบอกว่ากำลังแปลอยู่
ความพร้อมใช้งานของผู้ปฏิบัติงานเกี่ยวกับเว็บ
ในช่วงทดลองใช้จากต้นทาง Translator API จะรองรับเฉพาะจากชุดข้อความหลักเท่านั้น เราตั้งใจที่จะรองรับในเว็บเวิร์กเกอร์เมื่อ API พร้อมให้บริการอย่างแพร่หลาย
สาธิต
คุณจะเห็น Translator API ซึ่งใช้ร่วมกับ Language Detector API ในPlayground ของ Translator และ Language Detector API
ความพยายามในการทำให้มาตรฐาน
เรากําลังพยายามทำให้ Translator API เป็นมาตรฐานเดียวกัน เพื่อให้ใช้งานร่วมกันได้กับเบราว์เซอร์ต่างๆ
ข้อเสนอ API ของเราได้รับการสนับสนุนจากชุมชนและได้ย้ายไปยังกลุ่มชุมชน Web Incubator ของ W3C เพื่อพูดคุยกันต่อ ทีม Chrome ได้ขอความคิดเห็นจากกลุ่มสถาปัตยกรรมทางเทคนิคของ W3C และสอบถามMozilla และ WebKit เกี่ยวกับจุดยืนด้านมาตรฐาน
เข้าร่วมและแชร์ความคิดเห็น
เริ่มทดสอบ Translator API ได้เลยโดยเข้าร่วมช่วงทดลองใช้เวอร์ชันต้นฉบับและแชร์ความคิดเห็นของคุณ ความคิดเห็นของคุณจะส่งผลโดยตรงต่อวิธีที่เราสร้างและใช้งาน API เวอร์ชันอนาคตของ API นี้และ API AI ในตัวทั้งหมด
- หากต้องการแสดงความคิดเห็นเกี่ยวกับการใช้งาน Chrome ให้ส่งรายงานข้อบกพร่องหรือคำขอฟีเจอร์
- พูดคุยเกี่ยวกับการออกแบบ Translator API ใน GitHub โดยแสดงความคิดเห็นใน Issue ที่มีอยู่หรือเปิด Issue ใหม่
- มีส่วนร่วมในมาตรฐานโดยเข้าร่วมกลุ่มชุมชน Web Incubator