ตัวตรวจจับภาษาจะให้คำตอบเสมอ แม้แต่กับเสียงไอ ควรเปิดการตรวจจับไว้สำหรับเสียงที่ชัดหรือเสียงที่มีหลายภาษาปนกัน และระบุภาษาเมื่อมีภาษาเดียวพูดท่ามกลางเสียงรบกวนหรือสำเนียงที่หนัก
ทุกการถอดเสียงเริ่มต้นด้วยคำถามที่ผู้อ่านไม่เคยเห็น: เสียงนี้เป็นภาษาอะไร หากตอบผิด ส่วนที่เหลือของกระบวนการจะทำงานหนักเพื่อสร้างข้อความที่ลื่นไหลแต่ไร้ความหมาย บทความนี้อธิบายว่าตัวตรวจจับภาษาฟังอะไร การตรวจจับทำงานอย่างไรกับเสียงสดและไฟล์ และเมื่อใดที่คุณควรระบุภาษาด้วยตัวเองจะดีกว่า
ตัวตรวจจับภาษาไม่ได้เข้าใจสิ่งที่ถูกพูด มันดูที่ตัวเสียงเอง ได้แก่ ชุดของพยัญชนะและสระ การเน้นเสียงในพยางค์ จังหวะของวลี และคำสั้นๆ ที่พบบ่อยซึ่งทุกภาษาต่างพึ่งพา ภาษาสเปนมีชุดสระและจังหวะของตัวเอง ส่วนภาษาดัตช์กับภาษาเยอรมันมีส่วนที่ใช้ร่วมกันมาก แต่แยกออกจากกันในไม่กี่เสียง เสียงพูดที่ชัดเพียงไม่กี่วินาทีมักเพียงพอที่จะแยกภาษาเหล่านี้ออกจากกันได้
เครื่องรู้จำเสียงหลายตัวทำเช่นนี้เป็นผลพลอยได้จากการรู้จำคำ โดยตัดสินภาษาจากช่วงต้นของเสียง ในรูปของความน่าจะเป็นสำหรับทุกภาษาที่มันรู้จัก การออกแบบนี้ทำให้เกิดผลสองอย่าง ความน่าจะเป็นรวมกันได้เสมอเท่ากับหนึ่ง จึงไม่มีคำตอบว่า "ไม่มีภาษา" เลย ดังนั้นความเงียบ เสียงไอ หรือเสียงดนตรีสั้นๆ จะได้ภาษาหนึ่งมาพร้อมคะแนนที่มั่นใจ และการตัดสินใจทำจากช่วงต้น ซึ่งเป็นตัวอย่างที่แย่ที่สุดที่จะเลือกได้ การบันทึกเสียงจำนวนมากเริ่มด้วยคำทักทาย ชื่อ และชื่อสถานที่ ซึ่งแทบไม่มีสัญญาณของภาษาเลย เช่น "Good morning, Maria, welcome to Berlin" ที่เป็นภาษาเยอรมันเกือบพอๆ กับภาษาอังกฤษ บางการบันทึกเริ่มด้วยความเงียบหรือเสียงไอ และเมื่อให้ตัวตรวจจับตัดสินจากตรงนั้น มันจะตัดสินอยู่ดีด้วยความมั่นใจ ทั้งที่ไม่มีอะไรให้ฟังเลย เสียงจริงก็เป็นเช่นนี้ได้เช่นกัน: คำเทศน์ภาษาโรมาเนียที่เริ่มด้วยเสียงรบกวนในห้องและ "Bună dimineața" อาจถูกได้ยินเป็นภาษาอิตาลี "Buona domenica" ได้อย่างง่ายดาย ด้วยความมั่นใจเต็มร้อย
ค่าใช้จ่ายของคำตอบที่ผิดก็แย่กว่าที่ฟังดู เครื่องรู้จำที่ถอดเสียงด้วยภาษาที่ผิดไม่ได้สะกดคำผิด แต่มัน "เขียนใหม่" "For God so loved the world" เมื่อถอดเป็นภาษาโรมาเนีย ได้ผลออกมาเป็น "Forgot to love the world" ส่วนประโยคภาษาโรมาเนีย "mândria slujește" เมื่อถอดเป็นภาษาอังกฤษ ได้ผลว่า "Pride serves" ซึ่งเป็นการแปลที่ถูกต้องของประโยคที่ไม่มีใครขอให้แปล คำต่างๆ ดูลื่นไหล และข้อความถอดเสียงไม่มีสัญญาณใดบอกว่ามีอะไรผิดปกติ ซึ่งทำให้ความผิดพลาดนี้มีค่าใช้จ่ายสูง
ตัวตรวจจับมักถูกหลอกด้วยห้าสิ่งต่อไปนี้มากที่สุด:
สิ่งใดในนี้ที่กระทบคุณ ขึ้นอยู่กับว่าเสียงกำลังส่งมาแบบสดหรือมีอยู่แล้วในไฟล์
สำหรับการถอดเสียงแบบสด ไม่มีการบันทึกทั้งหมดให้ดู เสียงมาถึงขณะที่ถูกพูด และข้อความถอดเสียงต้องมาถึงพร้อมกัน ดังนั้นภาษาจะถูกตรวจจับขณะที่ผู้พูดกำลังพูด และติดตามหากผู้พูดสลับภาษา นี่คือความหมายของหมายเหตุใต้สวิตช์ Spoken language เมื่อคุณเริ่มการถอดเสียงแบบสดในแดชบอร์ด ภาษาของผู้พูดจะถูกตรวจจับโดยอัตโนมัติ และผู้พูดอาจเปลี่ยนภาษาได้ทุกเมื่อ
การสลับภาษาจะได้รับการยืนยันก่อนนำไปใช้ ดังนั้นเสียงรบกวนเพียงช่วงเดียวจะไม่ดึงข้อความถอดเสียงไปยังอีกภาษาหนึ่ง จุดอ่อนอยู่ที่ช่วงเปิด: หากคำแรกเป็นคำทักทายที่มีเสียงรบกวน บรรทัดแรกอาจออกมาเป็นภาษาที่ผิด การระบุภาษาจะช่วยหลีกเลี่ยงปัญหานี้
ไฟล์ทำงานต่างออกไป เพราะการบันทึกทั้งหมดมีอยู่แล้ว
สำหรับไฟล์ เป็นปัญหาที่ง่ายกว่า เพราะไม่จำเป็นต้องเชื่อช่วงไม่กี่วินาทีแรก สำหรับไฟล์ ภาษาจะถูกตัดสินจากการบันทึกทั้งหมด ดังนั้นคำทักทายที่มีเสียงรบกวนตอนต้นจะไม่สามารถกำหนดผลได้
ภาษาของไฟล์ยังคงเป็นข้อสมมติในการทำงาน ไม่ใช่คำตัดสินสุดท้าย การบันทึกที่เปลี่ยนภาษาจริงๆ ระหว่างทาง เช่น การสัมภาษณ์ที่เปลี่ยนจากภาษาอังกฤษเป็นภาษาโรมาเนียในครึ่งหลัง จะถูกติดตามแทนที่จะถูกบังคับให้เป็นภาษาเดียว และการบันทึกที่สลับไปมาระหว่างภาษาตลอดทั้งไฟล์ก็ได้รับการจัดการเช่นกัน
ตัวตรวจจับที่ตัดสินเพียงครั้งเดียวและไม่หันกลับมาดูอีกเลย จะมั่นใจในจุดที่ผิด
ตัวตรวจจับแทบไม่ช่วยอะไรเลยเมื่อการบันทึกทั้งหมดมีเสียงรบกวน การตรวจจับเป็นค่าเริ่มต้นเพราะถูกต้องในส่วนใหญ่ของกรณี และไม่มีค่าใช้จ่ายสำหรับคุณ แต่สำหรับการบันทึกบางอย่าง คุณควรระบุภาษา และแดชบอร์ดจะบอกว่าอันไหนบ้าง: การระบุภาษาที่พูดจะช่วยเพิ่มความแม่นยำกับการบันทึกที่มีเสียงรบกวนและสำเนียงที่หนัก
นี่คือกรณีที่การตรวจจับมีข้อมูลน้อยที่สุดให้ทำงาน เสียงรบกวนตัดสัญญาณที่ตัวตรวจจับพึ่งพาออกไป สำเนียงที่หนักเลื่อนสัญญาณไปทางอีกภาษาหนึ่ง และคู่ภาษาที่ใกล้เคียงกันมีสัญญาณให้น้อยตั้งแต่แรก ผู้พูดภาษาอังกฤษที่มีสำเนียงโปรตุเกสหนักในห้องที่มีเสียงก้องอาจระบุได้ยากจากเสียงเพียงอย่างเดียว และหากตัวตรวจจับระบุผิด ข้อความถอดเสียงจะแปลงคำพูดภาษาอังกฤษให้เป็นภาษาโปรตุเกสตลอดช่วงเวลาที่ผิดนั้น การระบุภาษาจะตัดคำถามนี้ออกไป ความพยายามทั้งหมดจึงไปอยู่ที่คำพูด
รายการสั้นๆ สำหรับตัดสินใจ:
การระบุภาษาเป็นการตั้งค่าของการถอดเสียง ไม่ใช่ของบัญชีของคุณ คุณจึงตัดสินใจเป็นรายการบันทึกได้ ทุกสิ่งข้างต้นสรุปได้เป็นตัวเลือกหนึ่งใน API
ใน API spokenLanguage คือรหัสภาษาเช่น en หากไม่ใส่ ภาษาจะถูกตรวจจับ ค่านี้ปรากฏใน settings ของการถอดเสียงไฟล์หรือลิงก์ และในตัวเลือกของเซสชันแบบเรียลไทม์ การตรวจจับและการระบุภาษาครอบคลุม 100 ภาษาเดียวกัน ส่วนการแปลเป็นสูงสุด 10 ภาษาเป็นตัวเลือกแยกต่างหาก และไม่ขึ้นอยู่กับภาษาที่ตรวจพบหรือระบุไว้ การที่การแปลตามทันเสียงพูดได้อย่างไรเป็นหัวข้อของ ความหน่วงของการแปลสด อธิบายให้เข้าใจ
{ "name": "Board meeting", "settings": { "spokenLanguage": "en", "speakerLabels": "auto" } }
เซสชันแบบเรียลไทม์รับตัวเลือกเดียวกันนี้เมื่อสร้าง และคุณเปลี่ยนได้ขณะที่มีเสียงไหลเข้ามา เฟรมข้อความ session.update ที่มี spokenLanguage ใหม่จะมีผลกับเสียงพูดตั้งแต่นั้นเป็นต้นไป การตั้งค่าเป็น "" หรือ "auto" จะคืนเซสชันกลับไปสู่การตรวจจับ และรหัสที่ไม่รองรับจะถูกละเว้น มุมมองคำบรรยายที่มีปุ่มภาษาช่วยให้ผู้ควบคุมระบุภาษาได้ทันทีที่เห็นบรรทัดแรกที่ผิด โดยไม่ต้องเชื่อมต่อใหม่
{ "type": "session.update", "spokenLanguage": "ro" }
รายการรหัสพร้อมชื่อ อยู่ที่ GET /v1/languages ซึ่งไม่ต้องใช้คีย์ ขั้นตอนเรียลไทม์แบบเต็ม ตั้งแต่การสร้างเซสชันบนเซิร์ฟเวอร์ของคุณไปจนถึงการอ่านดราฟต์และคอมมิต อยู่ใน การถอดเสียงแบบเรียลไทม์ผ่าน WebSocket และเอกสารอ้างอิงแบบโต้ตอบอยู่ที่ {{api}}/docs ในแดชบอร์ด ตัวเลือกเดียวกันคือสวิตช์ Spoken language เมื่อคุณเริ่มการถอดเสียงใหม่ และคีย์สำหรับ API อยู่ภายใต้ Developers