Paxa Labs
บล็อก

Temperature และแท็กช่วงหยุดบน Paxa TTS Flash v2

Paxa TTS Flash v2 รับค่า Temperature เพื่อคุมการอ่านให้นิ่งขึ้นหรือให้ต่างกันมากขึ้น และรับแท็กช่วงหยุดที่ใส่ความเงียบตามความยาวที่กำหนดหลังคำใดก็ได้

· Paxa Labs · อ่าน 4 นาที

ที่ผ่านมา ข้อความเดิมในเสียงเดิมจะได้จังหวะที่ต่างกันเล็กน้อยทุกครั้งที่ส่งคำขอ งานเล่าเรื่องได้ประโยชน์จากความต่างนี้ แต่เมนูโทรศัพท์ ข้อความในแอปที่เล่นซ้ำเป็นพันครั้ง หรือประโยคที่ต้องสร้างใหม่ให้ตรงกับงานตัดต่อ ต้องการเสียงอ่านที่ใกล้เคียงกับที่ทีมอนุมัติไว้

วันนี้ Paxa TTS Flash v2 มีตัวควบคุมใหม่สองอย่าง Temperature กำหนดว่าการอ่านแต่ละคำขอจะต่างกันมากแค่ไหน ส่วนแท็กช่วงหยุดใส่ความเงียบตามความยาวที่กำหนดไว้ตรงจุดที่เขียน ทั้งสองอย่างใช้ได้ทั้งใน Console และผ่าน API

ประโยคเดียวในเสียงฝอยทอง ค่าละสองครั้งที่ 0 0.5 และ 2

Temperature#

Temperature มีค่าตั้งแต่ 0 ถึง 2 ปรับได้ทีละ 0.1 ค่าเริ่มต้นคือ 0.5 ค่านี้เปลี่ยนจังหวะ ช่วงหยุด การหายใจ และทำนองของการอ่านในแต่ละคำขอ คำขอที่ไม่ได้ส่งค่านี้จะอ่านที่ 0.5 ซึ่งต่างกันน้อยกว่าคำขอก่อนหน้านี้

  • ที่ 0 การอ่านต่างกันน้อยที่สุด ข้อความเดิมในเสียงเดิมจะได้จังหวะและทำนองเสียงใกล้เคียงกันที่สุดในแต่ละคำขอ และสองครั้งยังอาจต่างกันได้
  • ที่ 0.5 ซึ่งเป็นค่าเริ่มต้น การอ่านจะต่างกันเล็กน้อยในแต่ละคำขอ การไม่ส่งฟิลด์นี้ถือเป็นคำขอเดียวกับการส่ง 0.5
  • ที่ 2 การอ่านจะต่างกันมากที่สุด

Temperature คู่กับคำกำกับ#

คำกำกับกำหนดอารมณ์ ส่วน Temperature กำหนดว่าการอ่านแบบนั้นจะต่างกันมากแค่ไหน กะเพรา อ่านประโยคที่มี [sad] และอีกประโยคที่มี [angry] ประโยคละสองครั้งที่ 0 และสองครั้งที่ 2

สองประโยคที่มี [sad] และ [angry] ในเสียงกะเพรา ประโยคละสองครั้งที่ 0 และ 2

Temperature ต่ำเหมาะกับประโยคที่มีคำกำกับและเล่นซ้ำหลายครั้ง เช่น ข้อความในแอปหรือบทพูดของตัวละครในเกม ส่วน Temperature สูงช่วยให้ฉากเดียวได้หลายเทคไว้เลือก

ใน Console เครื่องมือ Speech มีแถบเลื่อน Temperature อยู่ใต้ Speed โดยมีป้าย More stable ที่ 0 และ More creative ที่ 2 ตรงกลางแสดง Default เมื่ออยู่ที่ 0.5 และเป็นปุ่ม Reset เมื่ออยู่ที่ค่าอื่น ลิงก์ที่แชร์หรือลิงก์ตรงจะเก็บค่านี้ไว้ด้วย

ใน API temperature เป็นฟิลด์ของ POST /v1/tts ของเอนด์พอยต์เสียงพูดที่เข้ากันได้กับ OpenAI และของเฟรม start ในการเชื่อมต่อแบบไลฟ์ ค่าบริการเท่ากันทุกค่า Temperature

curl -X POST https://api.paxalabs.com/v1/tts \
  -H "Authorization: Bearer $PAXA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "สวัสดีครับ ยินดีต้อนรับสู่ Paxa Labs",
    "voice": "khanomkrok",
    "model": "paxa-tts-flash-v2",
    "temperature": 0
  }' \
  --output speech.mp3

Paxa TTS Flash v2 อ่านค่า Temperature ส่วน Paxa TTS Flash ใช้ความต่างแบบเดิมของตัวเอง และรับเฉพาะค่าที่ปัดแล้วได้ 0.5 ค่าอื่นจะได้คำตอบ 400 validation ก่อนคิดค่าบริการ คู่มือ Temperature มีรายละเอียดเรื่องเสียงที่ออกแบบเองและการลองใหม่ด้วย Idempotency-Key

แท็กช่วงหยุด#

แท็กช่วงหยุดเพิ่มความเงียบหลังคำที่อยู่ก่อนแท็ก เขียนความยาวแบบมีชื่อ ได้แก่ [short pause] [pause] หรือ [long pause] หรือกำหนดความยาวเอง เช่น [pause 300ms] ทุกเสียงของ Paxa TTS Flash v2 อ่านแท็กเหล่านี้ได้ ส่วน Paxa TTS Flash ไม่อ่านแท็กช่วงหยุด

ประโยคเดียวในเสียงนมเย็น กับช่วงหยุดแต่ละแบบ

ช่วงหยุดแบบมีชื่อจะยาวเท่าใดขึ้นอยู่กับภาษาของคำที่อยู่ก่อนแท็ก

ภาษา[short pause][pause][long pause]
ไทย130 ms180 ms460 ms
จีน100 ms140 ms360 ms
อังกฤษและภาษาอื่น120 ms170 ms460 ms
  • [pause 300ms] [pause 0.3s] และ [pause:300] คือช่วงหยุดเดียวกัน ตัวเลขที่ไม่มีหน่วยนับเป็นมิลลิวินาที
  • ความยาวที่กำหนดเองจะปัดเป็นช่วงละ 10 ms ที่ใกล้ที่สุด ได้สูงสุด 500 ms ค่าที่ยาวกว่านั้น เช่น [pause 1s] จะหยุดเพียง 500 ms
  • ช่วงหยุดจะบวกเพิ่มจากช่องว่างที่การอ่านเว้นไว้หลังคำนั้นอยู่แล้ว แท็กเดียวกันหลังจบประโยคจึงเงียบนานกว่าแท็กที่อยู่กลางประโยค
  • ช่วงหยุดยาวเท่าเดิมทุกค่า Speed

แท็กช่วงหยุดคือข้อความ ตัวอักษรของแท็กนับรวมในความยาวและค่าบริการของคำขอเหมือนตัวอักษรอื่น คู่มือช่วงหยุด มีรายละเอียดที่เหลือ รวมถึงการเชื่อมต่อแบบไลฟ์

อัปเดตอื่นในรอบนี้#

[emphasis] อ่านเป็นคำกำกับแล้ว แบบเดียวกับ [whispering] หรือ [excited]

คำถามที่พบบ่อย#

Temperature เปลี่ยนค่าบริการไหม#

ค่าบริการเท่ากันทุกค่า Temperature ตั้งแต่ 0 ถึง 2

สองครั้งที่ 0 ใกล้เคียงกันแค่ไหน#

ใกล้เคียงกันที่สุดในทุกค่า ทั้งจังหวะ ช่วงหยุด และทำนองเสียง แต่ไม่รับประกันว่าจะตรงกัน

ช่วงหยุดยาวเกิน 500 ms ได้ไหม#

แท็กหนึ่งตัวหยุดได้นานสุด 500 ms แท็กที่ยาวกว่านั้นจะหยุดเพียง 500 ms และไม่ถูกปฏิเสธ

อ่านต่อ

โพสต์อื่นในบล็อก