เผยแพร่: 13 พฤศจิกายน 2024, อัปเดตล่าสุด: 20 พฤษภาคม 2025
Browser Support
ใช้ Translator API ใน Chrome เพื่อแปลข้อความด้วยโมเดล AI ที่มีให้ใน เบราว์เซอร์
เว็บไซต์ของคุณอาจมีเนื้อหาในหลายภาษาอยู่แล้ว ผู้ใช้สามารถเขียนในภาษาแรกของตนเองได้ด้วย Translator API ตัวอย่างเช่น ผู้ใช้ สามารถเข้าร่วมแชทสนับสนุนในภาษาแรกของตน และเว็บไซต์ของคุณสามารถ แปลข้อความของผู้ใช้เป็นภาษาแรกของตัวแทนฝ่ายสนับสนุน ก่อนที่ ข้อความจะออกจากอุปกรณ์ของผู้ใช้ ซึ่งจะช่วยสร้างประสบการณ์การใช้งานที่ราบรื่น รวดเร็ว และครอบคลุม สำหรับผู้ใช้ทุกคน
โดยปกติแล้วการแปลเนื้อหาเว็บจะต้องใช้บริการระบบคลาวด์ โดยขั้นแรก ระบบจะอัปโหลดเนื้อหาต้นฉบับไปยังเซิร์ฟเวอร์ ซึ่งจะทำการแปลเป็น ภาษาเป้าหมาย จากนั้นจะดาวน์โหลดข้อความที่ได้และส่งกลับให้ ผู้ใช้ เมื่อเนื้อหามีอายุสั้นและไม่จำเป็นต้องบันทึกลงในฐานข้อมูล การแปลฝั่งไคลเอ็นต์จะช่วยประหยัดเวลาและค่าใช้จ่ายได้มากกว่าบริการแปลที่โฮสต์
เริ่มต้นใช้งาน
ตรวจสอบข้อกำหนดเกี่ยวกับฮาร์ดแวร์
นักพัฒนาแอปและผู้ใช้ที่ใช้งานฟีเจอร์โดยใช้ API เหล่านี้ใน Chrome ต้องมีคุณสมบัติตรงตามข้อกำหนดต่อไปนี้ เบราว์เซอร์อื่นๆ อาจมีข้อกำหนดในการใช้งานที่แตกต่างกัน
API ตรวจหาภาษาและ API แปลภาษาทำงานใน Chrome บนเดสก์ท็อป API เหล่านี้ใช้ไม่ได้บนอุปกรณ์เคลื่อนที่
Prompt API, Summarizer API, Writer API, Rewriter API และ Proofreader API จะทำงานใน Chrome เมื่อมีคุณสมบัติตรงตามเงื่อนไขต่อไปนี้
- ระบบปฏิบัติการ: Windows 10 หรือ 11, macOS 13 ขึ้นไป (Ventura ขึ้นไป), Linux หรือ ChromeOS (ตั้งแต่แพลตฟอร์ม 16389.0.0 ขึ้นไป) ในอุปกรณ์ Chromebook Plus Chrome สำหรับ Android, iOS และ ChromeOS ในอุปกรณ์ที่ไม่ใช่ Chromebook Plus ยังไม่รองรับ API ที่ใช้ Gemini Nano
- พื้นที่เก็บข้อมูล: มีพื้นที่ว่างอย่างน้อย 22 GB ในวอลุ่มที่มีโปรไฟล์ Chrome ของคุณ
- GPU หรือ CPU: โมเดลในตัวสามารถทำงานด้วย GPU หรือ CPU
- GPU: VRAM มากกว่า 4 GB เท่านั้น
- CPU: RAM 16 GB ขึ้นไปและ CPU 4 คอร์ขึ้นไป
- หมายเหตุ: Prompt API ที่มีอินพุตเสียงต้องใช้ GPU
- เครือข่าย: อินเทอร์เน็ตแบบไม่จำกัดปริมาณหรือการเชื่อมต่อแบบไม่มีการวัดปริมาณอินเทอร์เน็ต
ขนาดที่แน่นอนของ Gemini Nano อาจแตกต่างกันไปเมื่อเบราว์เซอร์อัปเดตโมเดล หากต้องการดูขนาดปัจจุบัน ให้ไปที่ chrome://on-device-internals
เรียกใช้การตรวจหาฟีเจอร์เพื่อดูว่าเบราว์เซอร์รองรับ Translator API หรือไม่
if ('Translator' in self) {
// The Translator API is supported.
}
แม้ว่าคุณจะทราบภาษาเป้าหมายสำหรับการแปลเสมอ แต่ก็อาจไม่ทราบภาษาต้นฉบับเสมอไป ในกรณีเช่นนี้ คุณสามารถใช้ Language Detector API ได้
การดาวน์โหลดโมเดล
Translator API ใช้โมเดลผู้เชี่ยวชาญที่ได้รับการฝึกให้สร้างคำแปลคุณภาพสูง API นี้มีอยู่ใน Chrome และระบบจะดาวน์โหลดโมเดล เมื่อเว็บไซต์ใช้ API นี้เป็นครั้งแรก
หากต้องการตรวจสอบว่าโมเดลพร้อมใช้งานหรือไม่ ให้เรียกใช้ฟังก์ชันแบบอะซิงโครนัส
Translator.availability()
หากการตอบกลับ availability() คือ downloadable ให้รอฟังความคืบหน้าในการดาวน์โหลด
เพื่อแจ้งให้ผู้ใช้ทราบความคืบหน้า เนื่องจากอาจใช้เวลาสักครู่
ตรวจสอบการรองรับคู่ภาษา
การแปลจะได้รับการจัดการด้วยแพ็กภาษาที่ดาวน์โหลดตามคำขอ แพ็กภาษา ก็เหมือนพจนานุกรมสำหรับภาษาหนึ่งๆ
sourceLanguage: ภาษาปัจจุบันของข้อความtargetLanguage: ภาษาปลายทางที่ควรแปลข้อความ
ใช้รหัสย่อของภาษา BCP 47 เป็นสตริง เช่น 'es' สำหรับภาษาสเปน หรือ 'fr' สำหรับภาษาฝรั่งเศส
const translatorCapabilities = await Translator.availability({
sourceLanguage: 'es',
targetLanguage: 'fr',
});
// '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() แบบไม่พร้อมกัน ฟังก์ชัน create()
ของตัวแปลต้องใช้พารามิเตอร์ตัวเลือกที่มี 2 ฟิลด์ ได้แก่ ฟิลด์สำหรับ sourceLanguage และฟิลด์สำหรับ 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 ?"
หรือหากต้องการจัดการกับข้อความที่ยาวขึ้น คุณสามารถใช้ API เวอร์ชันสตรีมมิงและเรียก translateStreaming()
const stream = translator.translateStreaming(longText);
for await (const chunk of stream) {
console.log(chunk);
}
การแปลตามลำดับ
ระบบจะประมวลผลคำแปลตามลำดับ หากคุณส่งข้อความจำนวนมากเพื่อแปล ระบบจะบล็อกการแปลครั้งต่อๆ ไปจนกว่าการแปลครั้งก่อนจะเสร็จสมบูรณ์
เพื่อการตอบกลับคำขอของคุณที่ดีที่สุด ให้จัดกลุ่มคำขอเหล่านั้นเข้าด้วยกันและเพิ่มอินเทอร์เฟซการโหลด เช่น สปินเนอร์ เพื่อสื่อให้เห็นว่าการแปลกำลังดำเนินการอยู่
ภาษาที่รองรับ
การใช้งาน Translator API ของ Chrome รองรับภาษาต่อไปนี้
| รหัส | ภาษา |
|---|---|
ar |
อาหรับ |
bg |
บัลแกเรีย |
bn |
เบงกอล |
cs |
เช็ก |
da |
เดนมาร์ก |
de |
เยอรมัน |
el |
กรีก |
en |
อังกฤษ |
es |
สเปน |
fi |
ฟินแลนด์ |
fr |
ฝรั่งเศส |
hi |
ภาษาฮินดู |
hr |
ภาษาโครเอเชีย |
hu |
ฮังการี |
id |
อินโดนีเซีย |
it |
อิตาลี |
iw |
ภาษาฮีบรู |
ja |
ญี่ปุ่น |
kn |
กันนาดา |
ko |
เกาหลี |
lt |
ลิทัวเนีย |
mr |
มราฐี |
nl |
ดัตช์ |
no |
นอร์เวย์ |
pl |
โปแลนด์ |
pt |
โปรตุเกส |
ro |
โรมาเนีย |
ru |
รัสเซีย |
sk |
สโลวัก |
sl |
สโลวีเนีย |
sv |
สวีเดน |
ta |
ทมิฬ |
te |
เตลูกู |
th |
ไทย |
tr |
ตุรกี |
uk |
ยูเครน |
vi |
เวียดนาม |
zh |
จีน |
zh-Hant |
จีน (ดั้งเดิม) |
สาธิต
คุณดู Translator API ที่ใช้ร่วมกับ Language Detector API ได้ใน สนามเด็กเล่นของ Translator และ Language Detector API
นโยบายสิทธิ์, iframe และ Web Worker
โดยค่าเริ่มต้น Translator API จะพร้อมใช้งานเฉพาะในหน้าต่างระดับบนสุดและ iframe ที่มีต้นทางเดียวกัน
คุณมอบสิทธิ์การเข้าถึง API ให้กับ iframe แบบข้ามต้นทางได้
โดยใช้แอตทริบิวต์ Permissions Policy
allow="" ดังนี้
<!--
The host site https://main.example.com can grant a cross-origin iframe
at https://cross-origin.example.com/ access to the Translator API by
setting the `allow="translator"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="translator"></iframe>
Translator API ไม่พร้อมใช้งานใน Web Worker เนื่องจากความซับซ้อนของ การสร้างเอกสารที่รับผิดชอบสำหรับแต่ละ Worker เพื่อตรวจสอบสถานะ นโยบายสิทธิ์
แชร์ความคิดเห็น
เราอยากเห็นสิ่งที่คุณกำลังสร้าง แชร์เว็บไซต์และเว็บแอปพลิเคชันของคุณกับเราบน X, YouTube และ LinkedIn
หากต้องการส่งความคิดเห็นเกี่ยวกับการใช้งานของ Chrome โปรดส่งรายงานข้อบกพร่อง หรือคำขอฟีเจอร์