Gemini Live API ช่วยให้สามารถโต้ตอบด้วยข้อความและเสียงแบบ 2 ทิศทางที่มีเวลาในการตอบสนองต่ำกับ Gemini เมื่อใช้ Live API คุณจะมอบประสบการณ์การสนทนาด้วยเสียงที่เหมือนมนุษย์อย่างเป็นธรรมชาติให้แก่ผู้ใช้ปลายทางได้ พร้อมทั้งสามารถขัดจังหวะคำตอบของโมเดลโดยใช้คำสั่งแบบข้อความหรือเสียง โมเดลนี้สามารถประมวลผลอินพุตข้อความและเสียง (วิดีโอจะพร้อมใช้งานเร็วๆ นี้) รวมถึงแสดงผลเป็นข้อความและเสียง
คุณสร้างต้นแบบด้วยพรอมต์และ Live API ใน Vertex AI Studio ได้
Live API เป็น API ที่มีสถานะซึ่งสร้างการเชื่อมต่อ WebSocket เพื่อตั้งค่าเซสชันระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์ Gemini โปรดดูรายละเอียดในLive APIเอกสารอ้างอิง
ก่อนเริ่มต้น
หากยังไม่ได้ดำเนินการ ให้อ่านคู่มือเริ่มต้นใช้งาน ซึ่งอธิบายวิธีตั้งค่าโปรเจ็กต์ Firebase, เชื่อมต่อแอปกับ Firebase, เพิ่ม SDK, เริ่มต้นบริการ Vertex AI และสร้างอินสแตนซ์ LiveModel
โปรดทราบว่าหากต้องการใช้ Live API
ตรวจสอบว่าคุณใช้ไลบรารี Firebase เวอร์ชันเหล่านี้เป็นอย่างน้อย
iOS+: ยังไม่รองรับ | Android: v16.3.0+ (BoM: v33.12.0+) | เว็บ: ยังไม่รองรับ | Flutter: v1.5.0+ (BoM: v3.9.0+)สร้างอินสแตนซ์
LiveModel
(ไม่ใช่อินสแตนซ์GenerativeModel
)
รุ่นที่รองรับความสามารถนี้
Live API รองรับโดย gemini-2.0-flash-live-preview-04-09
เท่านั้น (ไม่ใช่ gemini-2.0-flash
)
ใช้ฟีเจอร์มาตรฐานของ Live API
ส่วนนี้จะอธิบายวิธีใช้ฟีเจอร์มาตรฐานของ Live API โดยเฉพาะสําหรับสตรีมอินพุตและเอาต์พุตประเภทต่างๆ ดังนี้
ส่งและรับข้อความ
คุณสามารถส่งอินพุตข้อความที่สตรีม และรับเอาต์พุตข้อความที่สตรีม อย่าลืมสร้างอินสแตนซ์ liveModel
และตั้งค่ารูปแบบคำตอบเป็น Text
ดูวิธีเลือกโมเดลและตำแหน่ง (ไม่บังคับ) ที่เหมาะสมกับกรณีการใช้งานและแอป
ส่งและรับเสียง
คุณสามารถส่งอินพุตเสียงที่สตรีม และรับเอาต์พุตเสียงที่สตรีม อย่าลืมสร้างอินสแตนซ์ LiveModel
และตั้งค่ารูปแบบการตอบกลับเป็น Audio
ดูวิธีกำหนดค่าและปรับแต่งเสียงตอบกลับ (อ่านต่อในหน้านี้)
ดูวิธีเลือกโมเดลและตำแหน่ง (ไม่บังคับ) ที่เหมาะสมกับกรณีการใช้งานและแอป
สร้างประสบการณ์ที่มีส่วนร่วมและน่าสนใจยิ่งขึ้น
ส่วนนี้จะอธิบายวิธีสร้างและจัดการฟีเจอร์ของ Live API ที่ดึงดูดหรือโต้ตอบมากขึ้น
เปลี่ยนเสียงตอบกลับ
Live API ใช้ Chirp 3 เพื่อรองรับคำตอบด้วยเสียงสังเคราะห์ เมื่อใช้ Vertex AI in Firebase คุณจะส่งเสียงด้วยเสียง HD 5 เสียงและภาษา 31 ภาษาได้
หากไม่ได้ระบุเสียง ค่าเริ่มต้นจะเป็น Puck
หรือจะกำหนดค่าให้โมเดลตอบกลับด้วยเสียงต่อไปนี้ก็ได้
Aoede (หญิง)Charon (ชาย) |
Fenrir (ชาย)Kore (หญิง) |
Puck (ชาย) |
ดูตัวอย่างเสียงของเสียงเหล่านี้และรายการภาษาทั้งหมดที่มีให้บริการได้ที่ Chirp 3: เสียง HD
หากต้องการระบุเสียง ให้ตั้งค่าชื่อเสียงภายในออบเจ็กต์ speechConfig
โดยเป็นส่วนหนึ่งของการกำหนดค่าโมเดล
เพื่อให้ได้ผลลัพธ์ที่ดีที่สุดเมื่อแจ้งและกำหนดให้โมเดลตอบกลับเป็นภาษาที่ไม่ใช่ภาษาอังกฤษ ให้ใส่ข้อมูลต่อไปนี้ไว้ในคำสั่งของระบบ
RESPOND IN LANGUAGE. YOU MUST RESPOND UNMISTAKABLY IN LANGUAGE.
รักษาบริบทในเซสชันและคําขอต่างๆ
คุณใช้โครงสร้างแชทเพื่อรักษาบริบทในเซสชันและคําขอต่างๆ ได้ โปรดทราบว่าการดำเนินการนี้จะใช้ได้กับอินพุตและเอาต์พุตที่เป็นข้อความเท่านั้น
แนวทางนี้เหมาะสําหรับบริบทสั้นๆ คุณสามารถส่งการโต้ตอบแบบทีละขั้นตอนเพื่อแสดงลําดับเหตุการณ์ที่แน่นอน สำหรับบริบทที่ยาวขึ้น เราขอแนะนำให้ระบุสรุปข้อความเดียวเพื่อเพิ่มพื้นที่ในหน้าต่างบริบทสำหรับการโต้ตอบครั้งต่อๆ ไป
จัดการสิ่งรบกวน
Vertex AI in Firebase ยังไม่รองรับการจัดการการหยุดชะงัก โปรดกลับมาใหม่หลังจากนี้
ใช้การเรียกฟังก์ชัน (เครื่องมือ)
คุณกําหนดเครื่องมือ เช่น ฟังก์ชันที่ใช้ได้ เพื่อใช้กับ Live API ได้เช่นเดียวกับวิธีการสร้างเนื้อหามาตรฐาน ส่วนนี้จะอธิบายความแตกต่างเล็กน้อยเมื่อใช้ Live API กับการเรียกใช้ฟังก์ชัน ดูคำอธิบายและตัวอย่างการเรียกฟังก์ชันที่สมบูรณ์ได้ที่คู่มือการเรียกฟังก์ชัน
จากพรอมต์เดียว โมเดลสามารถสร้างการเรียกฟังก์ชันหลายรายการและโค้ดที่จําเป็นต่อเชื่อมเอาต์พุต โค้ดนี้จะทํางานในสภาพแวดล้อมแซนด์บ็อกซ์ ซึ่งจะสร้างข้อความ BidiGenerateContentToolCall
ตามมา การดำเนินการจะหยุดชั่วคราวจนกว่าผลลัพธ์ของการเรียกฟังก์ชันแต่ละรายการจะพร้อมใช้งาน ซึ่งช่วยให้การประมวลผลเป็นไปตามลำดับ
นอกจากนี้ การใช้ Live API กับการเรียกใช้ฟังก์ชันยังมีประสิทธิภาพอย่างยิ่งเนื่องจากโมเดลจะขอติดตามผลหรือชี้แจงข้อมูลจากผู้ใช้ได้ เช่น หากโมเดลมีข้อมูลไม่เพียงพอที่จะระบุค่าพารามิเตอร์ให้กับฟังก์ชันที่ต้องการเรียกใช้ โมเดลจะขอให้ผู้ใช้ให้ข้อมูลเพิ่มเติมหรือชี้แจงข้อมูลได้
ไคลเอ็นต์ควรตอบกลับด้วย BidiGenerateContentToolResponse
ข้อจำกัดและข้อกำหนด
โปรดคำนึงถึงข้อจำกัดและข้อกำหนดต่อไปนี้ของ Live API
การถอดเสียงเป็นคำ
Vertex AI in Firebase ยังไม่รองรับการถอดเสียง โปรดกลับมาใหม่หลังจากนี้
ภาษา
- ภาษาที่ป้อน: ดูรายการภาษาที่ป้อนซึ่งรองรับสำหรับรุ่น Gemini
- ภาษาเอาต์พุต: ดูรายการภาษาเอาต์พุตทั้งหมดที่มีได้ใน Chirp 3: เสียงคุณภาพสูง
รูปแบบเสียง
Live API รองรับรูปแบบเสียงต่อไปนี้
- รูปแบบเสียงอินพุต: เสียง PCM 16 บิตดิบที่ 16kHz แบบ Little-endian
- รูปแบบเสียงเอาต์พุต: เสียง PCM 16 บิตดิบที่ 24 kHz แบบ Little-endian
ขีดจำกัดอัตรา
โดยจะมีการจำกัดจำนวนพรอมต์ดังต่อไปนี้
- เซสชันพร้อมกัน 10 รายการต่อโปรเจ็กต์ Firebase
- โทเค็น 4 ล้านรายการต่อนาที
ระยะเวลาของเซสชัน
ระยะเวลาเริ่มต้นของเซสชันคือ 30 นาที เมื่อระยะเวลาของเซสชันเกินขีดจำกัด ระบบจะตัดการเชื่อมต่อ
โมเดลยังถูกจํากัดด้วยขนาดบริบทด้วย การส่งอินพุตจำนวนมากอาจส่งผลให้เซสชันสิ้นสุดลงก่อนเวลา
การตรวจจับกิจกรรมเสียงพูด (VAD)
โมเดลจะดำเนินการตรวจจับกิจกรรมเสียง (VAD) ในสตรีมอินพุตเสียงอย่างต่อเนื่องโดยอัตโนมัติ VAD จะเปิดใช้อยู่โดยค่าเริ่มต้น
การนับโทเค็น
คุณใช้ CountTokens
API กับ Live API ไม่ได้