{
  "aboutHtml": "<p>ByteDance Seed Audio 1.0 เป็นโมเดลสร้างเสียงที่จัดงานโดยยึดฉากเสียง สามารถกำกับเสียงพูด เอฟเฟกต์ และบรรยากาศร่วมกันผ่านโจทย์ข้อความ จึงมีประโยชน์กับเรื่องเล่ามีเสียง ฉากเผชิญหน้าในเกม บทละครสั้น หรือฉากประกอบวิดีโอที่ตัดต่อแล้ว สำหรับงานเสียงพูดอย่างเดียว ให้อธิบายผู้พูดและการแสดง สำหรับฉากเต็มกว่า ให้อธิบายสภาพแวดล้อมเสียงและความสัมพันธ์ของบทสนทนากับเสียงรอบข้างด้วย</p><p>เตรียมโจทย์ตามลำดับที่ผู้ฟังควรได้ยินฉาก ระบุตัวละคร สภาพอารมณ์ที่ตั้งใจ และถ้อยคำที่ต้องพูด จากนั้นอธิบายสถานที่ เสียงสัญญาณสำคัญ และพัฒนาการของช่วงเหตุการณ์ โจทย์การผลิตควรแยกบทสนทนาตรงตัวออกจากคำอธิบายฉาก เพื่อให้ตรวจผลกับทั้งสองส่วนได้ ระบุองค์ประกอบที่จำเป็นต่อความเข้าใจและสิ่งที่ควรอยู่ฉากหลัง ห้องเงียบ สถานีแออัด และลานเปิดต้องการออกแบบเสียงต่างกัน แม้ประโยคพูดเหมือนกัน</p><p>ตัวอย่างเฉพาะคือ ตัวละครเกมปลอบเพื่อนในฉากหลบภัยสั้น ๆ: เสียงที่สำรวมพูดว่า “เรารอที่นี่ได้” พร้อมเสียงฝนเบาเป็นบรรยากาศ และเสียงก้าวเท้าใกล้เข้ามาหนึ่งครั้งหลังประโยค การฟังตรวจที่มีประโยชน์คือถ้อยคำยังฟังชัดหรือไม่ เสียงสื่อความอุ่นใจหรือไม่ และเสียงสัญญาณเข้ามาในจุดที่สมเหตุผลของฉากหรือไม่ อีกโจทย์อาจขอผู้บรรยายเสียงชัดแนะนำสินค้าโดยไม่มีบรรยากาศรอบข้าง นี่เป็นตัวอย่างวิธีระบุเจตนา ไม่ใช่ระเบียนเสียงที่สร้างแล้วหรือสัญญาเรื่องมิกซ์สำเร็จ</p><p>ผู้สร้างระบุการควบคุมเวลาบทสนทนาตัวละครในระดับพรอมต์ทีละ 100 ms ใช้เพื่ออธิบายเวลาที่ประโยคควรเริ่มในลำดับตามบท หรือวางแผนคำพูดให้เข้ากับงานตัดต่อที่มี แยกจังหวะบทสนทนาจากการวางเอฟเฟกต์และบรรยากาศ รุ่นนี้ระบุบทสนทนาตัวละครเป็นจุดเน้นหลักของการควบคุมเวลา ตรวจจุดเริ่ม ช่วงหยุด และเสียงซ้อนจริงกับฉากที่ตั้งใจ ช่วงเวลานี้อธิบายความละเอียดการควบคุมของโมเดล ไม่ได้ตัดความจำเป็นในการฟังการแสดงสุดท้าย</p><p>กำหนดเสียงได้ผ่านคำอธิบายข้อความ ตัวอย่างอ้างอิงที่ได้รับอนุญาต หรือทั้งสองอย่าง ผู้ผลิตนำเสนอเป็นการกำกับเสียงโดยไม่ฝึกโมเดลแยกสำหรับผู้พูดแต่ละคน อธิบายลักษณะเสียงที่คงที่แยกจากอารมณ์ของประโยคปัจจุบัน ตัวละครที่ปรากฏซ้ำอาจต้องมีคำแนะนำตัวสงบและคำตอบเร่งด่วนแต่ยังจำได้ว่าเป็นคนเดิม ในการเตรียมจริง ให้เลือกเสียงอ้างอิงชัดที่ได้ยินเสียงเป้าหมายง่าย และระบุสิ่งที่ต้องถ่ายทอดสู่การแสดงใหม่ รักษาเสียงอ้างอิงและโจทย์ตัวละครให้สอดคล้องเมื่อเตรียมฉากที่เกี่ยวข้อง</p><p>รุ่นนี้ระบุการสร้างในมากกว่า 20 ภาษา รวมจีน อังกฤษ ญี่ปุ่น เกาหลี สเปน อินโดนีเซีย เยอรมัน ฝรั่งเศส ไทย และเวียดนาม อธิบายการปรับเสียงตัวละครที่จำได้ให้เข้ากับจังหวะและการแสดงออกของภาษาต่าง ๆ ส่งบทสนทนาในภาษาสุดท้ายและให้ผู้ฟังที่เข้าใจภาษานั้นตรวจชื่อ การเน้นเสียง ช่วงหยุด และอารมณ์ สำหรับรุ่นหลายภาษา ให้รักษาบทบาทและเจตนาอารมณ์ของตัวละคร พร้อมเผื่อพื้นที่ให้แต่ละบทใช้ถ้อยคำเป็นธรรมชาติ เตรียมคำแปลเป็นส่วนของงานบท แทนการสมมติว่าโจทย์ฉากเสียงให้การตัดสินใจโลคัลไลซ์ครบทุกอย่าง</p><p>ตามประกาศผู้สร้าง Seed Audio 1.0 สร้างได้สูงสุดสองนาทีในรอบเดียวและรองรับการต่อเนื่อง เรื่องยาวได้ประโยชน์จากขอบเขตฉากและโจทย์ตัวละครที่ใช้ซ้ำ ในแต่ละช่วงต่อ ให้ฟังการเปลี่ยนเสียงคน ลักษณะพื้นเสียง และจังหวะ รวมทั้งคำที่เชื่อมแต่ละส่วน มองเสียงที่ส่งกลับเป็นชิ้นงานสำหรับฟัง: ตรวจข้อมูลไฟล์จริงเมื่อเตรียมเล่นหรือนำเข้าโปรแกรมตัดต่อ และเก็บบทกับโจทย์ฉากไว้คู่กันเพื่อแก้ไข งานที่ต่อรวมควรถูกตรวจเป็นฉากต่อเนื่อง ไม่ใช่เพียงคลิปแยก</p><p>ผู้ผลิตอธิบายกรอบร่วมที่เจตนาสร้างสรรค์ระดับภาษากำกับตัวสร้างเสียงแบบ diffusion ผลต่อการเขียนโจทย์คือสามารถพิจารณาเสียงพูดและสภาพแวดล้อมร่วมกัน เน้นความสัมพันธ์ไม่กี่อย่างที่กำหนดฉาก เช่น ประโยคอยู่ด้านหน้าหรือไม่ เอฟเฟกต์ขัดจังหวะหรือไม่ และบรรยากาศหนุนอารมณ์อย่างไร การเพิ่มสัญญาณเสียงที่ไม่เกี่ยวกันมากทำให้หาส่วนที่ต้องแก้ในผลได้ยากขึ้น เปลี่ยนทิศทางของช่วงนั้นเมื่อเสียงสัญญาณแข่งกับบทสนทนาหรือการแสดงไม่ตรงน้ำเสียงที่ตั้งใจ</p><p>ความต่อเนื่องของเสียงในเนื้อหายาวซับซ้อนและเวลาที่ละเอียดขึ้นระหว่างองค์ประกอบเสียงยังเป็นด้านพัฒนาที่ประกาศรุ่นระบุ ให้ตรวจการผลิตอย่างเฉพาะเจาะจง ได้แก่ ถ้อยคำตรงตัว อัตลักษณ์ผู้พูด ภาษา จุดเข้า ความชัดเจน และความสอดคล้องตลอดส่วนต่อ ผลที่ใช้ได้ของโมเดลนี้คือฉากเสียงหรือการแสดงเสียงพูดที่ได้ยินจริง สามารถตัดสินใจเรื่องจุดตัด คำบรรยาย และรูปแบบส่งมอบแยกจากผลจริงนั้นและข้อกำหนดของงานปลายทาง</p>",
  "aboutText": "ByteDance Seed Audio 1.0 เป็นโมเดลสร้างเสียงที่จัดงานโดยยึดฉากเสียง สามารถกำกับเสียงพูด เอฟเฟกต์ และบรรยากาศร่วมกันผ่านโจทย์ข้อความ จึงมีประโยชน์กับเรื่องเล่ามีเสียง ฉากเผชิญหน้าในเกม บทละครสั้น หรือฉากประกอบวิดีโอที่ตัดต่อแล้ว สำหรับงานเสียงพูดอย่างเดียว ให้อธิบายผู้พูดและการแสดง สำหรับฉากเต็มกว่า ให้อธิบายสภาพแวดล้อมเสียงและความสัมพันธ์ของบทสนทนากับเสียงรอบข้างด้วย\n\nเตรียมโจทย์ตามลำดับที่ผู้ฟังควรได้ยินฉาก ระบุตัวละคร สภาพอารมณ์ที่ตั้งใจ และถ้อยคำที่ต้องพูด จากนั้นอธิบายสถานที่ เสียงสัญญาณสำคัญ และพัฒนาการของช่วงเหตุการณ์ โจทย์การผลิตควรแยกบทสนทนาตรงตัวออกจากคำอธิบายฉาก เพื่อให้ตรวจผลกับทั้งสองส่วนได้ ระบุองค์ประกอบที่จำเป็นต่อความเข้าใจและสิ่งที่ควรอยู่ฉากหลัง ห้องเงียบ สถานีแออัด และลานเปิดต้องการออกแบบเสียงต่างกัน แม้ประโยคพูดเหมือนกัน\n\nตัวอย่างเฉพาะคือ ตัวละครเกมปลอบเพื่อนในฉากหลบภัยสั้น ๆ: เสียงที่สำรวมพูดว่า “เรารอที่นี่ได้” พร้อมเสียงฝนเบาเป็นบรรยากาศ และเสียงก้าวเท้าใกล้เข้ามาหนึ่งครั้งหลังประโยค การฟังตรวจที่มีประโยชน์คือถ้อยคำยังฟังชัดหรือไม่ เสียงสื่อความอุ่นใจหรือไม่ และเสียงสัญญาณเข้ามาในจุดที่สมเหตุผลของฉากหรือไม่ อีกโจทย์อาจขอผู้บรรยายเสียงชัดแนะนำสินค้าโดยไม่มีบรรยากาศรอบข้าง นี่เป็นตัวอย่างวิธีระบุเจตนา ไม่ใช่ระเบียนเสียงที่สร้างแล้วหรือสัญญาเรื่องมิกซ์สำเร็จ\n\nผู้สร้างระบุการควบคุมเวลาบทสนทนาตัวละครในระดับพรอมต์ทีละ 100 ms ใช้เพื่ออธิบายเวลาที่ประโยคควรเริ่มในลำดับตามบท หรือวางแผนคำพูดให้เข้ากับงานตัดต่อที่มี แยกจังหวะบทสนทนาจากการวางเอฟเฟกต์และบรรยากาศ รุ่นนี้ระบุบทสนทนาตัวละครเป็นจุดเน้นหลักของการควบคุมเวลา ตรวจจุดเริ่ม ช่วงหยุด และเสียงซ้อนจริงกับฉากที่ตั้งใจ ช่วงเวลานี้อธิบายความละเอียดการควบคุมของโมเดล ไม่ได้ตัดความจำเป็นในการฟังการแสดงสุดท้าย\n\nกำหนดเสียงได้ผ่านคำอธิบายข้อความ ตัวอย่างอ้างอิงที่ได้รับอนุญาต หรือทั้งสองอย่าง ผู้ผลิตนำเสนอเป็นการกำกับเสียงโดยไม่ฝึกโมเดลแยกสำหรับผู้พูดแต่ละคน อธิบายลักษณะเสียงที่คงที่แยกจากอารมณ์ของประโยคปัจจุบัน ตัวละครที่ปรากฏซ้ำอาจต้องมีคำแนะนำตัวสงบและคำตอบเร่งด่วนแต่ยังจำได้ว่าเป็นคนเดิม ในการเตรียมจริง ให้เลือกเสียงอ้างอิงชัดที่ได้ยินเสียงเป้าหมายง่าย และระบุสิ่งที่ต้องถ่ายทอดสู่การแสดงใหม่ รักษาเสียงอ้างอิงและโจทย์ตัวละครให้สอดคล้องเมื่อเตรียมฉากที่เกี่ยวข้อง\n\nรุ่นนี้ระบุการสร้างในมากกว่า 20 ภาษา รวมจีน อังกฤษ ญี่ปุ่น เกาหลี สเปน อินโดนีเซีย เยอรมัน ฝรั่งเศส ไทย และเวียดนาม อธิบายการปรับเสียงตัวละครที่จำได้ให้เข้ากับจังหวะและการแสดงออกของภาษาต่าง ๆ ส่งบทสนทนาในภาษาสุดท้ายและให้ผู้ฟังที่เข้าใจภาษานั้นตรวจชื่อ การเน้นเสียง ช่วงหยุด และอารมณ์ สำหรับรุ่นหลายภาษา ให้รักษาบทบาทและเจตนาอารมณ์ของตัวละคร พร้อมเผื่อพื้นที่ให้แต่ละบทใช้ถ้อยคำเป็นธรรมชาติ เตรียมคำแปลเป็นส่วนของงานบท แทนการสมมติว่าโจทย์ฉากเสียงให้การตัดสินใจโลคัลไลซ์ครบทุกอย่าง\n\nตามประกาศผู้สร้าง Seed Audio 1.0 สร้างได้สูงสุดสองนาทีในรอบเดียวและรองรับการต่อเนื่อง เรื่องยาวได้ประโยชน์จากขอบเขตฉากและโจทย์ตัวละครที่ใช้ซ้ำ ในแต่ละช่วงต่อ ให้ฟังการเปลี่ยนเสียงคน ลักษณะพื้นเสียง และจังหวะ รวมทั้งคำที่เชื่อมแต่ละส่วน มองเสียงที่ส่งกลับเป็นชิ้นงานสำหรับฟัง: ตรวจข้อมูลไฟล์จริงเมื่อเตรียมเล่นหรือนำเข้าโปรแกรมตัดต่อ และเก็บบทกับโจทย์ฉากไว้คู่กันเพื่อแก้ไข งานที่ต่อรวมควรถูกตรวจเป็นฉากต่อเนื่อง ไม่ใช่เพียงคลิปแยก\n\nผู้ผลิตอธิบายกรอบร่วมที่เจตนาสร้างสรรค์ระดับภาษากำกับตัวสร้างเสียงแบบ diffusion ผลต่อการเขียนโจทย์คือสามารถพิจารณาเสียงพูดและสภาพแวดล้อมร่วมกัน เน้นความสัมพันธ์ไม่กี่อย่างที่กำหนดฉาก เช่น ประโยคอยู่ด้านหน้าหรือไม่ เอฟเฟกต์ขัดจังหวะหรือไม่ และบรรยากาศหนุนอารมณ์อย่างไร การเพิ่มสัญญาณเสียงที่ไม่เกี่ยวกันมากทำให้หาส่วนที่ต้องแก้ในผลได้ยากขึ้น เปลี่ยนทิศทางของช่วงนั้นเมื่อเสียงสัญญาณแข่งกับบทสนทนาหรือการแสดงไม่ตรงน้ำเสียงที่ตั้งใจ\n\nความต่อเนื่องของเสียงในเนื้อหายาวซับซ้อนและเวลาที่ละเอียดขึ้นระหว่างองค์ประกอบเสียงยังเป็นด้านพัฒนาที่ประกาศรุ่นระบุ ให้ตรวจการผลิตอย่างเฉพาะเจาะจง ได้แก่ ถ้อยคำตรงตัว อัตลักษณ์ผู้พูด ภาษา จุดเข้า ความชัดเจน และความสอดคล้องตลอดส่วนต่อ ผลที่ใช้ได้ของโมเดลนี้คือฉากเสียงหรือการแสดงเสียงพูดที่ได้ยินจริง สามารถตัดสินใจเรื่องจุดตัด คำบรรยาย และรูปแบบส่งมอบแยกจากผลจริงนั้นและข้อกำหนดของงานปลายทาง",
  "editorialOverlay": {
    "copy_fields": null,
    "copy_sha256": null,
    "copy_source": null,
    "html_sha256": "46fed5cb1fb2570f338f3dafe2a1c650acc8f735f9ca9e531cca085fe51a9ed4",
    "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\">ByteDance Seed: Seed Audio 1.0</h2><button class=\"icon-btn\" type=\"button\" data-close-sheet aria-label=\"ปิด\">×</button></div><div class=\"idline\"><span>ByteDance Seed /</span><code>bytedance-seed/seed-audio-1-0</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|speech|/v1/audio/speech|bytedance-seed%2Fseed-audio-1-0\">การสังเคราะห์เสียงพูด</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\">ByteDance Seed Audio 1.0 สร้างการแสดงเสียงพูดและฉากเสียงจากโจทย์สร้างสรรค์ ประสานเสียงคน เอฟเฟกต์ และบรรยากาศ รองรับการกำหนดจังหวะบทสนทนาทีละ 100 ms และครอบคลุมมากกว่า 20 ภาษา ผู้สร้างระบุความยาวสูงสุดสองนาทีต่อการสร้างพร้อมการต่อเนื่อง</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>ByteDance Seed Audio 1.0 เป็นโมเดลสร้างเสียงที่จัดงานโดยยึดฉากเสียง สามารถกำกับเสียงพูด เอฟเฟกต์ และบรรยากาศร่วมกันผ่านโจทย์ข้อความ จึงมีประโยชน์กับเรื่องเล่ามีเสียง ฉากเผชิญหน้าในเกม บทละครสั้น หรือฉากประกอบวิดีโอที่ตัดต่อแล้ว สำหรับงานเสียงพูดอย่างเดียว ให้อธิบายผู้พูดและการแสดง สำหรับฉากเต็มกว่า ให้อธิบายสภาพแวดล้อมเสียงและความสัมพันธ์ของบทสนทนากับเสียงรอบข้างด้วย</p><p>เตรียมโจทย์ตามลำดับที่ผู้ฟังควรได้ยินฉาก ระบุตัวละคร สภาพอารมณ์ที่ตั้งใจ และถ้อยคำที่ต้องพูด จากนั้นอธิบายสถานที่ เสียงสัญญาณสำคัญ และพัฒนาการของช่วงเหตุการณ์ โจทย์การผลิตควรแยกบทสนทนาตรงตัวออกจากคำอธิบายฉาก เพื่อให้ตรวจผลกับทั้งสองส่วนได้ ระบุองค์ประกอบที่จำเป็นต่อความเข้าใจและสิ่งที่ควรอยู่ฉากหลัง ห้องเงียบ สถานีแออัด และลานเปิดต้องการออกแบบเสียงต่างกัน แม้ประโยคพูดเหมือนกัน</p><p>ตัวอย่างเฉพาะคือ ตัวละครเกมปลอบเพื่อนในฉากหลบภัยสั้น ๆ: เสียงที่สำรวมพูดว่า “เรารอที่นี่ได้” พร้อมเสียงฝนเบาเป็นบรรยากาศ และเสียงก้าวเท้าใกล้เข้ามาหนึ่งครั้งหลังประโยค การฟังตรวจที่มีประโยชน์คือถ้อยคำยังฟังชัดหรือไม่ เสียงสื่อความอุ่นใจหรือไม่ และเสียงสัญญาณเข้ามาในจุดที่สมเหตุผลของฉากหรือไม่ อีกโจทย์อาจขอผู้บรรยายเสียงชัดแนะนำสินค้าโดยไม่มีบรรยากาศรอบข้าง นี่เป็นตัวอย่างวิธีระบุเจตนา ไม่ใช่ระเบียนเสียงที่สร้างแล้วหรือสัญญาเรื่องมิกซ์สำเร็จ</p><p>ผู้สร้างระบุการควบคุมเวลาบทสนทนาตัวละครในระดับพรอมต์ทีละ 100 ms ใช้เพื่ออธิบายเวลาที่ประโยคควรเริ่มในลำดับตามบท หรือวางแผนคำพูดให้เข้ากับงานตัดต่อที่มี แยกจังหวะบทสนทนาจากการวางเอฟเฟกต์และบรรยากาศ รุ่นนี้ระบุบทสนทนาตัวละครเป็นจุดเน้นหลักของการควบคุมเวลา ตรวจจุดเริ่ม ช่วงหยุด และเสียงซ้อนจริงกับฉากที่ตั้งใจ ช่วงเวลานี้อธิบายความละเอียดการควบคุมของโมเดล ไม่ได้ตัดความจำเป็นในการฟังการแสดงสุดท้าย</p><p>กำหนดเสียงได้ผ่านคำอธิบายข้อความ ตัวอย่างอ้างอิงที่ได้รับอนุญาต หรือทั้งสองอย่าง ผู้ผลิตนำเสนอเป็นการกำกับเสียงโดยไม่ฝึกโมเดลแยกสำหรับผู้พูดแต่ละคน อธิบายลักษณะเสียงที่คงที่แยกจากอารมณ์ของประโยคปัจจุบัน ตัวละครที่ปรากฏซ้ำอาจต้องมีคำแนะนำตัวสงบและคำตอบเร่งด่วนแต่ยังจำได้ว่าเป็นคนเดิม ในการเตรียมจริง ให้เลือกเสียงอ้างอิงชัดที่ได้ยินเสียงเป้าหมายง่าย และระบุสิ่งที่ต้องถ่ายทอดสู่การแสดงใหม่ รักษาเสียงอ้างอิงและโจทย์ตัวละครให้สอดคล้องเมื่อเตรียมฉากที่เกี่ยวข้อง</p><p>รุ่นนี้ระบุการสร้างในมากกว่า 20 ภาษา รวมจีน อังกฤษ ญี่ปุ่น เกาหลี สเปน อินโดนีเซีย เยอรมัน ฝรั่งเศส ไทย และเวียดนาม อธิบายการปรับเสียงตัวละครที่จำได้ให้เข้ากับจังหวะและการแสดงออกของภาษาต่าง ๆ ส่งบทสนทนาในภาษาสุดท้ายและให้ผู้ฟังที่เข้าใจภาษานั้นตรวจชื่อ การเน้นเสียง ช่วงหยุด และอารมณ์ สำหรับรุ่นหลายภาษา ให้รักษาบทบาทและเจตนาอารมณ์ของตัวละคร พร้อมเผื่อพื้นที่ให้แต่ละบทใช้ถ้อยคำเป็นธรรมชาติ เตรียมคำแปลเป็นส่วนของงานบท แทนการสมมติว่าโจทย์ฉากเสียงให้การตัดสินใจโลคัลไลซ์ครบทุกอย่าง</p><p>ตามประกาศผู้สร้าง Seed Audio 1.0 สร้างได้สูงสุดสองนาทีในรอบเดียวและรองรับการต่อเนื่อง เรื่องยาวได้ประโยชน์จากขอบเขตฉากและโจทย์ตัวละครที่ใช้ซ้ำ ในแต่ละช่วงต่อ ให้ฟังการเปลี่ยนเสียงคน ลักษณะพื้นเสียง และจังหวะ รวมทั้งคำที่เชื่อมแต่ละส่วน มองเสียงที่ส่งกลับเป็นชิ้นงานสำหรับฟัง: ตรวจข้อมูลไฟล์จริงเมื่อเตรียมเล่นหรือนำเข้าโปรแกรมตัดต่อ และเก็บบทกับโจทย์ฉากไว้คู่กันเพื่อแก้ไข งานที่ต่อรวมควรถูกตรวจเป็นฉากต่อเนื่อง ไม่ใช่เพียงคลิปแยก</p><p>ผู้ผลิตอธิบายกรอบร่วมที่เจตนาสร้างสรรค์ระดับภาษากำกับตัวสร้างเสียงแบบ diffusion ผลต่อการเขียนโจทย์คือสามารถพิจารณาเสียงพูดและสภาพแวดล้อมร่วมกัน เน้นความสัมพันธ์ไม่กี่อย่างที่กำหนดฉาก เช่น ประโยคอยู่ด้านหน้าหรือไม่ เอฟเฟกต์ขัดจังหวะหรือไม่ และบรรยากาศหนุนอารมณ์อย่างไร การเพิ่มสัญญาณเสียงที่ไม่เกี่ยวกันมากทำให้หาส่วนที่ต้องแก้ในผลได้ยากขึ้น เปลี่ยนทิศทางของช่วงนั้นเมื่อเสียงสัญญาณแข่งกับบทสนทนาหรือการแสดงไม่ตรงน้ำเสียงที่ตั้งใจ</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/speech</code></summary><dl class=\"method-capabilities\"><div><dt>ขาเข้า</dt><dd><code>text</code></dd></div><div><dt>ขาออก</dt><dd><code>audio</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>bytedance-seed/seed-audio-1-0</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</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>ความยาวขั้นต่ำ: 1</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\">voice</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>ความยาวขั้นต่ำ: 1</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\">response_format</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>mp3, pcm</div></td><td data-cell-label=\"ค่าเริ่มต้น\" data-default=\"known\"><span class=\"card-cell-label\">ค่าเริ่มต้น</span>pcm</td></tr><tr><th data-cell-label=\"ฟิลด์\" scope=\"row\"><span class=\"card-cell-label\">ฟิลด์</span><code class=\"card-field-name\">provider</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</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>text</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.005</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-1119-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1119-panel-0\" aria-selected=\"true\" tabindex=\"0\">ใช้ข้อมูลเข้าจริงและเก็บผลลัพธ์ไว้ให้ครบถ้วน</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-1119-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1119-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\n: &quot;${AILOOT_INPUT_TEXT:?Set the actual documented input value}&quot;\nexport AILOOT_INPUT_TEXT\npython3 - &lt;&lt;&#39;PY_REQUEST&#39;\nimport json,os\nfrom pathlib import Path\nrequest={&#39;model&#39;: &#39;bytedance-seed/seed-audio-1-0&#39;, &#39;input&#39;: &#39;${ACTUAL_INPUT_TEXT}&#39;}\nrequest[&#39;input&#39;]=os.environ[&#39;AILOOT_INPUT_TEXT&#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/speech \\\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 response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\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\">เสียงไบนารีทั้งหมดหรือการตอบกลับ audio_url เดิม ส่วนหัว และแอสเซ็ตทุกชิ้นที่เป็นของคุณ</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><details class=\"card-about\"><summary>การอ่านเนื้อหาแบบอื่น</summary><div class=\"code-group\"><div class=\"cg-bar\"><div class=\"cg-tabs\" role=\"tablist\" aria-label=\"ตัวเลือกโค้ด\"><button class=\"cg-tab\" id=\"model-code-1120-tab-0\" role=\"tab\" type=\"button\" aria-controls=\"model-code-1120-panel-0\" aria-selected=\"true\" tabindex=\"0\">อ่านไฟล์สื่อที่มีอยู่และเป็นของคุณ</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-1120-panel-0\" role=\"tabpanel\" aria-labelledby=\"model-code-1120-tab-0\"><pre data-lang=\"bash\"><code>set -eu\n: &quot;${AILOOT_API_KEY:?Set your Ailoot API key}&quot;\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H &quot;Authorization: Bearer $AILOOT_API_KEY&quot; -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n</code></pre></div></div></div></details><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 ที่ส่งกลับมาไว้เพื่อกระทบยอด อ่านเฉพาะค่า task_id/asset_id ที่ส่งกลับมาจริง หรืออ่านจากคลังสื่อที่เป็นของตนเอง ห้ามสร้าง URL ของงานจาก ID การดำเนินการ และห้ามส่งคำขอสร้างซ้ำเด็ดขาด</p></div></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=bytedance-seed%2Fseed-audio-1-0&amp;route=Ultra&amp;caller=bytedance-seed%2Fseed-audio-1-0&amp;fmt=speech\"><code>bytedance-seed/seed-audio-1-0</code></a></span></p><h4>ชื่อพาธเมธอดอื่น</h4><p class=\"note-s\">ใช้พาธเมธอดที่แสดงด้านบน</p><h4>ID ที่เกี่ยวข้องสำหรับเรียกใช้โมเดล</h4><p class=\"note-s\"><a href=\"#m=bytedance-seed%2Fseed-audio-1-0&amp;route=Ultra&amp;caller=bytedance-seed%2Fseed-audio-1-0&amp;fmt=speech\"><code>bytedance-seed/seed-audio-1-0</code></a></p></section></div>",
      "method_identity": {
        "effective_request_model_id": "bytedance-seed/seed-audio-1-0",
        "fmt": "speech",
        "http": "POST",
        "path": "/v1/audio/speech",
        "request_model_id": "bytedance-seed/seed-audio-1-0",
        "route_label": "Ultra"
      },
      "method_key": "Ultra|speech|/v1/audio/speech|bytedance-seed%2Fseed-audio-1-0",
      "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.",
            "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 URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "เก็บ X-Client-Request-ID ที่ส่งกลับมาไว้เพื่อกระทบยอด อ่านเฉพาะค่า task_id/asset_id ที่ส่งกลับมาจริง หรืออ่านจากคลังสื่อที่เป็นของตนเอง ห้ามสร้าง URL ของงานจาก ID การดำเนินการ และห้ามส่งคำขอสร้างซ้ำเด็ดขาด"
            },
            "outputs": {
              "all_results": "เก็บการตอบกลับและส่วนหัวให้ครบถ้วน เก็บผลลัพธ์จริงทุกรายการ ตัวระบุที่ส่งกลับมาแต่เดิม และฟิลด์ข้อมูลการใช้งานทั้งหมด กู้คืนการดำเนินการเดิมโดยไม่ส่งคำขอสร้างซ้ำ",
              "family": "audio",
              "formats": [
                "mp3",
                "pcm"
              ],
              "result": "เสียงไบนารีทั้งหมดหรือการตอบกลับ audio_url เดิม ส่วนหัว และแอสเซ็ตทุกชิ้นที่เป็นของคุณ"
            },
            "parameters": [
              {
                "enum": [
                  "bytedance-seed/seed-audio-1-0"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "max_length": 3000,
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "voice",
                "required": false,
                "type": "string"
              },
              {
                "default": "pcm",
                "default_known": true,
                "enum": [
                  "mp3",
                  "pcm"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input": {
                  "maxLength": 3000,
                  "minLength": 1,
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "bytedance-seed/seed-audio-1-0"
                  ],
                  "type": "string"
                },
                "provider": {
                  "description": "Documented speech data policy and provider-specific options.",
                  "properties": {
                    "data_collection": {
                      "enum": [
                        "allow",
                        "deny",
                        null
                      ],
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "options": {
                      "type": "object"
                    },
                    "zdr": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "response_format": {
                  "default": "pcm",
                  "enum": [
                    "mp3",
                    "pcm"
                  ],
                  "type": "string"
                },
                "voice": {
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "${ACTUAL_INPUT_TEXT}",
                "model": "bytedance-seed/seed-audio-1-0"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "required": [
              "model",
              "input"
            ]
          },
          "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 URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "ค่า task_id ที่ส่งกลับมาจริง หรือระเบียนในคลังสื่อ",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "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": "audio",
            "formats": [
              "mp3",
              "pcm"
            ],
            "result": "Complete binary audio or original audio_url response, headers and every owned asset."
          }
        },
        "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 output audio second"
            },
            "label": "output audio second",
            "units": [
              {
                "amount": "0.005",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_output_second",
                "label": "output audio second",
                "native_amount_usd_per_unit": "0.005",
                "native_quantity": 1,
                "public_unit_label": "per output audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "audio_output_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_INPUT_TEXT:?Set the actual documented input value}\"\nexport AILOOT_INPUT_TEXT\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\nrequest={'model': 'bytedance-seed/seed-audio-1-0', 'input': '${ACTUAL_INPUT_TEXT}'}\nrequest['input']=os.environ['AILOOT_INPUT_TEXT']\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/speech \\\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 response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n",
            "label": "Use actual input and retain the complete result",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "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": [
          "text"
        ],
        "label": "เสียงพูด",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_speech",
        "out": null,
        "output": [
          "audio"
        ],
        "path": "/v1/audio/speech",
        "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_output_second": 0.005
          }
        },
        "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 output audio second"
            },
            "label": "output audio second",
            "units": [
              {
                "amount": "0.005",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_output_second",
                "label": "output audio second",
                "native_amount_usd_per_unit": "0.005",
                "native_quantity": 1,
                "public_unit_label": "per output audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "audio_output_second"
              }
            ]
          }
        ],
        "request_model_id": "bytedance-seed/seed-audio-1-0",
        "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.005",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_output_second",
            "label": "output audio second",
            "native_amount_usd_per_unit": "0.005",
            "native_quantity": 1,
            "public_unit_label": "per output audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "audio_output_second"
          }
        ]
      }
    }
  ],
  "model_id": "bytedance-seed/seed-audio-1-0",
  "nativeProvenance": {
    "input_facts_canonical_sha256": "bd4b8b245b469bf7b65ba10e9e6e7300efed494a8754281dd6610ada9c556c43",
    "input_html_sha256": "ee31f0d2c99c83c436b3c6d721bd943c7476a11bec0513fad5203361cac9b010",
    "private_audit_sha256": "4269c5624700b23e3e6cbd06e5e220e290d17568860303106776e33957871248",
    "role": "historical-normalized-input-audit-hashes",
    "schema": "ailoot-native-model-provenance-v2"
  },
  "page": {
    "canonical": "https://ailoot.ai/models/th/bytedance-seed-seed-audio-1-0/",
    "description": "ByteDance Seed Audio 1.0 สร้างการแสดงเสียงพูดและฉากเสียงจากโจทย์สร้างสรรค์ ประสานเสียงคน เอฟเฟกต์ และบรรยากาศ รองรับการกำหนดจังหวะบทสนทนาทีละ 100 ms และครอบคลุมมากกว่า 20 ภาษา ผู้สร้างระบุความยาวสูงสุดสองนาทีต่อการสร้างพร้อมการต่อเนื่อง",
    "locale": "th",
    "md_url": "https://ailoot.ai/models/th/bytedance-seed-seed-audio-1-0/index.md",
    "title": "ByteDance Seed: Seed Audio 1.0 — Ailoot",
    "url": "https://ailoot.ai/models/th/bytedance-seed-seed-audio-1-0/"
  },
  "rawModel": {
    "about": "ByteDance Seed Audio 1.0 เป็นโมเดลสร้างเสียงที่จัดงานโดยยึดฉากเสียง สามารถกำกับเสียงพูด เอฟเฟกต์ และบรรยากาศร่วมกันผ่านโจทย์ข้อความ จึงมีประโยชน์กับเรื่องเล่ามีเสียง ฉากเผชิญหน้าในเกม บทละครสั้น หรือฉากประกอบวิดีโอที่ตัดต่อแล้ว สำหรับงานเสียงพูดอย่างเดียว ให้อธิบายผู้พูดและการแสดง สำหรับฉากเต็มกว่า ให้อธิบายสภาพแวดล้อมเสียงและความสัมพันธ์ของบทสนทนากับเสียงรอบข้างด้วย\n\nเตรียมโจทย์ตามลำดับที่ผู้ฟังควรได้ยินฉาก ระบุตัวละคร สภาพอารมณ์ที่ตั้งใจ และถ้อยคำที่ต้องพูด จากนั้นอธิบายสถานที่ เสียงสัญญาณสำคัญ และพัฒนาการของช่วงเหตุการณ์ โจทย์การผลิตควรแยกบทสนทนาตรงตัวออกจากคำอธิบายฉาก เพื่อให้ตรวจผลกับทั้งสองส่วนได้ ระบุองค์ประกอบที่จำเป็นต่อความเข้าใจและสิ่งที่ควรอยู่ฉากหลัง ห้องเงียบ สถานีแออัด และลานเปิดต้องการออกแบบเสียงต่างกัน แม้ประโยคพูดเหมือนกัน\n\nตัวอย่างเฉพาะคือ ตัวละครเกมปลอบเพื่อนในฉากหลบภัยสั้น ๆ: เสียงที่สำรวมพูดว่า “เรารอที่นี่ได้” พร้อมเสียงฝนเบาเป็นบรรยากาศ และเสียงก้าวเท้าใกล้เข้ามาหนึ่งครั้งหลังประโยค การฟังตรวจที่มีประโยชน์คือถ้อยคำยังฟังชัดหรือไม่ เสียงสื่อความอุ่นใจหรือไม่ และเสียงสัญญาณเข้ามาในจุดที่สมเหตุผลของฉากหรือไม่ อีกโจทย์อาจขอผู้บรรยายเสียงชัดแนะนำสินค้าโดยไม่มีบรรยากาศรอบข้าง นี่เป็นตัวอย่างวิธีระบุเจตนา ไม่ใช่ระเบียนเสียงที่สร้างแล้วหรือสัญญาเรื่องมิกซ์สำเร็จ\n\nผู้สร้างระบุการควบคุมเวลาบทสนทนาตัวละครในระดับพรอมต์ทีละ 100 ms ใช้เพื่ออธิบายเวลาที่ประโยคควรเริ่มในลำดับตามบท หรือวางแผนคำพูดให้เข้ากับงานตัดต่อที่มี แยกจังหวะบทสนทนาจากการวางเอฟเฟกต์และบรรยากาศ รุ่นนี้ระบุบทสนทนาตัวละครเป็นจุดเน้นหลักของการควบคุมเวลา ตรวจจุดเริ่ม ช่วงหยุด และเสียงซ้อนจริงกับฉากที่ตั้งใจ ช่วงเวลานี้อธิบายความละเอียดการควบคุมของโมเดล ไม่ได้ตัดความจำเป็นในการฟังการแสดงสุดท้าย\n\nกำหนดเสียงได้ผ่านคำอธิบายข้อความ ตัวอย่างอ้างอิงที่ได้รับอนุญาต หรือทั้งสองอย่าง ผู้ผลิตนำเสนอเป็นการกำกับเสียงโดยไม่ฝึกโมเดลแยกสำหรับผู้พูดแต่ละคน อธิบายลักษณะเสียงที่คงที่แยกจากอารมณ์ของประโยคปัจจุบัน ตัวละครที่ปรากฏซ้ำอาจต้องมีคำแนะนำตัวสงบและคำตอบเร่งด่วนแต่ยังจำได้ว่าเป็นคนเดิม ในการเตรียมจริง ให้เลือกเสียงอ้างอิงชัดที่ได้ยินเสียงเป้าหมายง่าย และระบุสิ่งที่ต้องถ่ายทอดสู่การแสดงใหม่ รักษาเสียงอ้างอิงและโจทย์ตัวละครให้สอดคล้องเมื่อเตรียมฉากที่เกี่ยวข้อง\n\nรุ่นนี้ระบุการสร้างในมากกว่า 20 ภาษา รวมจีน อังกฤษ ญี่ปุ่น เกาหลี สเปน อินโดนีเซีย เยอรมัน ฝรั่งเศส ไทย และเวียดนาม อธิบายการปรับเสียงตัวละครที่จำได้ให้เข้ากับจังหวะและการแสดงออกของภาษาต่าง ๆ ส่งบทสนทนาในภาษาสุดท้ายและให้ผู้ฟังที่เข้าใจภาษานั้นตรวจชื่อ การเน้นเสียง ช่วงหยุด และอารมณ์ สำหรับรุ่นหลายภาษา ให้รักษาบทบาทและเจตนาอารมณ์ของตัวละคร พร้อมเผื่อพื้นที่ให้แต่ละบทใช้ถ้อยคำเป็นธรรมชาติ เตรียมคำแปลเป็นส่วนของงานบท แทนการสมมติว่าโจทย์ฉากเสียงให้การตัดสินใจโลคัลไลซ์ครบทุกอย่าง\n\nตามประกาศผู้สร้าง Seed Audio 1.0 สร้างได้สูงสุดสองนาทีในรอบเดียวและรองรับการต่อเนื่อง เรื่องยาวได้ประโยชน์จากขอบเขตฉากและโจทย์ตัวละครที่ใช้ซ้ำ ในแต่ละช่วงต่อ ให้ฟังการเปลี่ยนเสียงคน ลักษณะพื้นเสียง และจังหวะ รวมทั้งคำที่เชื่อมแต่ละส่วน มองเสียงที่ส่งกลับเป็นชิ้นงานสำหรับฟัง: ตรวจข้อมูลไฟล์จริงเมื่อเตรียมเล่นหรือนำเข้าโปรแกรมตัดต่อ และเก็บบทกับโจทย์ฉากไว้คู่กันเพื่อแก้ไข งานที่ต่อรวมควรถูกตรวจเป็นฉากต่อเนื่อง ไม่ใช่เพียงคลิปแยก\n\nผู้ผลิตอธิบายกรอบร่วมที่เจตนาสร้างสรรค์ระดับภาษากำกับตัวสร้างเสียงแบบ diffusion ผลต่อการเขียนโจทย์คือสามารถพิจารณาเสียงพูดและสภาพแวดล้อมร่วมกัน เน้นความสัมพันธ์ไม่กี่อย่างที่กำหนดฉาก เช่น ประโยคอยู่ด้านหน้าหรือไม่ เอฟเฟกต์ขัดจังหวะหรือไม่ และบรรยากาศหนุนอารมณ์อย่างไร การเพิ่มสัญญาณเสียงที่ไม่เกี่ยวกันมากทำให้หาส่วนที่ต้องแก้ในผลได้ยากขึ้น เปลี่ยนทิศทางของช่วงนั้นเมื่อเสียงสัญญาณแข่งกับบทสนทนาหรือการแสดงไม่ตรงน้ำเสียงที่ตั้งใจ\n\nความต่อเนื่องของเสียงในเนื้อหายาวซับซ้อนและเวลาที่ละเอียดขึ้นระหว่างองค์ประกอบเสียงยังเป็นด้านพัฒนาที่ประกาศรุ่นระบุ ให้ตรวจการผลิตอย่างเฉพาะเจาะจง ได้แก่ ถ้อยคำตรงตัว อัตลักษณ์ผู้พูด ภาษา จุดเข้า ความชัดเจน และความสอดคล้องตลอดส่วนต่อ ผลที่ใช้ได้ของโมเดลนี้คือฉากเสียงหรือการแสดงเสียงพูดที่ได้ยินจริง สามารถตัดสินใจเรื่องจุดตัด คำบรรยาย และรูปแบบส่งมอบแยกจากผลจริงนั้นและข้อกำหนดของงานปลายทาง",
    "alias_of": null,
    "aliases": [],
    "author": "ByteDance Seed",
    "capabilities": {
      "context_length": 0,
      "manufacturer_input": [
        "text"
      ],
      "manufacturer_output": [
        "speech"
      ]
    },
    "card_routes": [
      {
        "label": "Ultra",
        "rates": [
          {
            "amount": "0.005",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_output_second",
            "label": "output audio second",
            "native_amount_usd_per_unit": "0.005",
            "native_quantity": 1,
            "public_unit_label": "per output audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "audio_output_second"
          }
        ],
        "summary": "ดูราคาตามการกำหนดค่าแบบครบถ้วนในรายละเอียด"
      }
    ],
    "ctx": null,
    "formats": [
      "speech"
    ],
    "id": "bytedance-seed/seed-audio-1-0",
    "input": [
      "text"
    ],
    "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.",
            "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 URL; never construct token"
                }
              ],
              "mode": "synchronous_result_then_owned_library",
              "operation_id_is_not_task_id": true,
              "status": [
                {
                  "http": "GET",
                  "id_source": "actual returned task_id or media library record",
                  "path": "/v1/media/tasks/{task_id}"
                }
              ],
              "unknown": "เก็บ X-Client-Request-ID ที่ส่งกลับมาไว้เพื่อกระทบยอด อ่านเฉพาะค่า task_id/asset_id ที่ส่งกลับมาจริง หรืออ่านจากคลังสื่อที่เป็นของตนเอง ห้ามสร้าง URL ของงานจาก ID การดำเนินการ และห้ามส่งคำขอสร้างซ้ำเด็ดขาด"
            },
            "outputs": {
              "all_results": "เก็บการตอบกลับและส่วนหัวให้ครบถ้วน เก็บผลลัพธ์จริงทุกรายการ ตัวระบุที่ส่งกลับมาแต่เดิม และฟิลด์ข้อมูลการใช้งานทั้งหมด กู้คืนการดำเนินการเดิมโดยไม่ส่งคำขอสร้างซ้ำ",
              "family": "audio",
              "formats": [
                "mp3",
                "pcm"
              ],
              "result": "เสียงไบนารีทั้งหมดหรือการตอบกลับ audio_url เดิม ส่วนหัว และแอสเซ็ตทุกชิ้นที่เป็นของคุณ"
            },
            "parameters": [
              {
                "enum": [
                  "bytedance-seed/seed-audio-1-0"
                ],
                "enum_known": true,
                "name": "model",
                "required": true,
                "type": "string"
              },
              {
                "max_length": 3000,
                "min_length": 1,
                "name": "input",
                "required": true,
                "type": "string"
              },
              {
                "min_length": 1,
                "name": "voice",
                "required": false,
                "type": "string"
              },
              {
                "default": "pcm",
                "default_known": true,
                "enum": [
                  "mp3",
                  "pcm"
                ],
                "enum_known": true,
                "name": "response_format",
                "required": false,
                "type": "string"
              },
              {
                "name": "provider",
                "required": false,
                "type": "object"
              }
            ],
            "request_schema": {
              "properties": {
                "input": {
                  "maxLength": 3000,
                  "minLength": 1,
                  "type": "string"
                },
                "model": {
                  "enum": [
                    "bytedance-seed/seed-audio-1-0"
                  ],
                  "type": "string"
                },
                "provider": {
                  "description": "Documented speech data policy and provider-specific options.",
                  "properties": {
                    "data_collection": {
                      "enum": [
                        "allow",
                        "deny",
                        null
                      ],
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "options": {
                      "type": "object"
                    },
                    "zdr": {
                      "type": [
                        "boolean",
                        "null"
                      ]
                    }
                  },
                  "type": "object"
                },
                "response_format": {
                  "default": "pcm",
                  "enum": [
                    "mp3",
                    "pcm"
                  ],
                  "type": "string"
                },
                "voice": {
                  "minLength": 1,
                  "type": "string"
                }
              },
              "required": [
                "model",
                "input"
              ],
              "type": "object"
            },
            "schema_template": {
              "actual_file_preparation_required": false,
              "body": {
                "input": "${ACTUAL_INPUT_TEXT}",
                "model": "bytedance-seed/seed-audio-1-0"
              },
              "content_type": "application/json"
            }
          },
          "input": {
            "content_type": "application/json",
            "material_types": [
              "text"
            ],
            "required": [
              "model",
              "input"
            ]
          },
          "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 URL; never construct token"
              }
            ],
            "mode": "synchronous_result_then_owned_library",
            "operation_id_is_not_task_id": true,
            "status": [
              {
                "http": "GET",
                "id_source": "ค่า task_id ที่ส่งกลับมาจริง หรือระเบียนในคลังสื่อ",
                "path": "/v1/media/tasks/{task_id}"
              }
            ],
            "unknown": "Keep the returned X-Client-Request-ID for reconciliation. Read only actual returned task_id/asset_id values or the owned media library; never build a task URL from the operation ID and never resubmit creation."
          },
          "method": {
            "http": "POST",
            "path": "/v1/audio/speech"
          },
          "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": "audio",
            "formats": [
              "mp3",
              "pcm"
            ],
            "result": "Complete binary audio or original audio_url response, headers and every owned asset."
          }
        },
        "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 output audio second"
            },
            "label": "output audio second",
            "units": [
              {
                "amount": "0.005",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_output_second",
                "label": "output audio second",
                "native_amount_usd_per_unit": "0.005",
                "native_quantity": 1,
                "public_unit_label": "per output audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "audio_output_second"
              }
            ]
          }
        ],
        "examples": [
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\n: \"${AILOOT_INPUT_TEXT:?Set the actual documented input value}\"\nexport AILOOT_INPUT_TEXT\npython3 - <<'PY_REQUEST'\nimport json,os\nfrom pathlib import Path\nrequest={'model': 'bytedance-seed/seed-audio-1-0', 'input': '${ACTUAL_INPUT_TEXT}'}\nrequest['input']=os.environ['AILOOT_INPUT_TEXT']\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/speech \\\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 response and headers, every actual output, original returned identifiers and all usage fields. Recover the original operation without submitting creation again.\n",
            "label": "Use actual input and retain the complete result",
            "language": "bash"
          },
          {
            "code": "set -eu\n: \"${AILOOT_API_KEY:?Set your Ailoot API key}\"\ncurl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/media/assets \\\n  -H \"Authorization: Bearer $AILOOT_API_KEY\" -o owned-assets.json\n# Preserve every returned asset and follow its exact signed content URL. Do not construct a signed token.\n",
            "label": "Read existing owned assets",
            "language": "bash"
          }
        ],
        "family": "openai",
        "fast_multiplier": null,
        "flex_multiplier": null,
        "fmt": "speech",
        "hints": [
          "Use the exact caller model ID and documented input representation.",
          "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": [
          "text"
        ],
        "label": "เสียงพูด",
        "max_out": null,
        "max_reasoning_effort_multiplier": null,
        "method_aliases": [],
        "native_endpoint": "audio_speech",
        "out": null,
        "output": [
          "audio"
        ],
        "path": "/v1/audio/speech",
        "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_output_second": 0.005
          }
        },
        "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 output audio second"
            },
            "label": "output audio second",
            "units": [
              {
                "amount": "0.005",
                "amount_unit": "usd_per_exact_native_unit",
                "billing_input": true,
                "estimate_only": false,
                "key": "audio_output_second",
                "label": "output audio second",
                "native_amount_usd_per_unit": "0.005",
                "native_quantity": 1,
                "public_unit_label": "per output audio second",
                "quantity": 1,
                "quantity_is_estimate": false,
                "rate_role": "typed_native_retail_rate",
                "side": "out",
                "unit": "audio_output_second"
              }
            ]
          }
        ],
        "request_model_id": "bytedance-seed/seed-audio-1-0",
        "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.005",
            "amount_unit": "usd_per_exact_native_unit",
            "billing_input": true,
            "estimate_only": false,
            "key": "audio_output_second",
            "label": "output audio second",
            "native_amount_usd_per_unit": "0.005",
            "native_quantity": 1,
            "public_unit_label": "per output audio second",
            "quantity": 1,
            "quantity_is_estimate": false,
            "rate_role": "typed_native_retail_rate",
            "side": "out",
            "unit": "audio_output_second"
          }
        ]
      }
    ],
    "model_aliases": [
      {
        "canonical_model_id": "bytedance-seed/seed-audio-1-0",
        "request_model_id": "bytedance-seed/seed-audio-1-0",
        "route_label": "Ultra"
      }
    ],
    "name": "ByteDance Seed: Seed Audio 1.0",
    "price": {
      "in": null,
      "in_label": null,
      "out": 0.005,
      "out_label": "per output audio second",
      "sort_in": null,
      "sort_out": 0.005,
      "varies": true
    },
    "short": "ByteDance Seed Audio 1.0 สร้างการแสดงเสียงพูดและฉากเสียงจากโจทย์สร้างสรรค์ ประสานเสียงคน เอฟเฟกต์ และบรรยากาศ รองรับการกำหนดจังหวะบทสนทนาทีละ 100 ms และครอบคลุมมากกว่า 20 ภาษา ผู้สร้างระบุความยาวสูงสุดสองนาทีต่อการสร้างพร้อมการต่อเนื่อง"
  },
  "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": "ByteDance Seed Audio 1.0 สร้างการแสดงเสียงพูดและฉากเสียงจากโจทย์สร้างสรรค์ ประสานเสียงคน เอฟเฟกต์ และบรรยากาศ รองรับการกำหนดจังหวะบทสนทนาทีละ 100 ms และครอบคลุมมากกว่า 20 ภาษา ผู้สร้างระบุความยาวสูงสุดสองนาทีต่อการสร้างพร้อมการต่อเนื่อง",
  "source": {
    "audit_sha256": "2e00086bcbfc28e64d0cebe97aa47c17d8d5618963027f8ffb9dc6123d7d25b1",
    "bridge_map_sha256": "1125275768b9636fc8461bc7da5061239a81ddfe508e2557843ca42c58ab0036",
    "raw_model_json_sha256": "335bd85a7434f26b240795786b7358370b40104bf1425ff4a9992d2f1c944739",
    "renderer_sha256": "890edb706fafafdd4f598bb324acf65fada58918b0911b97eb80e68be2ef65d9"
  },
  "sourceRevision": "3095f2aa3a412fab64b288273ff30be448e14bed93ee40cb86eaff16504fc164"
}
