เผยแพร่เมื่อวันที่ 12 ธันวาคม 2024 อัปเดตล่าสุดเมื่อวันที่ 20 พฤษภาคม 2025
AI API ในตัวช่วยให้เว็บแอปพลิเคชันของคุณ ทำงานที่ขับเคลื่อนด้วยระบบ AI ได้โดยไม่ต้องติดตั้งใช้งานหรือจัดการโมเดล AI ของตัวเอง เรากำลังพยายามที่จะ กำหนดมาตรฐาน API เหล่านี้ในเบราว์เซอร์ต่างๆ
โมเดลที่จำเป็น
Translator API และ Language Detector API ใช้โมเดลผู้เชี่ยวชาญ ส่วน API อื่นๆ ทั้งหมดใช้โมเดลภาษาที่ออกแบบมาให้ทำงานในเครื่องบนเดสก์ท็อปและแล็ปท็อป
Summarizer API, Writer API, Rewriter API และ Proofreader API รองรับเฉพาะโหมดข้อความเป็นข้อความ Prompt API มีความสามารถในสื่อหลากรูปแบบ
โมเดล Chrome
Chrome ใช้โมเดลภาษาพื้นฐานและโมเดลภาษาผู้เชี่ยวชาญ โมเดลเหล่านี้ไม่พร้อมใช้งานในอุปกรณ์เคลื่อนที่
ตั้งแต่ Chrome 149 เป็นต้นไป โมเดลจะรองรับภาษาอังกฤษ สเปน ญี่ปุ่น เยอรมัน และฝรั่งเศสสำหรับข้อความอินพุตและเอาต์พุต
ฮาร์ดแวร์ที่จำเป็น
นักพัฒนาแอปและผู้ใช้ที่ใช้ฟีเจอร์โดยใช้ API เหล่านี้ใน Chrome ต้องมีคุณสมบัติตรงตามข้อกำหนดต่อไปนี้ เบราว์เซอร์อื่นๆ อาจมีข้อกำหนดในการทำงานที่แตกต่างกัน
Language Detector API และ Translator 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 API ที่ใช้โมเดลพื้นฐานยังไม่รองรับ Chrome สำหรับ Android, iOS และ ChromeOS ในอุปกรณ์ที่ไม่ใช่ Chromebook Plus
- พื้นที่เก็บข้อมูล: พื้นที่ว่างอย่างน้อย 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
เริ่มสร้าง
มี AI API ในตัวหลายรายการที่พร้อมใช้งานใน ขั้นตอนการพัฒนาต่างๆ บางรายการอยู่ใน Chrome เวอร์ชันเสถียร บางรายการพร้อมใช้งานสำหรับ ผู้เข้าร่วมการทดลองใช้จากต้นทาง และบางรายการพร้อมใช้งานสำหรับ ผู้เข้าร่วมโปรแกรมทดลองใช้ก่อนเปิดตัวเท่านั้น
API แต่ละรายการมีชุดวิธีการของตัวเองสำหรับเริ่มต้นใช้งานและดาวน์โหลดโมเดล ทั้งสำหรับการสร้างต้นแบบในเครื่องและในสภาพแวดล้อมฮาร์ดแวร์และซอฟต์แวร์ด้วยช่วงทดลองใช้จากต้นทาง
- Translator API
- Language Detector API
- Summarizer API
- Writer API และ Rewriter API
- Proofreader API
- Prompt API
คุณสามารถใช้ API เหล่านี้ทั้งหมดเมื่อสร้างส่วนขยาย Chrome
การดาวน์โหลดโมเดล
API และโมเดลต่างๆ จะติดตั้งมาใน Chrome เมื่อผู้ใช้โต้ตอบกับ API เหล่านี้เป็นครั้งแรก ระบบจะต้องดาวน์โหลดโมเดลลงในเบราว์เซอร์
หากต้องการตรวจสอบว่า API พร้อมใช้งานหรือไม่ ให้เรียกใช้ฟังก์ชัน availability() แบบไม่พร้อมกัน ซึ่งจะแสดงผล Promise ที่มีค่าใดค่าหนึ่งต่อไปนี้
"unavailable": อุปกรณ์ของผู้ใช้หรือตัวเลือกเซสชันที่ขอไม่ได้รับการรองรับ อุปกรณ์อาจมีพลังงานหรือพื้นที่ในดิสก์ไม่เพียงพอ"downloadable": ต้องดาวน์โหลดเพิ่มเติมเพื่อสร้างเซสชัน ซึ่ง อาจรวมถึงโมเดลผู้เชี่ยวชาญ โมเดลภาษา หรือการปรับแต่ง คุณอาจต้องให้ผู้ใช้เปิดใช้งานเพื่อเรียกใช้create()"downloading": การดาวน์โหลดกำลังดำเนินการอยู่และต้องเสร็จสมบูรณ์ก่อนจึงจะใช้ เซสชันได้"available": คุณสามารถสร้างเซสชันได้ทันที
API บางรายการต้องใช้ตัวเลือกเพิ่มเติมเมื่อเรียกใช้ความพร้อมใช้งาน เช่น Prompt API ต้องประกาศการรองรับภาษาดังนี้
// Makes sure the model is available for English and Japanese input text,
// supports image input, and can generate English output.
await LanguageModel.availability({
expectedInputs: [{type: "text", languages: ["en", "ja"]}, {type: "image"}],
expectedOutputs: [{type: "text", languages: ["en"]}],
});
การเปิดใช้งานของผู้ใช้
หากอุปกรณ์รองรับ AI API ในตัว แต่ยังไม่ได้
ดาวน์โหลดโมเดล (นั่นคือเมื่อเรียกใช้ availability() จะแสดงผล "downloadable" หรือ
"downloading") ผู้ใช้ต้องโต้ตอบกับหน้าเว็บของคุณอย่างมีความหมายเพื่อให้
แอปพลิเคชันเริ่มเซสชันด้วย create()
ใช้ UserActivation.isActive
พร็อพเพอร์ตี้ เพื่อยืนยันว่าผู้ใช้โต้ตอบกับหน้าเว็บโดยตรงตั้งแต่หน้าเว็บ
โหลดเสร็จแล้ว การโต้ตอบนี้อาจรวมถึงการแตะ การคลิก การกดแป้น mousedown หรือ
เหตุการณ์การเปิดใช้งานอื่นๆ ที่คงอยู่
// Check for user activation.
if (navigator.userActivation.isActive) {
// Create an instance of a built-in API
}
ตัวอย่างเช่น สำหรับ Summarizer API คุณอาจ
ขอให้ผู้ใช้โต้ตอบกับปุ่มที่ระบุว่า "สรุป" เพื่อเปิดใช้งาน
Summarizer.create() หรือคุณสามารถสร้างตัวสรุปเมื่อผู้ใช้เริ่ม
พิมพ์ ซึ่งเป็นเหตุการณ์ keydown
แก้ปัญหา localhost
หากโมเดลทำงานไม่เป็นไปตามที่คาดไว้ ให้ทำตามขั้นตอนต่อไปนี้
- รีสตาร์ท Chrome
- ไปที่
chrome://on-device-internals - เลือกแท็บสถานะ Broker และตรวจสอบว่าไม่มีข้อผิดพลาด
- เปิดเครื่องมือสำหรับนักพัฒนาเว็บแล้วพิมพ์
LanguageModel.availability();ลงในคอนโซล ซึ่งควรแสดงผลavailable
หากจำเป็น ให้รอสักครู่แล้วทำขั้นตอนเหล่านี้ซ้ำ
กระบวนการมาตรฐาน
เรากำลังพยายามกำหนดมาตรฐาน API เหล่านี้ เพื่อให้ทำงานได้ในทุกเบราว์เซอร์ ซึ่งหมายความว่าเราได้เสนอ API ให้กับ ชุมชนแพลตฟอร์มเว็บ และย้าย API ไปยัง W3C Web Incubator Community Group เพื่อหารือเพิ่มเติม
เรากำลังขอความคิดเห็นจาก W3C, Mozilla และ WebKit สำหรับ API แต่ละรายการ
มีส่วนร่วมและแชร์ความคิดเห็น
หากคุณลองใช้ AI ในตัวและมีความคิดเห็น โปรดแจ้งให้เราทราบ
- ดู AI API ในตัวทั้งหมด
- เข้าร่วมโปรแกรมเวอร์ชันตัวอย่างทดลองใช้ก่อนเปิดตัว เพื่อดู API ใหม่ๆ ก่อนใครและรับสิทธิ์เข้าถึงรายชื่ออีเมลของเรา
- หากมีความคิดเห็นเกี่ยวกับการติดตั้งใช้งานของ Chrome โปรดรายงานข้อบกพร่องของ Chromium
- ดูข้อมูลเกี่ยวกับมาตรฐานเว็บ