{
  "aboutHtml": "<p>Universal-3.5 Pro เป็นโมเดลรู้จำเสียงพูดของ AssemblyAI สำหรับแปลงเสียงพูดที่บันทึกไว้เป็นข้อความ ในโปรไฟล์ Sync คลิปเสียงสั้นให้บทถอดเสียงสมบูรณ์ในคำตอบเดียว เหมาะกับข้อความเสียง การป้อนแบบกดเพื่อพูด และเทิร์นสนทนาแยกครั้งที่แอปพลิเคชันรู้แล้วว่าควรจบการบันทึกเมื่อใด</p><p>เตรียมเสียงเป็นคลิปที่มีขอบเขต ข้อกำหนด Sync ของ AssemblyAI รับความยาวตั้งแต่ 80 มิลลิวินาทีถึง 120 วินาที และขนาดไฟล์สูงสุด 40 MB รูปแบบที่รองรับคือ WAV หรือ PCM ดิบแบบ signed 16-bit little-endian เสียงเป็นโมโนหรือสเตอริโอได้ โดยสเตอริโอจะผสมลงภายใน อัตราสุ่มที่รองรับคือ 8, 16, 22.05, 24, 32, 44.1 และ 48 kHz ส่วนหัว WAV ระบุอัตราสุ่มและจำนวนช่องสัญญาณ ส่วน PCM ดิบต้องส่งค่าเหล่านั้นแยกในค่ากำหนดการถอดเสียง</p><p>บันทึกถ้อยคำให้ครบและรักษาช่วงต้นกับท้ายของคำพูด งานตัวอย่างที่มีประโยชน์คือข้อความเสียงฝ่ายสนับสนุนสินค้าสั้น ๆ ที่มีชื่อสินค้า ตัวระบุคำสั่งซื้อ และคำขอ เก็บคลิปต้นฉบับเพื่อให้ตรวจบทถอดเสียงกับรายละเอียดสำคัญเหล่านั้นได้ สำหรับการบันทึกยาวกว่า ให้เตรียมเวิร์กโฟลว์ที่เหมาะกับการถอดเสียงยาว แทนการถือว่าขีดจำกัดความยาวคลิปสั้นเป็นความจุเสียงของโมเดลโดยรวม</p><p>ผลลัพธ์มีบทถอดเสียงเต็ม รายการคำพร้อมค่าความเชื่อมั่นรายคำ และค่าความเชื่อมั่นรวมระหว่างศูนย์กับหนึ่ง อีกทั้งระบุความยาวเสียงที่ส่งและตัวระบุคำขอ ทำให้เก็บข้อความคู่กับคลิปต้นฉบับได้ ใช้ค่าความเชื่อมั่นรายคำหาช่วงที่ควรฟังตรวจ โดยเฉพาะชื่อ ตัวเลข และศัพท์เฉพาะด้านที่สำคัญต่อแอปพลิเคชัน</p><p>การประทับเวลารายคำเป็นตัวเลือกและปิดโดยค่าเริ่มต้น เมื่อขอ แต่ละคำที่จัดแนวได้อาจมีเวลาเริ่มและสิ้นสุดเป็นมิลลิวินาทีเทียบกับจุดเริ่มคลิป โปรไฟล์ผู้สร้างปล่อยค่าเหล่านั้นว่างเมื่อจัดแนวคำไม่ได้ แทนการแต่งเวลาโดยประมาณ ความแม่นยำของการประทับเวลาดีที่สุดสำหรับเสียงภาษาอังกฤษ เก็บสถานะเวลาที่ขาดไว้อย่างชัดเจนเมื่อเตรียมการเน้นคำ เวฟฟอร์มที่ค้นหาได้ หรือการจัดแนวคำบรรยาย และเปรียบเทียบข้อความกับเสียงก่อนใช้เป็นแทร็กคำบรรยายที่เสร็จแล้ว</p><p>พรอมต์บริบทอธิบายว่าเสียงบันทึกเกี่ยวกับอะไร สามารถระบุสาขา สถานการณ์ หรือรายละเอียดเฉพาะที่แอปพลิเคชันรู้อยู่แล้ว และมีความยาวสูงสุด 6000 อักขระ เริ่มด้วยคำอธิบายสั้นที่ตรงกับเสียง เช่น บทสนทนาช่วยเหลือทางเทคนิคเกี่ยวกับอุปกรณ์เฉพาะ พรอมต์ให้บริบทการรู้จำ ไม่ใช่คำขอให้เขียนข้อความผู้พูดใหม่เป็นเอกสารชนิดอื่น</p><p>รายการ keyterm แยกต่างหากช่วยโน้มการรู้จำไปยังคำศัพท์เฉพาะ โปรไฟล์ Sync รับสูงสุด 100 คำศัพท์ และรวม 8000 อักขระทั้งรายการ ใช้การสะกดตรงสำหรับชื่อที่ไม่ทั่วไป ตัวย่อ หรือศัพท์สินค้า และไม่ใส่คำทั่วไปที่รู้จำได้ดีอยู่แล้ว รายการคำที่ใหญ่หรือไม่จำเป็นอาจทำให้แก้เกิน จึงควรเน้นคำสำคัญในเสียง สามารถใช้คำอธิบายบริบทกับรายการคำศัพท์ร่วมกันได้</p><p>บทสนทนาก่อนหน้าช่วยตีความคำตอบสั้นได้เช่นกัน ส่งถ้อยคำก่อนหน้าตามลำดับเวลา จากเก่าสุดถึงใหม่สุด โดยเสียงปัจจุบันยังเป็นเทิร์นที่กำลังถอด โควตาบริบทตามเอกสารคือ 500 เทิร์นหรือรวม 16,000 อักขระ หากเกินเพดานเหล่านี้หรือบริบทโมเดลที่มี รายการเก่าสุดจะถูกลบก่อน มีประโยชน์เมื่อคำตอบสั้นมีตัวระบุหรือการอ้างถึงที่ต้องอาศัยคำถามก่อนหน้าเพื่อเข้าใจความหมาย</p><p>การเลือกภาษาช่วยกำกับการรู้จำไปยังภาษาที่คาดหวังหนึ่งภาษาหรือหลายภาษา อินเทอร์เฟซ Sync ปัจจุบันรับรหัสภาษา 32 รหัส และใช้ภาษาอังกฤษโดยค่าเริ่มต้นเมื่อไม่ส่งตัวเลือก สำหรับเสียงสลับภาษา ให้ระบุภาษาที่คาดหวัง พรอมต์บริบทกำหนดเองแทนที่ค่าเริ่มต้นที่ระบบจัดการและมีผลเหนือการกำกับด้วยรหัสภาษาแยก ดังนั้นให้ระบุภาษาที่คาดหวังในพรอมต์นั้นเมื่อจำเป็นต้องมีทั้งบริบทภาษาและสถานการณ์ คงบทถอดเสียงเป็นภาษาที่พูดจริง แทนการถือว่าการถอดเสียงเป็นคำสั่งแปล</p><p>โมเดลยังปรากฏในเวิร์กโฟลว์ถอดเสียงอื่นของ AssemblyAI แต่ข้อกำหนดคลิปสั้นและฟิลด์ผลของโปรไฟล์ Sync เป็นของอินเทอร์เฟซนี้โดยเฉพาะ เวิร์กโฟลว์ Dictation ของผู้สร้างเพิ่มขั้นตอนปรับข้อความแยกต่างหาก บทถอดเสียงกับข้อความเขียนใหม่เป็นคนละชิ้นงาน เก็บเสียงพูดที่รู้จำไว้หากขั้นตอนแก้ไขหรือสรุปภายหลังสร้างฉบับปรับปรุง เพื่อให้ถ้อยคำต้นฉบับยังอยู่สำหรับเปรียบเทียบ</p><p>สิ่งส่งมอบที่มีประโยชน์ ได้แก่ ข้อความเสียงที่ถอดแล้ว เทิร์นสมบูรณ์สำหรับผู้ช่วย ข้อความจากเสียงสั้นที่ค้นหาได้ หรือรายการคำพร้อมเวลาสำหรับอินเทอร์เฟซตรวจทาน ตรวจคำที่มีผลสำคัญกับเสียง เก็บการจัดแนวที่ขาด และคงลิงก์ระหว่างคลิปกับข้อความที่ส่งคืน ผลการรู้จำให้บทถอดเสียงที่อิงต้นฉบับแก่ขั้นตอนแอปพลิเคชันถัดไป ส่วนการตอบคำขอหรือแก้ข้อความเป็นงานของเวิร์กโฟลว์รอบนอก</p>",
  "aboutText": "Universal-3.5 Pro เป็นโมเดลรู้จำเสียงพูดของ AssemblyAI สำหรับแปลงเสียงพูดที่บันทึกไว้เป็นข้อความ ในโปรไฟล์ Sync คลิปเสียงสั้นให้บทถอดเสียงสมบูรณ์ในคำตอบเดียว เหมาะกับข้อความเสียง การป้อนแบบกดเพื่อพูด และเทิร์นสนทนาแยกครั้งที่แอปพลิเคชันรู้แล้วว่าควรจบการบันทึกเมื่อใด\n\nเตรียมเสียงเป็นคลิปที่มีขอบเขต ข้อกำหนด Sync ของ AssemblyAI รับความยาวตั้งแต่ 80 มิลลิวินาทีถึง 120 วินาที และขนาดไฟล์สูงสุด 40 MB รูปแบบที่รองรับคือ WAV หรือ PCM ดิบแบบ signed 16-bit little-endian เสียงเป็นโมโนหรือสเตอริโอได้ โดยสเตอริโอจะผสมลงภายใน อัตราสุ่มที่รองรับคือ 8, 16, 22.05, 24, 32, 44.1 และ 48 kHz ส่วนหัว WAV ระบุอัตราสุ่มและจำนวนช่องสัญญาณ ส่วน PCM ดิบต้องส่งค่าเหล่านั้นแยกในค่ากำหนดการถอดเสียง\n\nบันทึกถ้อยคำให้ครบและรักษาช่วงต้นกับท้ายของคำพูด งานตัวอย่างที่มีประโยชน์คือข้อความเสียงฝ่ายสนับสนุนสินค้าสั้น ๆ ที่มีชื่อสินค้า ตัวระบุคำสั่งซื้อ และคำขอ เก็บคลิปต้นฉบับเพื่อให้ตรวจบทถอดเสียงกับรายละเอียดสำคัญเหล่านั้นได้ สำหรับการบันทึกยาวกว่า ให้เตรียมเวิร์กโฟลว์ที่เหมาะกับการถอดเสียงยาว แทนการถือว่าขีดจำกัดความยาวคลิปสั้นเป็นความจุเสียงของโมเดลโดยรวม\n\nผลลัพธ์มีบทถอดเสียงเต็ม รายการคำพร้อมค่าความเชื่อมั่นรายคำ และค่าความเชื่อมั่นรวมระหว่างศูนย์กับหนึ่ง อีกทั้งระบุความยาวเสียงที่ส่งและตัวระบุคำขอ ทำให้เก็บข้อความคู่กับคลิปต้นฉบับได้ ใช้ค่าความเชื่อมั่นรายคำหาช่วงที่ควรฟังตรวจ โดยเฉพาะชื่อ ตัวเลข และศัพท์เฉพาะด้านที่สำคัญต่อแอปพลิเคชัน\n\nการประทับเวลารายคำเป็นตัวเลือกและปิดโดยค่าเริ่มต้น เมื่อขอ แต่ละคำที่จัดแนวได้อาจมีเวลาเริ่มและสิ้นสุดเป็นมิลลิวินาทีเทียบกับจุดเริ่มคลิป โปรไฟล์ผู้สร้างปล่อยค่าเหล่านั้นว่างเมื่อจัดแนวคำไม่ได้ แทนการแต่งเวลาโดยประมาณ ความแม่นยำของการประทับเวลาดีที่สุดสำหรับเสียงภาษาอังกฤษ เก็บสถานะเวลาที่ขาดไว้อย่างชัดเจนเมื่อเตรียมการเน้นคำ เวฟฟอร์มที่ค้นหาได้ หรือการจัดแนวคำบรรยาย และเปรียบเทียบข้อความกับเสียงก่อนใช้เป็นแทร็กคำบรรยายที่เสร็จแล้ว\n\nพรอมต์บริบทอธิบายว่าเสียงบันทึกเกี่ยวกับอะไร สามารถระบุสาขา สถานการณ์ หรือรายละเอียดเฉพาะที่แอปพลิเคชันรู้อยู่แล้ว และมีความยาวสูงสุด 6000 อักขระ เริ่มด้วยคำอธิบายสั้นที่ตรงกับเสียง เช่น บทสนทนาช่วยเหลือทางเทคนิคเกี่ยวกับอุปกรณ์เฉพาะ พรอมต์ให้บริบทการรู้จำ ไม่ใช่คำขอให้เขียนข้อความผู้พูดใหม่เป็นเอกสารชนิดอื่น\n\nรายการ keyterm แยกต่างหากช่วยโน้มการรู้จำไปยังคำศัพท์เฉพาะ โปรไฟล์ Sync รับสูงสุด 100 คำศัพท์ และรวม 8000 อักขระทั้งรายการ ใช้การสะกดตรงสำหรับชื่อที่ไม่ทั่วไป ตัวย่อ หรือศัพท์สินค้า และไม่ใส่คำทั่วไปที่รู้จำได้ดีอยู่แล้ว รายการคำที่ใหญ่หรือไม่จำเป็นอาจทำให้แก้เกิน จึงควรเน้นคำสำคัญในเสียง สามารถใช้คำอธิบายบริบทกับรายการคำศัพท์ร่วมกันได้\n\nบทสนทนาก่อนหน้าช่วยตีความคำตอบสั้นได้เช่นกัน ส่งถ้อยคำก่อนหน้าตามลำดับเวลา จากเก่าสุดถึงใหม่สุด โดยเสียงปัจจุบันยังเป็นเทิร์นที่กำลังถอด โควตาบริบทตามเอกสารคือ 500 เทิร์นหรือรวม 16,000 อักขระ หากเกินเพดานเหล่านี้หรือบริบทโมเดลที่มี รายการเก่าสุดจะถูกลบก่อน มีประโยชน์เมื่อคำตอบสั้นมีตัวระบุหรือการอ้างถึงที่ต้องอาศัยคำถามก่อนหน้าเพื่อเข้าใจความหมาย\n\nการเลือกภาษาช่วยกำกับการรู้จำไปยังภาษาที่คาดหวังหนึ่งภาษาหรือหลายภาษา อินเทอร์เฟซ Sync ปัจจุบันรับรหัสภาษา 32 รหัส และใช้ภาษาอังกฤษโดยค่าเริ่มต้นเมื่อไม่ส่งตัวเลือก สำหรับเสียงสลับภาษา ให้ระบุภาษาที่คาดหวัง พรอมต์บริบทกำหนดเองแทนที่ค่าเริ่มต้นที่ระบบจัดการและมีผลเหนือการกำกับด้วยรหัสภาษาแยก ดังนั้นให้ระบุภาษาที่คาดหวังในพรอมต์นั้นเมื่อจำเป็นต้องมีทั้งบริบทภาษาและสถานการณ์ คงบทถอดเสียงเป็นภาษาที่พูดจริง แทนการถือว่าการถอดเสียงเป็นคำสั่งแปล\n\nโมเดลยังปรากฏในเวิร์กโฟลว์ถอดเสียงอื่นของ AssemblyAI แต่ข้อกำหนดคลิปสั้นและฟิลด์ผลของโปรไฟล์ Sync เป็นของอินเทอร์เฟซนี้โดยเฉพาะ เวิร์กโฟลว์ Dictation ของผู้สร้างเพิ่มขั้นตอนปรับข้อความแยกต่างหาก บทถอดเสียงกับข้อความเขียนใหม่เป็นคนละชิ้นงาน เก็บเสียงพูดที่รู้จำไว้หากขั้นตอนแก้ไขหรือสรุปภายหลังสร้างฉบับปรับปรุง เพื่อให้ถ้อยคำต้นฉบับยังอยู่สำหรับเปรียบเทียบ\n\nสิ่งส่งมอบที่มีประโยชน์ ได้แก่ ข้อความเสียงที่ถอดแล้ว เทิร์นสมบูรณ์สำหรับผู้ช่วย ข้อความจากเสียงสั้นที่ค้นหาได้ หรือรายการคำพร้อมเวลาสำหรับอินเทอร์เฟซตรวจทาน ตรวจคำที่มีผลสำคัญกับเสียง เก็บการจัดแนวที่ขาด และคงลิงก์ระหว่างคลิปกับข้อความที่ส่งคืน ผลการรู้จำให้บทถอดเสียงที่อิงต้นฉบับแก่ขั้นตอนแอปพลิเคชันถัดไป ส่วนการตอบคำขอหรือแก้ข้อความเป็นงานของเวิร์กโฟลว์รอบนอก",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "831201c9516bb3a5956d64ab4d56f0c550b1c698d029a99074d5f47bc299493c",
    "module_sha256": "ee9dc1c50b1e6a8fb7fa062030fcb4646b9aaaeb08be513b723a5a92a7290f06",
    "raw_model_unchanged": true,
    "schema": "ailoot-native-model-editorial-v1"
  },
  "locale": "th",
  "methods": [
    {
      "html": "<div class=\"sheet-head\"><span class=\"mav\" aria-hidden=\"true\">•</span><h2 id=\"sheet-title\">AssemblyAI: Universal-3.5 Pro</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"ปิด\">×</button></div><div class=\"idline\"><span>AssemblyAI /</span><code>assemblyai/universal-3-5-pro</code><button type=\"button\" id=\"copy-id\">คัดลอก ID</button></div><nav class=\"card-jump-nav\" aria-label=\"ส่วนต่าง ๆ ของการ์ดโมเดล\"><button type=\"button\" data-card-jump=\"overview\">เริ่มต้น</button><button type=\"button\" data-card-jump=\"methods\">อินพุตและเมธอด</button><button type=\"button\" data-card-jump=\"pricing\">ราคา</button><button type=\"button\" data-card-jump=\"examples\">ตัวอย่าง</button><button type=\"button\" data-card-jump=\"results\">ผลลัพธ์</button><button type=\"button\" data-card-jump=\"aliases\">ชื่ออื่น</button></nav><div class=\"card-method-tabs\" role=\"tablist\" aria-label=\"เมธอด API\"><button type=\"button\" role=\"tab\" tabindex=\"0\" aria-controls=\"card-method-content\" aria-selected=\"true\" id=\"card-method-tab-0\" data-card-method=\"Ultra|transcriptions|/v1/audio/transcriptions|assemblyai%2Funiversal-3-5-pro\">การรู้จำ</button></div><div id=\"card-method-content\" role=\"tabpanel\" aria-labelledby=\"card-method-tab-0\"><section class=\"card-section\" data-card-section=\"overview\"><h3 tabindex=\"-1\">เริ่มต้น</h3><p class=\"mdesc-full\">Universal-3.5 Pro เป็นโมเดลแปลงเสียงเป็นข้อความของ AssemblyAI สำหรับเปลี่ยนคลิปเสียงสั้นเป็นบทถอดเสียงสมบูรณ์ในคำตอบเดียว โปรไฟล์ Sync เพิ่มค่าความเชื่อมั่นรายคำ การประทับเวลารายคำที่เลือกเปิดได้ คำใบ้ศัพท์ และบริบทบทสนทนาก่อนหน้า สำหรับการป้อนด้วยเสียงและเวิร์กโฟลว์กดเพื่อพูด</p><dl class=\"card-io\" data-card-io><div><dt>อินพุตที่รองรับ</dt><dd>เสียง</dd></div><div><dt>ผลลัพธ์</dt><dd>ข้อความ</dd></div></dl><details class=\"card-about\"><summary>เกี่ยวกับโมเดล</summary><p class=\"note-s\" data-model-method-boundary>คำอธิบายนี้ครอบคลุมความสามารถของโมเดล อินพุต เอาต์พุต และตัวเลือกที่ใช้ได้ใน Ailoot แสดงด้านล่างตามเมธอดที่เลือก</p><div class=\"mabout\" id=\"m-about\"><p>Universal-3.5 Pro เป็นโมเดลรู้จำเสียงพูดของ AssemblyAI สำหรับแปลงเสียงพูดที่บันทึกไว้เป็นข้อความ ในโปรไฟล์ Sync คลิปเสียงสั้นให้บทถอดเสียงสมบูรณ์ในคำตอบเดียว เหมาะกับข้อความเสียง การป้อนแบบกดเพื่อพูด และเทิร์นสนทนาแยกครั้งที่แอปพลิเคชันรู้แล้วว่าควรจบการบันทึกเมื่อใด</p><p>เตรียมเสียงเป็นคลิปที่มีขอบเขต ข้อกำหนด Sync ของ AssemblyAI รับความยาวตั้งแต่ 80 มิลลิวินาทีถึง 120 วินาที และขนาดไฟล์สูงสุด 40 MB รูปแบบที่รองรับคือ WAV หรือ PCM ดิบแบบ signed 16-bit little-endian เสียงเป็นโมโนหรือสเตอริโอได้ โดยสเตอริโอจะผสมลงภายใน อัตราสุ่มที่รองรับคือ 8, 16, 22.05, 24, 32, 44.1 และ 48 kHz ส่วนหัว WAV ระบุอัตราสุ่มและจำนวนช่องสัญญาณ ส่วน PCM ดิบต้องส่งค่าเหล่านั้นแยกในค่ากำหนดการถอดเสียง</p><p>บันทึกถ้อยคำให้ครบและรักษาช่วงต้นกับท้ายของคำพูด งานตัวอย่างที่มีประโยชน์คือข้อความเสียงฝ่ายสนับสนุนสินค้าสั้น ๆ ที่มีชื่อสินค้า ตัวระบุคำสั่งซื้อ และคำขอ เก็บคลิปต้นฉบับเพื่อให้ตรวจบทถอดเสียงกับรายละเอียดสำคัญเหล่านั้นได้ สำหรับการบันทึกยาวกว่า ให้เตรียมเวิร์กโฟลว์ที่เหมาะกับการถอดเสียงยาว แทนการถือว่าขีดจำกัดความยาวคลิปสั้นเป็นความจุเสียงของโมเดลโดยรวม</p><p>ผลลัพธ์มีบทถอดเสียงเต็ม รายการคำพร้อมค่าความเชื่อมั่นรายคำ และค่าความเชื่อมั่นรวมระหว่างศูนย์กับหนึ่ง อีกทั้งระบุความยาวเสียงที่ส่งและตัวระบุคำขอ ทำให้เก็บข้อความคู่กับคลิปต้นฉบับได้ ใช้ค่าความเชื่อมั่นรายคำหาช่วงที่ควรฟังตรวจ โดยเฉพาะชื่อ ตัวเลข และศัพท์เฉพาะด้านที่สำคัญต่อแอปพลิเคชัน</p><p>การประทับเวลารายคำเป็นตัวเลือกและปิดโดยค่าเริ่มต้น เมื่อขอ แต่ละคำที่จัดแนวได้อาจมีเวลาเริ่มและสิ้นสุดเป็นมิลลิวินาทีเทียบกับจุดเริ่มคลิป โปรไฟล์ผู้สร้างปล่อยค่าเหล่านั้นว่างเมื่อจัดแนวคำไม่ได้ แทนการแต่งเวลาโดยประมาณ ความแม่นยำของการประทับเวลาดีที่สุดสำหรับเสียงภาษาอังกฤษ เก็บสถานะเวลาที่ขาดไว้อย่างชัดเจนเมื่อเตรียมการเน้นคำ เวฟฟอร์มที่ค้นหาได้ หรือการจัดแนวคำบรรยาย และเปรียบเทียบข้อความกับเสียงก่อนใช้เป็นแทร็กคำบรรยายที่เสร็จแล้ว</p><p>พรอมต์บริบทอธิบายว่าเสียงบันทึกเกี่ยวกับอะไร สามารถระบุสาขา สถานการณ์ หรือรายละเอียดเฉพาะที่แอปพลิเคชันรู้อยู่แล้ว และมีความยาวสูงสุด 6000 อักขระ เริ่มด้วยคำอธิบายสั้นที่ตรงกับเสียง เช่น บทสนทนาช่วยเหลือทางเทคนิคเกี่ยวกับอุปกรณ์เฉพาะ พรอมต์ให้บริบทการรู้จำ ไม่ใช่คำขอให้เขียนข้อความผู้พูดใหม่เป็นเอกสารชนิดอื่น</p><p>รายการ keyterm แยกต่างหากช่วยโน้มการรู้จำไปยังคำศัพท์เฉพาะ โปรไฟล์ Sync รับสูงสุด 100 คำศัพท์ และรวม 8000 อักขระทั้งรายการ ใช้การสะกดตรงสำหรับชื่อที่ไม่ทั่วไป ตัวย่อ หรือศัพท์สินค้า และไม่ใส่คำทั่วไปที่รู้จำได้ดีอยู่แล้ว รายการคำที่ใหญ่หรือไม่จำเป็นอาจทำให้แก้เกิน จึงควรเน้นคำสำคัญในเสียง สามารถใช้คำอธิบายบริบทกับรายการคำศัพท์ร่วมกันได้</p><p>บทสนทนาก่อนหน้าช่วยตีความคำตอบสั้นได้เช่นกัน ส่งถ้อยคำก่อนหน้าตามลำดับเวลา จากเก่าสุดถึงใหม่สุด โดยเสียงปัจจุบันยังเป็นเทิร์นที่กำลังถอด โควตาบริบทตามเอกสารคือ 500 เทิร์นหรือรวม 16,000 อักขระ หากเกินเพดานเหล่านี้หรือบริบทโมเดลที่มี รายการเก่าสุดจะถูกลบก่อน มีประโยชน์เมื่อคำตอบสั้นมีตัวระบุหรือการอ้างถึงที่ต้องอาศัยคำถามก่อนหน้าเพื่อเข้าใจความหมาย</p><p>การเลือกภาษาช่วยกำกับการรู้จำไปยังภาษาที่คาดหวังหนึ่งภาษาหรือหลายภาษา อินเทอร์เฟซ Sync ปัจจุบันรับรหัสภาษา 32 รหัส และใช้ภาษาอังกฤษโดยค่าเริ่มต้นเมื่อไม่ส่งตัวเลือก สำหรับเสียงสลับภาษา ให้ระบุภาษาที่คาดหวัง พรอมต์บริบทกำหนดเองแทนที่ค่าเริ่มต้นที่ระบบจัดการและมีผลเหนือการกำกับด้วยรหัสภาษาแยก ดังนั้นให้ระบุภาษาที่คาดหวังในพรอมต์นั้นเมื่อจำเป็นต้องมีทั้งบริบทภาษาและสถานการณ์ คงบทถอดเสียงเป็นภาษาที่พูดจริง แทนการถือว่าการถอดเสียงเป็นคำสั่งแปล</p><p>โมเดลยังปรากฏในเวิร์กโฟลว์ถอดเสียงอื่นของ AssemblyAI แต่ข้อกำหนดคลิปสั้นและฟิลด์ผลของโปรไฟล์ Sync เป็นของอินเทอร์เฟซนี้โดยเฉพาะ เวิร์กโฟลว์ Dictation ของผู้สร้างเพิ่มขั้นตอนปรับข้อความแยกต่างหาก บทถอดเสียงกับข้อความเขียนใหม่เป็นคนละชิ้นงาน เก็บเสียงพูดที่รู้จำไว้หากขั้นตอนแก้ไขหรือสรุปภายหลังสร้างฉบับปรับปรุง เพื่อให้ถ้อยคำต้นฉบับยังอยู่สำหรับเปรียบเทียบ</p><p>สิ่งส่งมอบที่มีประโยชน์ ได้แก่ ข้อความเสียงที่ถอดแล้ว เทิร์นสมบูรณ์สำหรับผู้ช่วย ข้อความจากเสียงสั้นที่ค้นหาได้ หรือรายการคำพร้อมเวลาสำหรับอินเทอร์เฟซตรวจทาน ตรวจคำที่มีผลสำคัญกับเสียง เก็บการจัดแนวที่ขาด และคงลิงก์ระหว่างคลิปกับข้อความที่ส่งคืน ผลการรู้จำให้บทถอดเสียงที่อิงต้นฉบับแก่ขั้นตอนแอปพลิเคชันถัดไป ส่วนการตอบคำขอหรือแก้ข้อความเป็นงานของเวิร์กโฟลว์รอบนอก</p></div></details></section><section class=\"card-section\" data-card-section=\"methods\"><h3 tabindex=\"-1\">ใช้งานได้ใน Ailoot · อินพุตและเมธอด</h3><details class=\"card-method\" open><summary><b>Ailoot Ultra · การถอดเสียง</b> <code>POST /v1/audio/transcriptions</code></summary><dl class=\"method-capabilities\"><div><dt>ขาเข้า</dt><dd><code>audio</code></dd></div><div><dt>ขาออก</dt><dd><code>text</code></dd></div></dl><div class=\"tw\" data-card-parameters data-typed-parameters><table><thead><tr><th>ฟิลด์</th><th>ประเภท</th><th>ข้อกำหนด</th><th>ค่าและข้อจำกัด</th><th>ค่าเริ่มต้น</th></tr></thead><tbody><tr><th data-cell-label=\"ฟิลด์\" scope=\"row\"><span class=\"card-cell-label\">ฟิลด์</span><code class=\"card-field-name\">model</code></th><td data-cell-label=\"ประเภท\" data-field-type><span class=\"card-cell-label\">ประเภท</span><code>string</code></td><td data-cell-label=\"ข้อกำหนด\"><span class=\"card-cell-label\">ข้อกำหนด</span>จำเป็น</td><td data-cell-label=\"ค่าและข้อจำกัด\"><span class=\"card-cell-label\">ค่าและข้อจำกัด</span><div>assemblyai/universal-3-5-pro</div></td><td data-cell-label=\"ค่าเริ่มต้น\" data-default=\"unspecified\"><span class=\"card-cell-label\">ค่าเริ่มต้น</span>—</td></tr><tr><th data-cell-label=\"ฟิลด์\" scope=\"row\"><span class=\"card-cell-label\">ฟิลด์</span><code class=\"card-field-name\">input_audio</code></th><td data-cell-label=\"ประเภท\" data-field-type><span class=\"card-cell-label\">ประเภท</span><code>object</code></td><td data-cell-label=\"ข้อกำหนด\"><span class=\"card-cell-label\">ข้อกำหนด</span>จำเป็น</td><td data-cell-label=\"ค่าและข้อจำกัด\"><span class=\"card-cell-label\">ค่าและข้อจำกัด</span></td><td data-cell-label=\"ค่าเริ่มต้น\" data-default=\"unspecified\"><span class=\"card-cell-label\">ค่าเริ่มต้น</span>—</td></tr></tbody></table></div><details class=\"note-s\" data-method-contract><summary>พารามิเตอร์และวงจรการทำงานของเมธอด</summary><div class=\"tw\" data-card-table=\"contract\"><table><thead><tr><th>พารามิเตอร์</th><th>ข้อกำหนด</th></tr></thead><tbody><tr><th data-cell-label=\"พารามิเตอร์\" scope=\"row\"><span class=\"card-cell-label\">พารามิเตอร์</span><code>content_type</code></th><td data-cell-label=\"ข้อกำหนด\"><span class=\"card-cell-label\">ข้อกำหนด</span>application/json</td></tr><tr><th data-cell-label=\"พารามิเตอร์\" scope=\"row\"><span class=\"card-cell-label\">พารามิเตอร์</span><code>required</code></th><td data-cell-label=\"ข้อกำหนด\"><span class=\"card-cell-label\">ข้อกำหนด</span>model, input_audio</td></tr><tr><th data-cell-label=\"พารามิเตอร์\" scope=\"row\"><span class=\"card-cell-label\">พารามิเตอร์</span><code>material_types</code></th><td data-cell-label=\"ข้อกำหนด\"><span class=\"card-cell-label\">ข้อกำหนด</span>audio</td></tr><tr><th data-cell-label=\"พารามิเตอร์\" scope=\"row\"><span class=\"card-cell-label\">พารามิเตอร์</span><code>material_conditions</code></th><td data-cell-label=\"ข้อกำหนด\"><span class=\"card-cell-label\">ข้อกำหนด</span>ตัวอย่างนี้อ่านไฟล์ PCM WAV จริงของคุณที่ไม่ว่าง เข้ารหัสไบต์ทั้งหมดของไฟล์เป็น base64 และส่ง input_audio.format เป็น wav</td></tr></tbody></table></div><p>วงจรการทำงาน: <code>synchronous_result_then_owned_library</code></p><p class=\"note-s\"><code>GET /v1/media/tasks/{task_id}</code> · task_id ที่ตรงตามบันทึกสื่อเดิมซึ่งเป็นของคุณ</p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}/content</code></p><p class=\"note-s\"><code>GET /v1/media/assets</code></p><p class=\"note-s\"><code>GET /v1/media/assets/{asset_id}</code></p></details></details></section><section class=\"card-section\" data-card-section=\"pricing\"><h3 tabindex=\"-1\">ราคา</h3><div data-native-semantic-method=\"v1\" data-tariff-reference-only><p class=\"note-s\" data-rate-support-note>ข้อมูลอัตราราคาไม่ได้เพิ่มตัวเลือกคำขอ พารามิเตอร์ที่รองรับระบุไว้สำหรับเมธอดที่เลือก</p><dl data-price-conditions><dt>โหมดรวดเร็ว</dt><dd>ไม่ได้ระบุ <span class=\"note-s\">เมื่อเลือกโหมดรวดเร็ว</span></dd><dt>โหมดยืดหยุ่น</dt><dd>ไม่ได้ระบุ <span class=\"note-s\">เมื่อเลือกโหมด flex</span></dd><dt>ระดับการใช้เหตุผลสูงสุด</dt><dd>ไม่ได้ระบุ <span class=\"note-s\">เมื่อใช้การปรับตามค่าเริ่มต้น (default) สำหรับระดับการใช้เหตุผลสูงสุด</span></dd></dl></div><div data-declared-tariff-pricing><h4>อัตราค่าบริการ Ailoot</h4><h4>ราคาตามการตั้งค่า</h4><p class=\"note-s\">เทียบค่าบริการแต่ละรายการกับเงื่อนไขที่แสดง เลือกใช้อัตราเดียวสำหรับแต่ละชุดการตั้งค่าที่เป็นตัวเลือกทดแทนกัน</p><div class=\"tw\" data-pricing-profiles><table><thead><tr><th>การตั้งค่า</th><th>ตารางอัตราค่าบริการ</th><th>หน่วยคิดค่าบริการ</th><th>ค่าบริการ</th></tr></thead><tbody><tr><th data-cell-label=\"การตั้งค่า\" scope=\"row\"><span class=\"card-cell-label\">การตั้งค่า</span>อัตราค่าบริการโทเคนพื้นฐาน</th><td data-cell-label=\"ตารางอัตราค่าบริการ\"><span class=\"card-cell-label\">ตารางอัตราค่าบริการ</span>อัตราพื้นฐาน</td><td data-cell-label=\"หน่วยคิดค่าบริการ\"><span class=\"card-cell-label\">หน่วยคิดค่าบริการ</span>—</td><td data-cell-label=\"ค่าบริการ\"><span class=\"card-cell-label\">ค่าบริการ</span><div><span>ขาเข้า · โทเค็นอินพุต</span> <b>—</b> <span class=\"price-unit\">/ 1K โทเค็น</span></div><div><span>ขาออก · โทเค็นเอาต์พุต</span> <b>—</b> <span class=\"price-unit\">/ 1K โทเค็น</span></div><div><span>ขาเข้า · การอ่านแคช</span> <b>—</b> <span class=\"price-unit\">/ 1K โทเค็น</span></div><div><span>ขาเข้า · การเขียนแคช</span> <b>—</b> <span class=\"price-unit\">/ 1K โทเค็น</span></div><div><span>ขาเข้า · การเขียนแคช, 1 ชั่วโมง</span> <b>—</b> <span class=\"price-unit\">/ 1K โทเค็น</span></div></td></tr><tr><th data-cell-label=\"การตั้งค่า\" scope=\"row\"><span class=\"card-cell-label\">การตั้งค่า</span>วินาทีเสียงขาเข้า</th><td data-cell-label=\"ตารางอัตราค่าบริการ\"><span class=\"card-cell-label\">ตารางอัตราค่าบริการ</span>—</td><td data-cell-label=\"หน่วยคิดค่าบริการ\"><span class=\"card-cell-label\">หน่วยคิดค่าบริการ</span>ต่อวินาทีของเสียงอินพุต</td><td data-cell-label=\"ค่าบริการ\"><span class=\"card-cell-label\">ค่าบริการ</span><div><span>ขาเข้า · วินาทีเสียงขาเข้า</span> <b>$0.00025</b> <span class=\"price-unit\">ต่อวินาทีของเสียงอินพุต</span></div></td></tr></tbody></table></div></div><p class=\"note-s\">Ailoot กันยอดเงินประมาณการไว้ก่อนส่งคำขอ หลังได้ผลลัพธ์ จะคิดค่าบริการสุดท้ายตามการใช้งานที่วัดได้ การคิดค่าบริการแบบสตรีมใช้บันทึกการใช้งานสุดท้าย <a href=\"/docs/th/billing/reserve/\">วิธีกันยอดเงินและคิดค่าบริการสุดท้าย →</a></p></section><section class=\"card-section\" data-card-section=\"examples\"><h3 tabindex=\"-1\">ตัวอย่างคำขอ</h3><h4>Ailoot Ultra · การถอดเสียง</h4><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"ตัวเลือกโค้ด\"><button class=\"cg-tab\" id=\"model-code-1073-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1073-panel-0\" aria-selected=\"true\" tabindex=\"0\">curl · ไฟล์ WAV จริงและผลลัพธ์ต้นฉบับที่ครบถ้วน</button></div><div class=\"cg-tools\"><button class=\"cg-btn cg-copy\" type=\"button\" aria-label=\"คัดลอกโค้ด\"><svg class=\"cp\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><rect x=\"5.25\" y=\"5.25\" width=\"8.5\" height=\"8.5\" rx=\"1.75\"/><path d=\"M10.75 5.25V3.5a1.25 1.25 0 0 0-1.25-1.25H3.5A1.25 1.25 0 0 0 2.25 3.5v6a1.25 1.25 0 0 0 1.25 1.25h1.75\"/></svg><svg class=\"ok\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><path d=\"m3 8.5 3.25 3.25L13 5\"/></svg></button></div></div><div class=\"cg-body\"><div class=\"cg-pane\" id=\"model-code-1073-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1073-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}&quot;\nexport AILOOT_AUDIO_FILE\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ[&#39;AILOOT_AUDIO_FILE&#39;]).read_bytes()\nif not (audio[:4] == b&#39;RIFF&#39; and audio[8:12] == b&#39;WAVE&#39;):\n    raise SystemExit(&#39;Supply your actual PCM WAV audio file&#39;)\nwith wave.open(io.BytesIO(audio), &#39;rb&#39;) as recording:\n    if recording.getcomptype() != &#39;NONE&#39; or recording.getnframes() &lt;= 0:\n        raise SystemExit(&#39;Supply a nonempty PCM WAV recording&#39;)\nrequest = {&#39;model&#39;: &#39;assemblyai/universal-3-5-pro&#39;, &#39;input_audio&#39;: {&#39;data&#39;: base64.b64encode(audio).decode(&#39;ascii&#39;), &#39;format&#39;: &#39;wav&#39;}}\nPath(&#39;request.json&#39;).write_text(json.dumps(request, ensure_ascii=False), encoding=&#39;utf-8&#39;)\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -H &#39;Content-Type: application/json&#39; \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n</code></pre></div></div></div></section><section class=\"card-section\" data-card-section=\"results\"><h3 tabindex=\"-1\">รับและบันทึกผลลัพธ์</h3><h4>Ailoot Ultra · การถอดเสียง</h4><p class=\"note-s\">เนื้อหาการตอบกลับเดิมทั้งหมด สถานะ และส่วนหัวที่ส่งต่อ ตัวจัดการนี้ไม่เพิ่มโครงสร้าง JSON ฟิลด์ข้อความ หรือโครงสร้างห่อหุ้มงานแบบสากล</p><ul class=\"card-result-paths\"><li><code>GET /v1/media/tasks/{task_id}</code></li><li><code>GET /v1/media/assets/{asset_id}/content</code></li><li><code>GET /v1/media/assets</code></li><li><code>GET /v1/media/assets/{asset_id}</code></li></ul><div class=\"card-result-process\" data-all-results><h5>เก็บผลลัพธ์ที่เสร็จสมบูรณ์ทั้งหมด</h5><p class=\"note-s\">เก็บทุกการตอบกลับ ไฟล์ และส่วนเนื้อหาที่ส่งกลับมาอย่างครบถ้วน</p><p class=\"note-s\">เก็บการตอบกลับและส่วนหัวให้ครบถ้วน เก็บผลลัพธ์จริงทุกรายการ ตัวระบุที่ส่งกลับมาแต่เดิม และฟิลด์ข้อมูลการใช้งานทั้งหมด กู้คืนการดำเนินการเดิมโดยไม่ส่งคำขอสร้างซ้ำ</p></div><div class=\"card-result-process\" data-unknown-recovery><h5>เมื่อต้องตรวจสอบการตอบกลับต้นฉบับ</h5><p class=\"note-s\">เก็บ X-Client-Request-ID จริงและการตอบกลับทั้งหมด อ่านแอสเซ็ตเดิมที่เป็นของคุณและ URL เนื้อหาที่ลงลายเซ็นตรงตามที่ส่งกลับ ห้ามส่งคำขอสร้างที่ยังไม่แน่ชัดซ้ำ</p></div><details class=\"card-about\" data-output-fields><summary>ฟิลด์การตอบกลับ</summary><div class=\"tw\" data-card-table=\"output\"><table><thead><tr><th>ฟิลด์</th><th>ประเภท</th></tr></thead><tbody><tr><th data-cell-label=\"ฟิลด์\" scope=\"row\"><span class=\"card-cell-label\">ฟิลด์</span><code class=\"card-field-name\">text (when present)</code></th><td data-cell-label=\"ประเภท\" data-field-type><span class=\"card-cell-label\">ประเภท</span></td></tr><tr><th data-cell-label=\"ฟิลด์\" scope=\"row\"><span class=\"card-cell-label\">ฟิลด์</span><code class=\"card-field-name\">usage (when present)</code></th><td data-cell-label=\"ประเภท\" data-field-type><span class=\"card-cell-label\">ประเภท</span></td></tr></tbody></table></div></details><details class=\"card-about\" data-method-errors><summary>ข้อผิดพลาดและขั้นตอนถัดไป</summary><div class=\"tw\" data-card-table=\"errors\"><table><thead><tr><th>การตอบกลับ</th><th>เงื่อนไข</th><th>ขั้นตอนถัดไป</th></tr></thead><tbody><tr><th data-cell-label=\"การตอบกลับ\" scope=\"row\"><span class=\"card-cell-label\">การตอบกลับ</span>400 · <code>invalid_request_error</code></th><td data-cell-label=\"เงื่อนไข\"><span class=\"card-cell-label\">เงื่อนไข</span>เนื้อหา JSON หรือ ID โมเดลมาตรฐานที่ระบุชัดเจนไม่ถูกต้อง</td><td data-cell-label=\"ขั้นตอนถัดไป\"><span class=\"card-cell-label\">ขั้นตอนถัดไป</span>เก็บการตอบกลับและแก้ไขฟิลด์คำขอที่ระบุ</td></tr><tr><th data-cell-label=\"การตอบกลับ\" scope=\"row\"><span class=\"card-cell-label\">การตอบกลับ</span>401 · <code>authentication_error</code></th><td data-cell-label=\"เงื่อนไข\"><span class=\"card-cell-label\">เงื่อนไข</span>คีย์ API ของ Ailoot ไม่ถูกต้อง</td><td data-cell-label=\"ขั้นตอนถัดไป\"><span class=\"card-cell-label\">ขั้นตอนถัดไป</span>ใช้คีย์ API ของ Ailoot ที่คุณได้รับอนุญาต</td></tr><tr><th data-cell-label=\"การตอบกลับ\" scope=\"row\"><span class=\"card-cell-label\">การตอบกลับ</span>403 · <code>permission_error</code></th><td data-cell-label=\"เงื่อนไข\"><span class=\"card-cell-label\">เงื่อนไข</span>กลุ่มคีย์ไม่อนุญาตให้ใช้เมธอดนี้</td><td data-cell-label=\"ขั้นตอนถัดไป\"><span class=\"card-cell-label\">ขั้นตอนถัดไป</span>เก็บรายละเอียดข้อผิดพลาดที่ส่งกลับไว้</td></tr><tr><th data-cell-label=\"การตอบกลับ\" scope=\"row\"><span class=\"card-cell-label\">การตอบกลับ</span>404 · <code>not_found_error</code></th><td data-cell-label=\"เงื่อนไข\"><span class=\"card-cell-label\">เงื่อนไข</span>เมธอดที่เลือกไม่มีเส้นทางที่ได้รับอนุญาต</td><td data-cell-label=\"ขั้นตอนถัดไป\"><span class=\"card-cell-label\">ขั้นตอนถัดไป</span>เก็บรายละเอียดข้อผิดพลาดที่ส่งกลับไว้</td></tr><tr><th data-cell-label=\"การตอบกลับ\" scope=\"row\"><span class=\"card-cell-label\">การตอบกลับ</span>422 · <code>price_unavailable</code></th><td data-cell-label=\"เงื่อนไข\"><span class=\"card-cell-label\">เงื่อนไข</span>อัตราค่าบริการที่ยอมรับไม่สามารถระบุปริมาณข้อมูลขาเข้าหรือขอบเขตที่จำเป็นได้</td><td data-cell-label=\"ขั้นตอนถัดไป\"><span class=\"card-cell-label\">ขั้นตอนถัดไป</span>เก็บการตอบกลับไว้ ใช้รูปแบบข้อมูลขาเข้าที่อัตราค่าบริการที่ยอมรับกำหนดไว้</td></tr><tr><th data-cell-label=\"การตอบกลับ\" scope=\"row\"><span class=\"card-cell-label\">การตอบกลับ</span>503 · <code></code></th><td data-cell-label=\"เงื่อนไข\"><span class=\"card-cell-label\">เงื่อนไข</span>ที่เก็บข้อมูล เส้นทาง ราคาเมธอด หรือการกันวงเงินที่จำเป็นไม่พร้อมใช้งาน</td><td data-cell-label=\"ขั้นตอนถัดไป\"><span class=\"card-cell-label\">ขั้นตอนถัดไป</span>เก็บการตอบกลับเดิมทั้งหมด การกันวงเงินที่ไม่แน่นอนไม่อนุญาตให้ส่งซ้ำ</td></tr><tr><th data-cell-label=\"การตอบกลับ\" scope=\"row\"><span class=\"card-cell-label\">การตอบกลับ</span>502 · <code>server_error</code></th><td data-cell-label=\"เงื่อนไข\"><span class=\"card-cell-label\">เงื่อนไข</span>ต้องตรวจสอบผลลัพธ์ การใช้งาน หรือการชำระบัญชีเดิม</td><td data-cell-label=\"ขั้นตอนถัดไป\"><span class=\"card-cell-label\">ขั้นตอนถัดไป</span>เก็บ ID คำขอจริงและการตอบกลับเดิม อ่านบันทึกเดิมที่เป็นของคุณ อย่าส่งคำขอสร้างซ้ำ</td></tr></tbody></table></div></details></section><section class=\"card-section\" data-card-section=\"aliases\"><h3 tabindex=\"-1\">ชื่ออื่น</h3><h4>ชื่ออื่นของโมเดล</h4><p class=\"note-s\"><span data-model-alias-route=\"Ultra\"><b>Ailoot Ultra</b> <a href=\"#m=assemblyai%2Funiversal-3-5-pro&amp;route=Ultra&amp;caller=assemblyai%2Funiversal-3-5-pro&amp;fmt=transcriptions\"><code>assemblyai/universal-3-5-pro</code></a></span></p><h4>ชื่อพาธเมธอดอื่น</h4><p class=\"note-s\">ใช้พาธเมธอดที่แสดงด้านบน</p><h4>ID ที่เกี่ยวข้องสำหรับเรียกใช้โมเดล</h4><p class=\"note-s\"><a href=\"#m=assemblyai%2Funiversal-3-5-pro&amp;route=Ultra&amp;caller=assemblyai%2Funiversal-3-5-pro&amp;fmt=transcriptions\"><code>assemblyai/universal-3-5-pro</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "assemblyai/universal-3-5-pro",
        "fmt": "transcriptions",
        "http": "POST",
        "path": "/v1/audio/transcriptions",
        "request_model_id": "assemblyai/universal-3-5-pro",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|transcriptions|/v1/audio/transcriptions|assemblyai%2Funiversal-3-5-pro",
      "ordinal": 0,
      "rawMethod": {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "เนื้อหา JSON หรือ ID โมเดลมาตรฐานที่ระบุชัดเจนไม่ถูกต้อง",
                "http_status": 400,
                "recovery": "เก็บการตอบกลับและแก้ไขฟิลด์คำขอที่ระบุ",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "คีย์ API ของ Ailoot ไม่ถูกต้อง",
                "http_status": 401,
                "recovery": "ใช้คีย์ API ของ Ailoot ที่คุณได้รับอนุญาต",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "กลุ่มคีย์ไม่อนุญาตให้ใช้เมธอดนี้",
                "http_status": 403,
                "recovery": "เก็บรายละเอียดข้อผิดพลาดที่ส่งกลับไว้",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "เมธอดที่เลือกไม่มีเส้นทางที่ได้รับอนุญาต",
                "http_status": 404,
                "recovery": "เก็บรายละเอียดข้อผิดพลาดที่ส่งกลับไว้",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "อัตราค่าบริการที่ยอมรับไม่สามารถระบุปริมาณข้อมูลขาเข้าหรือขอบเขตที่จำเป็นได้",
                "http_status": 422,
                "recovery": "เก็บการตอบกลับไว้ ใช้รูปแบบข้อมูลขาเข้าที่อัตราค่าบริการที่ยอมรับกำหนดไว้",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "ที่เก็บข้อมูล เส้นทาง ราคาเมธอด หรือการกันวงเงินที่จำเป็นไม่พร้อมใช้งาน",
                "http_status": 503,
                "recovery": "เก็บการตอบกลับเดิมทั้งหมด การกันวงเงินที่ไม่แน่นอนไม่อนุญาตให้ส่งซ้ำ",
                "type": null
              },
              {
                "code": null,
                "condition": "ต้องตรวจสอบผลลัพธ์ การใช้งาน หรือการชำระบัญชีเดิม",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "เก็บ ID คำขอจริงและการตอบกลับเดิม อ่านบันทึกเดิมที่เป็นของคุณ อย่าส่งคำขอสร้างซ้ำ",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "เก็บ X-Client-Request-ID จริงและการตอบกลับทั้งหมด อ่านแอสเซ็ตเดิมที่เป็นของคุณและ URL เนื้อหาที่ลงลายเซ็นตรงตามที่ส่งกลับ ห้ามส่งคำขอสร้างที่ยังไม่แน่ชัดซ้ำ"
            },
            "outputs": {
              "all_results": "เก็บการตอบกลับและส่วนหัวให้ครบถ้วน เก็บผลลัพธ์จริงทุกรายการ ตัวระบุที่ส่งกลับมาแต่เดิม และฟิลด์ข้อมูลการใช้งานทั้งหมด กู้คืนการดำเนินการเดิมโดยไม่ส่งคำขอสร้างซ้ำ",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "เนื้อหาการตอบกลับเดิมทั้งหมด สถานะ และส่วนหัวที่ส่งต่อ ตัวจัดการนี้ไม่เพิ่มโครงสร้าง JSON ฟิลด์ข้อความ หรือโครงสร้างห่อหุ้มงานแบบสากล"
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "assemblyai/universal-3-5-pro"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "assemblyai/universal-3-5-pro"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "assemblyai/universal-3-5-pro"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "ตัวอย่างนี้อ่านไฟล์ PCM WAV จริงของคุณที่ไม่ว่าง เข้ารหัสไบต์ทั้งหมดของไฟล์เป็น base64 และส่ง input_audio.format เป็น wav"
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "task_id ที่ตรงตามบันทึกสื่อเดิมซึ่งเป็นของคุณ",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.00025",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.00025",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'assemblyai/universal-3-5-pro', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "การถอดเสียง",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.00025
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.00025",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.00025",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "assemblyai/universal-3-5-pro",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.00025",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.00025",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    }
  ],
  "model_id": "assemblyai/universal-3-5-pro",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "a33b5a85d403e3336596d45a2d8f3f08fe216c23e36b5160095466112dec4cd7",
    "input_html_sha256": "34547599486b1a02be812184187fd8230413e72726840e81d19a33af0ff13b85",
    "private_audit_sha256": "5051b319307e532f4c29ffe80c754a2b91ddda7c48b83fad49c71356851ea0a0",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/th/assemblyai-universal-3-5-pro/",
    "description": "Universal-3.5 Pro เป็นโมเดลแปลงเสียงเป็นข้อความของ AssemblyAI สำหรับเปลี่ยนคลิปเสียงสั้นเป็นบทถอดเสียงสมบูรณ์ในคำตอบเดียว โปรไฟล์ Sync เพิ่มค่าความเชื่อมั่นรายคำ การประทับเวลารายคำที่เลือกเปิดได้ คำใบ้ศัพท์ และบริบทบทสนทนาก่อนหน้า สำหรับการป้อนด้วยเสียงและเวิร์กโฟลว์กดเพื่อพูด",
    "locale": "th",
    "md_url": "https://ailoot.ai/models/th/assemblyai-universal-3-5-pro/index.md",
    "title": "AssemblyAI: Universal-3.5 Pro — Ailoot",
    "url": "https://ailoot.ai/models/th/assemblyai-universal-3-5-pro/"
  },
  "rawModel": {
    "about": "Universal-3.5 Pro เป็นโมเดลรู้จำเสียงพูดของ AssemblyAI สำหรับแปลงเสียงพูดที่บันทึกไว้เป็นข้อความ ในโปรไฟล์ Sync คลิปเสียงสั้นให้บทถอดเสียงสมบูรณ์ในคำตอบเดียว เหมาะกับข้อความเสียง การป้อนแบบกดเพื่อพูด และเทิร์นสนทนาแยกครั้งที่แอปพลิเคชันรู้แล้วว่าควรจบการบันทึกเมื่อใด\n\nเตรียมเสียงเป็นคลิปที่มีขอบเขต ข้อกำหนด Sync ของ AssemblyAI รับความยาวตั้งแต่ 80 มิลลิวินาทีถึง 120 วินาที และขนาดไฟล์สูงสุด 40 MB รูปแบบที่รองรับคือ WAV หรือ PCM ดิบแบบ signed 16-bit little-endian เสียงเป็นโมโนหรือสเตอริโอได้ โดยสเตอริโอจะผสมลงภายใน อัตราสุ่มที่รองรับคือ 8, 16, 22.05, 24, 32, 44.1 และ 48 kHz ส่วนหัว WAV ระบุอัตราสุ่มและจำนวนช่องสัญญาณ ส่วน PCM ดิบต้องส่งค่าเหล่านั้นแยกในค่ากำหนดการถอดเสียง\n\nบันทึกถ้อยคำให้ครบและรักษาช่วงต้นกับท้ายของคำพูด งานตัวอย่างที่มีประโยชน์คือข้อความเสียงฝ่ายสนับสนุนสินค้าสั้น ๆ ที่มีชื่อสินค้า ตัวระบุคำสั่งซื้อ และคำขอ เก็บคลิปต้นฉบับเพื่อให้ตรวจบทถอดเสียงกับรายละเอียดสำคัญเหล่านั้นได้ สำหรับการบันทึกยาวกว่า ให้เตรียมเวิร์กโฟลว์ที่เหมาะกับการถอดเสียงยาว แทนการถือว่าขีดจำกัดความยาวคลิปสั้นเป็นความจุเสียงของโมเดลโดยรวม\n\nผลลัพธ์มีบทถอดเสียงเต็ม รายการคำพร้อมค่าความเชื่อมั่นรายคำ และค่าความเชื่อมั่นรวมระหว่างศูนย์กับหนึ่ง อีกทั้งระบุความยาวเสียงที่ส่งและตัวระบุคำขอ ทำให้เก็บข้อความคู่กับคลิปต้นฉบับได้ ใช้ค่าความเชื่อมั่นรายคำหาช่วงที่ควรฟังตรวจ โดยเฉพาะชื่อ ตัวเลข และศัพท์เฉพาะด้านที่สำคัญต่อแอปพลิเคชัน\n\nการประทับเวลารายคำเป็นตัวเลือกและปิดโดยค่าเริ่มต้น เมื่อขอ แต่ละคำที่จัดแนวได้อาจมีเวลาเริ่มและสิ้นสุดเป็นมิลลิวินาทีเทียบกับจุดเริ่มคลิป โปรไฟล์ผู้สร้างปล่อยค่าเหล่านั้นว่างเมื่อจัดแนวคำไม่ได้ แทนการแต่งเวลาโดยประมาณ ความแม่นยำของการประทับเวลาดีที่สุดสำหรับเสียงภาษาอังกฤษ เก็บสถานะเวลาที่ขาดไว้อย่างชัดเจนเมื่อเตรียมการเน้นคำ เวฟฟอร์มที่ค้นหาได้ หรือการจัดแนวคำบรรยาย และเปรียบเทียบข้อความกับเสียงก่อนใช้เป็นแทร็กคำบรรยายที่เสร็จแล้ว\n\nพรอมต์บริบทอธิบายว่าเสียงบันทึกเกี่ยวกับอะไร สามารถระบุสาขา สถานการณ์ หรือรายละเอียดเฉพาะที่แอปพลิเคชันรู้อยู่แล้ว และมีความยาวสูงสุด 6000 อักขระ เริ่มด้วยคำอธิบายสั้นที่ตรงกับเสียง เช่น บทสนทนาช่วยเหลือทางเทคนิคเกี่ยวกับอุปกรณ์เฉพาะ พรอมต์ให้บริบทการรู้จำ ไม่ใช่คำขอให้เขียนข้อความผู้พูดใหม่เป็นเอกสารชนิดอื่น\n\nรายการ keyterm แยกต่างหากช่วยโน้มการรู้จำไปยังคำศัพท์เฉพาะ โปรไฟล์ Sync รับสูงสุด 100 คำศัพท์ และรวม 8000 อักขระทั้งรายการ ใช้การสะกดตรงสำหรับชื่อที่ไม่ทั่วไป ตัวย่อ หรือศัพท์สินค้า และไม่ใส่คำทั่วไปที่รู้จำได้ดีอยู่แล้ว รายการคำที่ใหญ่หรือไม่จำเป็นอาจทำให้แก้เกิน จึงควรเน้นคำสำคัญในเสียง สามารถใช้คำอธิบายบริบทกับรายการคำศัพท์ร่วมกันได้\n\nบทสนทนาก่อนหน้าช่วยตีความคำตอบสั้นได้เช่นกัน ส่งถ้อยคำก่อนหน้าตามลำดับเวลา จากเก่าสุดถึงใหม่สุด โดยเสียงปัจจุบันยังเป็นเทิร์นที่กำลังถอด โควตาบริบทตามเอกสารคือ 500 เทิร์นหรือรวม 16,000 อักขระ หากเกินเพดานเหล่านี้หรือบริบทโมเดลที่มี รายการเก่าสุดจะถูกลบก่อน มีประโยชน์เมื่อคำตอบสั้นมีตัวระบุหรือการอ้างถึงที่ต้องอาศัยคำถามก่อนหน้าเพื่อเข้าใจความหมาย\n\nการเลือกภาษาช่วยกำกับการรู้จำไปยังภาษาที่คาดหวังหนึ่งภาษาหรือหลายภาษา อินเทอร์เฟซ Sync ปัจจุบันรับรหัสภาษา 32 รหัส และใช้ภาษาอังกฤษโดยค่าเริ่มต้นเมื่อไม่ส่งตัวเลือก สำหรับเสียงสลับภาษา ให้ระบุภาษาที่คาดหวัง พรอมต์บริบทกำหนดเองแทนที่ค่าเริ่มต้นที่ระบบจัดการและมีผลเหนือการกำกับด้วยรหัสภาษาแยก ดังนั้นให้ระบุภาษาที่คาดหวังในพรอมต์นั้นเมื่อจำเป็นต้องมีทั้งบริบทภาษาและสถานการณ์ คงบทถอดเสียงเป็นภาษาที่พูดจริง แทนการถือว่าการถอดเสียงเป็นคำสั่งแปล\n\nโมเดลยังปรากฏในเวิร์กโฟลว์ถอดเสียงอื่นของ AssemblyAI แต่ข้อกำหนดคลิปสั้นและฟิลด์ผลของโปรไฟล์ Sync เป็นของอินเทอร์เฟซนี้โดยเฉพาะ เวิร์กโฟลว์ Dictation ของผู้สร้างเพิ่มขั้นตอนปรับข้อความแยกต่างหาก บทถอดเสียงกับข้อความเขียนใหม่เป็นคนละชิ้นงาน เก็บเสียงพูดที่รู้จำไว้หากขั้นตอนแก้ไขหรือสรุปภายหลังสร้างฉบับปรับปรุง เพื่อให้ถ้อยคำต้นฉบับยังอยู่สำหรับเปรียบเทียบ\n\nสิ่งส่งมอบที่มีประโยชน์ ได้แก่ ข้อความเสียงที่ถอดแล้ว เทิร์นสมบูรณ์สำหรับผู้ช่วย ข้อความจากเสียงสั้นที่ค้นหาได้ หรือรายการคำพร้อมเวลาสำหรับอินเทอร์เฟซตรวจทาน ตรวจคำที่มีผลสำคัญกับเสียง เก็บการจัดแนวที่ขาด และคงลิงก์ระหว่างคลิปกับข้อความที่ส่งคืน ผลการรู้จำให้บทถอดเสียงที่อิงต้นฉบับแก่ขั้นตอนแอปพลิเคชันถัดไป ส่วนการตอบคำขอหรือแก้ข้อความเป็นงานของเวิร์กโฟลว์รอบนอก",
    "alias_of": null,
    "aliases": [],
    "author": "AssemblyAI",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "audio"
      ],
      "manufacturer_output": [
        "transcription"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.00025",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.00025",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ],
        "summary": "ดูราคาตามการกำหนดค่าแบบครบถ้วนในรายละเอียด"
      }
    ],
    "ctx": null,
    "formats": [
      "transcriptions"
    ],
    "id": "assemblyai/universal-3-5-pro",
    "input": [
      "audio"
    ],
    "kind": "audio",
    "max_out": null,
    "methods": [
      {
        "available": null,
        "cache_read": null,
        "cache_write": null,
        "cache_write_1h": null,
        "contract": {
          "data": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "errors": [
              {
                "code": null,
                "condition": "เนื้อหา JSON หรือ ID โมเดลมาตรฐานที่ระบุชัดเจนไม่ถูกต้อง",
                "http_status": 400,
                "recovery": "เก็บการตอบกลับและแก้ไขฟิลด์คำขอที่ระบุ",
                "type": "invalid_request_error"
              },
              {
                "code": null,
                "condition": "คีย์ API ของ Ailoot ไม่ถูกต้อง",
                "http_status": 401,
                "recovery": "ใช้คีย์ API ของ Ailoot ที่คุณได้รับอนุญาต",
                "type": "authentication_error"
              },
              {
                "code": null,
                "condition": "กลุ่มคีย์ไม่อนุญาตให้ใช้เมธอดนี้",
                "http_status": 403,
                "recovery": "เก็บรายละเอียดข้อผิดพลาดที่ส่งกลับไว้",
                "type": "permission_error"
              },
              {
                "code": null,
                "condition": "เมธอดที่เลือกไม่มีเส้นทางที่ได้รับอนุญาต",
                "http_status": 404,
                "recovery": "เก็บรายละเอียดข้อผิดพลาดที่ส่งกลับไว้",
                "type": "not_found_error"
              },
              {
                "code": null,
                "condition": "อัตราค่าบริการที่ยอมรับไม่สามารถระบุปริมาณข้อมูลขาเข้าหรือขอบเขตที่จำเป็นได้",
                "http_status": 422,
                "recovery": "เก็บการตอบกลับไว้ ใช้รูปแบบข้อมูลขาเข้าที่อัตราค่าบริการที่ยอมรับกำหนดไว้",
                "type": "price_unavailable"
              },
              {
                "code": null,
                "condition": "ที่เก็บข้อมูล เส้นทาง ราคาเมธอด หรือการกันวงเงินที่จำเป็นไม่พร้อมใช้งาน",
                "http_status": 503,
                "recovery": "เก็บการตอบกลับเดิมทั้งหมด การกันวงเงินที่ไม่แน่นอนไม่อนุญาตให้ส่งซ้ำ",
                "type": null
              },
              {
                "code": null,
                "condition": "ต้องตรวจสอบผลลัพธ์ การใช้งาน หรือการชำระบัญชีเดิม",
                "http_status": 502,
                "operation_id_source": "actual X-Client-Request-ID",
                "recovery": "เก็บ ID คำขอจริงและการตอบกลับเดิม อ่านบันทึกเดิมที่เป็นของคุณ อย่าส่งคำขอสร้างซ้ำ",
                "response_headers": {
                  "x-should-retry": "false"
                },
                "type": "server_error"
              }
            ],
            "lifecycle": {
              "assets": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets"
                },
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}"
                }
              ],
              "content": [
                {
                  "http": "GET",
                  "path": "/v1/media/assets/{asset_id}/content",
                  "url_source": "exact returned signed content URL"
                }
              ],
              "dedicated_method_polling_or_cancel": false,
              "mode": "synchronous_result_then_owned_library",
              "original_POST_adds_task_envelope": false,
              "status": [
                {
                  "http": "GET",
                  "id_source": "exact task_id from an existing owned media record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "เก็บ X-Client-Request-ID จริงและการตอบกลับทั้งหมด อ่านแอสเซ็ตเดิมที่เป็นของคุณและ URL เนื้อหาที่ลงลายเซ็นตรงตามที่ส่งกลับ ห้ามส่งคำขอสร้างที่ยังไม่แน่ชัดซ้ำ"
            },
            "outputs": {
              "all_results": "เก็บการตอบกลับและส่วนหัวให้ครบถ้วน เก็บผลลัพธ์จริงทุกรายการ ตัวระบุที่ส่งกลับมาแต่เดิม และฟิลด์ข้อมูลการใช้งานทั้งหมด กู้คืนการดำเนินการเดิมโดยไม่ส่งคำขอสร้างซ้ำ",
              "family": "text",
              "fields": [
                {
                  "description": null,
                  "name": "text (when present)",
                  "type": null
                },
                {
                  "description": null,
                  "name": "usage (when present)",
                  "type": null
                }
              ],
              "result": "เนื้อหาการตอบกลับเดิมทั้งหมด สถานะ และส่วนหัวที่ส่งต่อ ตัวจัดการนี้ไม่เพิ่มโครงสร้าง JSON ฟิลด์ข้อความ หรือโครงสร้างห่อหุ้มงานแบบสากล"
            },
            "parameters": [
              {
                "default_known": false,
                "enum": [
                  "assemblyai/universal-3-5-pro"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "default_known": false,
                "enum_known": false,
                "name": "input_audio",
                "required": true,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input_audio": {
                  "properties": {
                    "data": {
                      "contentEncoding": "base64",
                      "type": "string"
                    },
                    "format": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "data",
                    "format"
                  ],
                  "type": "object"
                },
                "model": {
                  "enum": [
                    "assemblyai/universal-3-5-pro"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input_audio"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": true,
              "body": {
                "input_audio": {
                  "data": "${BASE64_ACTUAL_WAV_BYTES}",
                  "format": "wav"
                },
                "model": "assemblyai/universal-3-5-pro"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_conditions": [
              "ตัวอย่างนี้อ่านไฟล์ PCM WAV จริงของคุณที่ไม่ว่าง เข้ารหัสไบต์ทั้งหมดของไฟล์เป็น base64 และส่ง input_audio.format เป็น wav"
            ],
            "material_types": [
              "audio"
            ],
            "required": [
              "model",
              "input_audio"
            ]
          },
          "lifecycle": {
            "assets": [
              {
                "http": "GET",
                "path": "/v1/media/assets"
              },
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}"
              }
            ],
            "content": [
              {
                "http": "GET",
                "path": "/v1/media/assets/{asset_id}/content",
                "url_source": "exact returned signed content URL"
              }
            ],
            "dedicated_method_polling_or_cancel": false,
            "mode": "synchronous_result_then_owned_library",
            "original_POST_adds_task_envelope": false,
            "status": [
              {
                "http": "GET",
                "id_source": "task_id ที่ตรงตามบันทึกสื่อเดิมซึ่งเป็นของคุณ",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Retain the actual X-Client-Request-ID and complete response. Read the original owned assets and their exact signed content URLs; never resubmit an uncertain creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/transcriptions"
          },
          "output": {
            "all_results": "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.",
            "family": "text",
            "fields": [
              {
                "description": null,
                "name": "text (when present)",
                "type": null
              },
              {
                "description": null,
                "name": "usage (when present)",
                "type": null
              }
            ],
            "result": "Complete original response body, status and forwarded headers. No universal JSON shape, text field or task envelope is added by this handler."
          }
        },
        "ctx": null,
        "declared_pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.00025",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.00025",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_AUDIO_FILE:?Set the path to your actual PCM WAV recording}\"\nexport AILOOT_AUDIO_FILE\npython3 - <<'PY_REQUEST'\nimport base64, io, json, os, wave\nfrom pathlib import Path\naudio = Path(os.environ['AILOOT_AUDIO_FILE']).read_bytes()\nif not (audio[:4] == b'RIFF' and audio[8:12] == b'WAVE'):\n    raise SystemExit('Supply your actual PCM WAV audio file')\nwith wave.open(io.BytesIO(audio), 'rb') as recording:\n    if recording.getcomptype() != 'NONE' or recording.getnframes() <= 0:\n        raise SystemExit('Supply a nonempty PCM WAV recording')\nrequest = {'model': 'assemblyai/universal-3-5-pro', 'input_audio': {'data': base64.b64encode(audio).decode('ascii'), 'format': 'wav'}}\nPath('request.json').write_text(json.dumps(request, ensure_ascii=False), encoding='utf-8')\nPY_REQUEST\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/audio/transcriptions \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -H 'Content-Type: application/json' \\\n  --data-binary @request.json -D response-headers.txt -o response.bin\n# Retain the complete original response, headers and actual X-Client-Request-ID.\n# Read existing owned records for recovery; do not resubmit an uncertain operation.\n",
            "label": "curl · actual WAV file and complete original result",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "transcriptions",
        "hints": [
          "The example reads your actual nonempty PCM WAV file, encodes the complete file bytes as base64 and sends input_audio.format as wav.",
          "The format value in the example is the documented recipe; no model-specific format list, limit or default is asserted.",
          "Retain the complete response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again."
        ],
        "http": "POST",
        "in": null,
        "input": [
          "audio"
        ],
        "label": "การถอดเสียง",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_transcriptions",
        "out": null,
        "output": [
          "text"
        ],
        "path": "/v1/audio/transcriptions",
        "price_conditions": [
          {
            "label": "Fast mode",
            "value": "Not specified",
            "when": "When fast mode is selected"
          },
          {
            "label": "Flex mode",
            "value": "Not specified",
            "when": "When flex mode is selected"
          },
          {
            "label": "Maximum reasoning effort",
            "value": "Not specified",
            "when": "When maximum reasoning effort uses the default adjustment"
          }
        ],
        "pricing": {
          "billing_mode": "per_request",
          "image_input_price": null,
          "image_output_price": null,
          "per_request_price": null,
          "unit_prices": {
            "audio_input_second": 0.00025
          }
        },
        "pricing_profiles": [
          {
            "dimensions": {
              "regime": "base"
            },
            "label": "Base token rates",
            "units": [
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "input_price",
                "label": "Input tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "output_price",
                "label": "Output tokens",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "output_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "output_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_read_price",
                "label": "Cache read",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "cached_input_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "cached_input_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_price",
                "label": "Cache write",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "generic_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "generic_cache_creation_token"
              },
              {
                "amount": null,
                "amount_unit": "usd_per_thousand_tokens",
                "billing_input": true,
                "estimate_only": false,
                "key": "cache_write_1h_price",
                "label": "Cache write, 1 hour",
                "native_amount_usd_per_unit": null,
                "native_quantity": 1,
                "native_unit": "one_hour_cache_creation_token",
                "public_unit_label": "/ 1K tokens",
                "quantity": 1000,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "one_hour_cache_creation_token"
              }
            ]
          },
          {
            "dimensions": {
              "quoted_unit": "per input audio second"
            },
            "label": "input audio second",
            "units": [
              {
                "amount": "0.00025",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_input_second",
                "label": "input audio second",
                "native_amount_usd_per_unit": "0.00025",
                "native_quantity": 1,
                "public_unit_label": "per input audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "in",
                "unit": "audio_input_second"
              }
            ]
          }
        ],
        "request_model_id": "assemblyai/universal-3-5-pro",
        "route_label": "Ultra",
        "status_reads": [
          "GET /v1/media/tasks/{task_id}"
        ],
        "tiers": [],
        "units": [
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "input_price",
            "label": "Input tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "output_price",
            "label": "Output tokens",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "output_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "output_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_read_price",
            "label": "Cache read",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "cached_input_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "cached_input_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_price",
            "label": "Cache write",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "generic_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "generic_cache_creation_token"
          },
          {
            "amount": null,
            "amount_unit": "usd_per_thousand_tokens",
            "billing_input": true,
            "estimate_only": false,
            "key": "cache_write_1h_price",
            "label": "Cache write, 1 hour",
            "native_amount_usd_per_unit": null,
            "native_quantity": 1,
            "native_unit": "one_hour_cache_creation_token",
            "public_unit_label": "/ 1K tokens",
            "quantity": 1000,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "one_hour_cache_creation_token"
          },
          {
            "amount": "0.00025",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_input_second",
            "label": "input audio second",
            "native_amount_usd_per_unit": "0.00025",
            "native_quantity": 1,
            "public_unit_label": "per input audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "in",
            "unit": "audio_input_second"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "assemblyai/universal-3-5-pro",
        "request_model_id": "assemblyai/universal-3-5-pro",
        "route_label": "Ultra"
      }
    ],
    "name": "AssemblyAI: Universal-3.5 Pro",
    "price": {
      "in": null,
      "in_label": null,
      "out": null,
      "out_label": null,
      "sort_in": null,
      "sort_out": null,
      "varies": true
    },
    "short": "Universal-3.5 Pro เป็นโมเดลแปลงเสียงเป็นข้อความของ AssemblyAI สำหรับเปลี่ยนคลิปเสียงสั้นเป็นบทถอดเสียงสมบูรณ์ในคำตอบเดียว โปรไฟล์ Sync เพิ่มค่าความเชื่อมั่นรายคำ การประทับเวลารายคำที่เลือกเปิดได้ คำใบ้ศัพท์ และบริบทบทสนทนาก่อนหน้า สำหรับการป้อนด้วยเสียงและเวิร์กโฟลว์กดเพื่อพูด"
  },
  "renderer_schema": {
    "method_order": "Original DTO methods order; every exact route/format/path/caller survives.",
    "prices": "Original public DTO fields and original native display HTML; no flattened or normalized offers."
  },
  "representation": "exact-public-dto-and-native-renderer-html",
  "representationNotes": {
    "current_reference": {
      "about_json_pointer": "/aboutHtml",
      "methods": [
        {
          "contract_json_pointer": "/methods/0/rawMethod/contract",
          "html_json_pointer": "/methods/0/html",
          "method_ordinal": 0
        }
      ],
      "role": "current-semantic-reference"
    },
    "raw_input": {
      "examples_role": "historical-input-not-current-ready-examples",
      "json_pointers": [
        "/rawModel",
        "/methods/0/rawMethod"
      ],
      "role": "historical-owner-input"
    },
    "schema": "ailoot-native-model-representations-v1"
  },
  "schema": "ailoot-static-model-facts-v1",
  "schema_version": 1,
  "shortText": "Universal-3.5 Pro เป็นโมเดลแปลงเสียงเป็นข้อความของ AssemblyAI สำหรับเปลี่ยนคลิปเสียงสั้นเป็นบทถอดเสียงสมบูรณ์ในคำตอบเดียว โปรไฟล์ Sync เพิ่มค่าความเชื่อมั่นรายคำ การประทับเวลารายคำที่เลือกเปิดได้ คำใบ้ศัพท์ และบริบทบทสนทนาก่อนหน้า สำหรับการป้อนด้วยเสียงและเวิร์กโฟลว์กดเพื่อพูด",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "51ad4810b9c9be72cce2a3f061fea0123bed528981f00ffc95eb14f368155867",
    "renderer_sha256": "890edb706fafafdd4f598bb324acf65fada58918b0911b97eb80e68be2ef65d9"
  },
  "sourceRevision": "33a095fe7ae9d7730f5ae3cf57ddeebae6ca0f166bd672a5773fb7954b1f8c6c"
}
