การแปลด้วย AI ในตัว

เผยแพร่: 13 พฤศจิกายน 2024 อัปเดตล่าสุด: 20 พฤษภาคม 2025

วิดีโออธิบาย เว็บ ส่วนขยาย สถานะ Chrome ความตั้งใจ
GitHub เบื้องหลังธง ช่วงทดลองใช้จากต้นทาง เบื้องหลังธง ช่วงทดลองใช้จากต้นทาง ดู ความตั้งใจที่จะทดสอบ

ใช้ Translator API ใน Chrome เพื่อแปลข้อความด้วยโมเดล AI ที่มีให้ในเบราว์เซอร์

เว็บไซต์ของคุณอาจนำเสนอเนื้อหาในหลายภาษาอยู่แล้วเพื่อให้ผู้ชมทั่วโลกเข้าถึงได้ Translator API ช่วยให้ผู้ใช้มีส่วนร่วมได้โดยใช้ภาษาแม่ เช่น ผู้ใช้สามารถเข้าร่วมแชทสนับสนุนเป็นภาษาแรกได้ และเว็บไซต์จะแปลแชทเป็นภาษาที่ตัวแทนฝ่ายสนับสนุนใช้ก่อนที่จะส่งออกจากอุปกรณ์ของผู้ใช้ ซึ่งจะมอบประสบการณ์การใช้งานที่ราบรื่น รวดเร็ว และครอบคลุมสำหรับผู้ใช้ทุกคน

โดยทั่วไปแล้ว การแปลเนื้อหาบนเว็บต้องใช้บริการระบบคลาวด์ ขั้นแรก ระบบจะอัปโหลดเนื้อหาต้นทางไปยังเซิร์ฟเวอร์ ซึ่งจะทำการแปลเป็นภาษาเป้าหมาย จากนั้นระบบจะดาวน์โหลดข้อความที่ได้และแสดงต่อผู้ใช้ การใช้การแปลในไคลเอ็นต์จะช่วยประหยัดเวลาในการเรียกใช้เซิร์ฟเวอร์และค่าใช้จ่ายในการโฮสต์บริการแปล

เริ่มต้นใช้งาน

Translator API พร้อมใช้งานใน Chrome 138 เวอร์ชันเสถียร ก่อนอื่น ให้เรียกใช้การตรวจหาฟีเจอร์เพื่อดูว่าเบราว์เซอร์รองรับ Translator API หรือไม่

if ('Translator' in self) {
  // The Translator API is supported.
}

แม้ว่าคุณจะทราบภาษาเป้าหมายสำหรับการแปลเสมอ แต่คุณอาจไม่ทราบว่าภาษาต้นฉบับคืออะไร ในกรณีเช่นนี้ คุณสามารถใช้ Language Detector API

ตรวจสอบข้อกำหนดด้านฮาร์ดแวร์

เครื่องมือตรวจหาภาษาและ Translator API ใช้งานได้ในเดสก์ท็อปใน Chrome เท่านั้น

Prompt API, Summarizer API, Writer API และ Rewriter API จะทำงานใน Chrome ได้เมื่อมีคุณสมบัติตรงตามเงื่อนไขต่อไปนี้

  • ระบบปฏิบัติการ: Windows 10 หรือ 11, macOS 13 ขึ้นไป (Ventura ขึ้นไป) หรือ Linux API ที่ Gemini Nano รองรับยังไม่รองรับ Chrome สำหรับ Android, iOS และ ChromeOS
  • พื้นที่เก็บข้อมูล: อย่างน้อย 22 GB ในวอลุ่มที่มีโปรไฟล์ Chrome
  • GPU: VRAM มากกว่า 4 GB เท่านั้น
  • เครือข่าย: อินเทอร์เน็ตแบบไม่จำกัดหรือการเชื่อมต่อแบบไม่จำกัดปริมาณ
  • GPU: VRAM มากกว่า 4 GB เท่านั้น
  • เครือข่าย: อินเทอร์เน็ตแบบไม่จำกัดหรือการเชื่อมต่อแบบไม่จำกัดปริมาณ

ข้อกำหนดเหล่านี้มีไว้สำหรับคุณในกระบวนการพัฒนาและผู้ใช้ที่ทำงานกับฟีเจอร์ที่คุณสร้าง

ตรวจสอบการรองรับคู่ภาษา

การจัดการการแปลจะดำเนินการด้วยแพ็กภาษาที่ดาวน์โหลดตามคําขอ แพ็กเกจภาษาเปรียบเสมือนพจนานุกรมสำหรับภาษาหนึ่งๆ

  • sourceLanguage: ภาษาปัจจุบันของข้อความ
  • targetLanguage: ภาษาสุดท้ายที่ควรแปลข้อความ

ใช้รหัสย่อภาษา BCP 47 เป็นสตริง เช่น 'es' สำหรับสเปนหรือ 'fr' สำหรับฝรั่งเศส

const translatorCapabilities = await Translator.availability({
  sourceLanguage: 'es',
  targetLanguage: 'fr',
});
// 'available'

ฟังก์ชัน availability() จะแสดงผลพรอมต์ที่มีค่าต่อไปนี้

  • "unavailable": การใช้งานไม่รองรับการแปลหรือการตรวจหาภาษาที่ระบุ
  • "downloadable": การติดตั้งใช้งานรองรับการแปลหรือการตรวจหาภาษาที่ระบุ แต่ต้องดาวน์โหลดเพื่อดําเนินการต่อ การดาวน์โหลดอาจเป็นรุ่นของเบราว์เซอร์
  • "downloading": การใช้งานรองรับการแปลหรือการตรวจหาภาษาของภาษาที่ระบุ เบราว์เซอร์กำลังดาวน์โหลดอย่างต่อเนื่องจนเสร็จสิ้น ซึ่งเป็นส่วนหนึ่งของการสร้างออบเจ็กต์ที่เชื่อมโยง
  • "available": การติดตั้งใช้งานรองรับการแปลหรือการตรวจหาภาษาของภาษาที่ระบุ และการดาวน์โหลดที่จำเป็นเสร็จสมบูรณ์แล้ว

ฟังความคืบหน้าการดาวน์โหลดโมเดลด้วยเหตุการณ์ downloadprogress

const translator = await Translator.create({
  sourceLanguage: 'es',
  targetLanguage: 'fr',
  monitor(m) {
    m.addEventListener('downloadprogress', (e) => {
      console.log(`Downloaded ${e.loaded * 100}%`);
    });
  },
});

หากการดาวน์โหลดไม่สำเร็จ เหตุการณ์ downloadprogress จะหยุดลงและระบบจะปฏิเสธสัญญา ready

สร้างและเรียกใช้โปรแกรมแปล

หากต้องการสร้างตัวแปล ให้เรียกใช้create() ฟังก์ชันแบบแอซิงโครนัส โดยต้องใช้พารามิเตอร์ตัวเลือกที่มี 2 ช่อง ได้แก่ 1 ช่องสําหรับ sourceLanguage และอีก 1 ช่องสําหรับ targetLanguage

// Create a translator that translates from English to French.
const translator = await Translator.create({
  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 ?"

คำแปลตามลำดับ

ระบบจะประมวลผลการแปลตามลำดับ หากคุณส่งข้อความจำนวนมากให้แปล ระบบจะบล็อกการแปลข้อความที่ส่งมาภายหลังจนกว่าการแปลข้อความก่อนหน้าจะเสร็จสมบูรณ์

หากต้องการให้คำตอบที่ดีที่สุดสำหรับคำขอของคุณ ให้รวมคำขอเข้าด้วยกันและเพิ่มอินเทอร์เฟซการโหลด เช่น ไอคอนหมุนแสดงการโหลด เพื่อบ่งบอกว่ากำลังแปลอยู่

สาธิต

คุณจะเห็น Translator API ซึ่งใช้ร่วมกับ Language Detector API ในPlayground ของ Translator และ Language Detector API

ความพยายามในการทำให้มาตรฐาน

เรากําลังพยายามทำให้ Translator API เป็นมาตรฐานเดียวกัน เพื่อให้ใช้งานร่วมกันได้กับเบราว์เซอร์ต่างๆ

ข้อเสนอ API ของเราได้รับการสนับสนุนจากชุมชนและได้ย้ายไปยังกลุ่มชุมชน Web Incubator ของ W3C เพื่อพูดคุยกันต่อ ทีม Chrome ได้ขอความคิดเห็นจากกลุ่มสถาปัตยกรรมทางเทคนิคของ W3C และสอบถามMozilla และ WebKit เกี่ยวกับจุดยืนด้านมาตรฐาน

คุณสามารถมีส่วนร่วมในมาตรฐานได้โดยเข้าร่วมกลุ่มชุมชน Web Incubator

แชร์ความคิดเห็น

เราอยากเห็นสิ่งที่คุณสร้างด้วย Language Detector API แชร์เว็บไซต์และเว็บแอปพลิเคชันกับเราใน X, YouTube และ LinkedIn

หากต้องการแสดงความคิดเห็นเกี่ยวกับการใช้งาน Chrome ให้ส่งรายงานข้อบกพร่องหรือคำขอฟีเจอร์