AI พูดภาษาไทย รันในเครื่อง

🎙️

AI พูดภาษาไทย “ฟรี”
รันในเครื่องตัวเอง + โคลนเสียงได้

แปลงข้อความไทยเป็นเสียงพูดโดยไม่ต้องส่งข้อมูลขึ้นคลาวด์ และใช้ไฟล์เสียงตัวอย่างสั้น ๆ เพื่อเลียนเสียงของเราเอง — ใช้ GPU หรือ CPU ก็ได้ เหมาะกับงานพากย์เสียง ระบบอ่านข้อความ และ Voice Bot

พร้อมทางเลือกแบบคลาวด์ด้วย Node.js ที่ติดตั้งไม่ถึงนาที สำหรับงานที่ไม่ต้องโคลนเสียง

🎯 เป้าหมาย: จบบทนี้ ผู้เรียนจะติดตั้งและเปิดหน้าเว็บใช้งานได้จริงบนเครื่องตัวเอง สร้างเสียงพูดไทยจากข้อความได้ แก้ปัญหาอ่านผิด/อ่านข้ามคำเป็น และรู้ว่าเอาไปใช้เชิงพาณิชย์ได้หรือไม่
⚠️ อ่านก่อน — บทความที่แชร์กันมีสองโปรเจกต์ปนกัน: F5-TTS-THAI (ตัวที่อยู่ในภาพหน้าจอ) กับ ThonburianTTS เป็นคนละโปรเจกต์ คนละทีม แม้จะต่อยอดจากฐานเดียวกันคือ F5-TTS · เงื่อนไขลิขสิทธิ์ของสองตัวนี้ต่างกันมาก จึงต้องแยกให้ชัดก่อนเอาไปใช้งานจริง
🔍 สองโปรเจกต์ที่มักถูกเข้าใจว่าเป็นตัวเดียวกัน
 F5-TTS-THAIThonburianTTS
ผู้พัฒนาVYNCX / VIZINTZOR (นักพัฒนาอิสระ)Looloo Technology + WordSense + Biodatlab ม.มหิดล
หน้าเว็บใช้งานมี (ตัวในภาพหน้าจอ)มี
งานวิจัยไม่มีมี (iSAI-NLP 2025)
โค้ดMITMIT
โมเดลv1 = CC BY 4.0 · v2 = ไม่ระบุสัญญาอนุญาตCC BY-NC-SA 4.0 (ห้ามพาณิชย์)

🧬 ทั้งคู่ต่อยอดจาก F5-TTS ต้นทาง (โค้ด MIT) — จุดเด่นร่วมกันคือ zero-shot voice cloning คือใช้เสียงตัวอย่างสั้น ๆ ก็เลียนเสียงได้ ไม่ต้องเทรนใหม่

⚖️ ลิขสิทธิ์ — จุดที่พลาดกันบ่อยที่สุด
สิ่งที่ใช้สัญญาอนุญาตใช้เชิงพาณิชย์ได้ไหม
โค้ด F5-TTS ต้นทาง + F5-TTS-THAIMIT✅ ได้
โมเดล F5-TTS-THAI v1CC BY 4.0✅ ได้ ถ้าให้เครดิต
โมเดล F5-TTS-THAI v2ไม่ระบุ⚠️ เสี่ยงที่สุด — ไม่ระบุ = ไม่มีการอนุญาต
โมเดล ThonburianTTSCC BY-NC-SA 4.0❌ ไม่ได้ (NC = ห้ามพาณิชย์)
🚫 สามข้อที่ต้องจำ:
🖼️ หน้าตาโปรแกรมเมื่อติดตั้งเสร็จ
หน้าเว็บ F5-TTS-THAI ที่เปิดจาก 127.0.0.1:7860 มีช่องใส่ข้อความ ปุ่มสร้างเสียง เลือกโมเดล v1/v2 และช่องอัปโหลดเสียงต้นแบบ
หน้าเว็บเปิดที่ 127.0.0.1:7860 — ทำงานในเครื่องล้วน ไม่ต้องต่ออินเทอร์เน็ตตอนใช้งาน

💡 หน้าตาอาจต่างจากนี้เล็กน้อยตามเวอร์ชันที่โหลดมา — ปุ่มมาตรฐานของโปรเจกต์ต้นทางชื่อ 🚀สร้าง และกล่องตั้งค่าชื่อ ⚙️ตั้งค่า

🎯 ภารกิจ 5 ขั้นตอน
💾 ขั้นตอนติดตั้ง — เลือกตามเครื่องของคุณ

ต้องมี Python 3.10 ขึ้นไป · เตรียมพื้นที่ว่างอย่างน้อย 5 GB (ตัวโมเดลไฟล์เดียว ~1.35 GB และยังมีไลบรารีอีกจำนวนมาก)

🪟 วิธีที่ง่ายที่สุด — ใช้ไฟล์ติดตั้งอัตโนมัติ
1) โหลดโปรเจกต์แล้วรัน install.bat
git clone https://github.com/VYNCX/F5-TTS-THAI.git
cd F5-TTS-THAI

จากนั้น ดับเบิลคลิกไฟล์ install.bat ในโฟลเดอร์ — ไฟล์นี้จะสร้าง venv ติดตั้งไลบรารี ติดตั้ง PyTorch แบบ CUDA และเปิดหน้าเว็บให้เองทั้งหมด

2) ครั้งต่อไปเปิดใช้งาน
app-webui.bat

ดับเบิลคลิก app-webui.bat ได้เลย ไม่ต้องติดตั้งซ้ำ

🔧 หรือจะติดตั้งเองทีละคำสั่ง
ติดตั้งด้วยมือ (Windows)
git clone https://github.com/VYNCX/F5-TTS-THAI.git
cd F5-TTS-THAI
python -m venv venv
call venv/scripts/activate
pip install git+https://github.com/VYNCX/F5-TTS-THAI.git

pip install torch==2.3.0+cu118 torchaudio==2.3.0+cu118 --extra-index-url https://download.pytorch.org/whl/cu118

บรรทัดสุดท้ายคือ PyTorch แบบใช้การ์ดจอ NVIDIA (CUDA 11.8) — ถ้าเครื่องไม่มีการ์ดจอ NVIDIA ให้ข้ามบรรทัดนี้ โปรแกรมจะรันด้วย CPU ได้แต่ช้ากว่ามาก

🍎 Mac ชิป M1/M2/M3/M4 ใช้ได้ — โปรแกรมจะเลือกใช้ตัวเร่ง MPS ของ Apple ให้อัตโนมัติ (ในภาพหน้าจอจะเห็นคำว่า อุปกรณ์: mps) · ห้ามติดตั้ง PyTorch แบบ cu118 เพราะเป็นของการ์ดจอ NVIDIA เท่านั้น
ติดตั้งบน macOS
git clone https://github.com/VYNCX/F5-TTS-THAI.git
cd F5-TTS-THAI
python3 -m venv venv
source venv/bin/activate
pip install torch torchaudio
pip install git+https://github.com/VYNCX/F5-TTS-THAI.git

⚠️ ไฟล์ .bat ในโปรเจกต์ใช้ได้เฉพาะ Windows · บน Mac ต้องพิมพ์คำสั่งเองแบบด้านบน และคำสั่งเปิด venv คือ source venv/bin/activate ไม่ใช่ call venv/scripts/activate

เปิดหน้าเว็บใช้งาน
source venv/bin/activate
python src/f5_tts/f5_tts_webui.py

เบราว์เซอร์จะเปิดเองที่ 127.0.0.1:7860

ติดตั้งบน Linux (มีการ์ดจอ NVIDIA)
git clone https://github.com/VYNCX/F5-TTS-THAI.git
cd F5-TTS-THAI
python3 -m venv venv
source venv/bin/activate
pip install git+https://github.com/VYNCX/F5-TTS-THAI.git

pip install torch==2.3.0+cu118 torchaudio==2.3.0+cu118 --extra-index-url https://download.pytorch.org/whl/cu118
แบบสั้นที่สุด — ติดตั้งจาก PyPI
pip install f5-tts-th

วิธีนี้เร็วที่สุดแต่จะไม่ได้ไฟล์ตัวอย่างและสคริปต์เสริมที่มากับ repo

▶️ เปิดหน้าเว็บใช้งาน (ทุกระบบ)
คำสั่งเปิดโปรแกรม
python src/f5_tts/f5_tts_webui.py

# หรือแบบสั้น
f5-tts_webui

เปิดที่ 127.0.0.1:7860 · ครั้งแรกจะดาวน์โหลดโมเดลอัตโนมัติ ~1.35 GB ต้องต่อเน็ตรอบแรกครั้งเดียว หลังจากนั้นใช้แบบออฟไลน์ได้

🌐 อยากให้เครื่องอื่นในวงเดียวกันเข้าใช้ด้วย? เพิ่ม --share ท้ายคำสั่งเพื่อสร้างลิงก์ชั่วคราวของ Gradio · ระวัง ลิงก์นั้นเปิดจากอินเทอร์เน็ตได้ ใครมีลิงก์ก็ใช้เครื่องคุณสร้างเสียงได้ ควรใช้เฉพาะตอนสาธิตแล้วปิดทันที
🎙️ วิธีใช้งาน — 4 ช่องที่ต้องกรอก
  1. ใส่ข้อความที่ต้องการให้พูด

    พิมพ์ข้อความไทยลงช่องซ้ายบน · เว้นวรรคระหว่างประโยค เพื่อให้ระบบตัดท่อนได้ถูก จะอ่านลื่นกว่ามาก

  2. อัปโหลดเสียงต้นแบบ (ไฟล์เสียงที่จะเลียนแบบ)

    ใช้ความยาว 2–8 วินาที กำลังดี · ต้องไม่มีเสียงรบกวน ไม่มีเสียงดนตรี ไม่มีคนพูดซ้อน

    ถ้าใส่ยาวกว่านี้ ระบบจะตัดให้เหลือไม่เกิน 15 วินาทีเอง

  3. พิมพ์ข้อความที่อยู่ในไฟล์เสียงต้นแบบ

    ต้องตรงกับที่พูดในไฟล์เป๊ะ ๆ ไม่งั้นเสียงจะเพี้ยน — เพราะระบบมองว่าเสียงที่สร้างใหม่คือ “การพูดต่อ” จากตัวอย่าง จึงต้องรู้ว่าตัวอย่างพูดว่าอะไร

    ถ้าเว้นว่างไว้ โปรแกรมจะถอดเสียงให้อัตโนมัติ แต่แม่นน้อยกว่าพิมพ์เอง

  4. เลือกโมเดล แล้วกดสร้างเสียง

    ผลลัพธ์จะขึ้นทางซ้าย ฟังได้ทันทีและกดดาวน์โหลดเป็นไฟล์เสียงได้

🆚 เลือก v1 หรือ v2 ดี?
 v1v2
จุดเด่นออกเสียงไทยเป็นธรรมชาติกว่าอ่านข้ามคำ/ซ้ำคำน้อยลง
จุดอ่อนอาจข้ามคำหรืออ่านซ้ำความเป็นธรรมชาติลดลงบ้าง
เบื้องหลังเทรน 1,000,000 stepsใช้ IPA (สัทอักษร) ช่วยอ่าน
ลิขสิทธิ์โมเดลCC BY 4.0ไม่ระบุ

👉 แนะนำเริ่มที่ v1 เพราะเสียงเป็นธรรมชาติกว่าและมีสัญญาอนุญาตชัดเจน · ถ้าเจอปัญหาอ่านข้ามคำบ่อยค่อยลอง v2 · การใช้ v2 ต้องตั้งค่าภาษาเป็น IPA ด้วย

🎛️ ตั้งค่าขั้นสูง — ปุ่มไหนทำอะไร
ค่าค่าเริ่มต้นทำอะไร
ความเร็ว1.0ปรับ 0.3–1.5 · ลดเหลือ 0.8–0.9 ช่วยลดอ่านผิด/ข้ามคำ แต่ถ้าช้าเกินไปเสียงต้นแบบจะแทรกออกมา
NFE Step327–64 · ยิ่งมากคุณภาพยิ่งดีแต่ช้าลง
CFG Strength2.01–4 · ความเข้มในการยึดตามเสียงต้นแบบ
Cross Fade0.150–1 · ความนุ่มของรอยต่อระหว่างท่อน
ตัวอักษรสูงสุดต่อส่วน30050–1000 · ลดลงช่วยลดข้อผิดพลาด แต่ทำให้ช้าลง
Remove Silenceเปิดตัดช่วงเงียบยาว ๆ ออก
Seed-1-1 = สุ่มทุกครั้ง · ใส่เลขเดิมเพื่อให้ได้เสียงเดิมซ้ำได้
🔧 แก้ปัญหาที่เจอบ่อย
อาการวิธีแก้
อ่านข้ามคำ / อ่านซ้ำลดความเร็วเหลือ 0.7–0.8 · เปลี่ยน seed · ลดตัวอักษรต่อส่วน · ลองโมเดล v2
ข้อความยาวแล้วเพี้ยนเว้นวรรคระหว่างประโยค และลดตัวอักษรสูงสุดต่อส่วนลง
เสียงไม่เหมือนต้นแบบเช็กว่าข้อความในไฟล์เสียงต้นแบบตรงกับที่พูดจริง · ใช้ไฟล์ที่ไม่มีเสียงรบกวน
คำภาษาอังกฤษอ่านเพี้ยนเขียนเป็นคำอ่านไทย เช่น Good Morning → กู้ดมอร์นิ่ง
ช้ามากไม่มีการ์ดจอจะช้าเป็นปกติ · ลด NFE Step ลง · ใช้ข้อความสั้นลงต่อรอบ
☁️ ทางเลือก — TTS แบบคลาวด์ (ติดตั้ง 1 นาที)

ไม่ใช่ทุกงานต้องรันโมเดลในเครื่อง · ถ้าไม่ต้องโคลนเสียงและข้อความไม่ใช่ความลับ การเรียก TTS จากคลาวด์ด้วย Node.js ง่ายกว่ามาก ติดตั้งไม่ถึงนาที ได้เสียงคุณภาพสูงทันที

 Google Translate TTSEdge TTSF5-TTS-THAI
ประมวลผลที่เซิร์ฟเวอร์ Googleเซิร์ฟเวอร์ Microsoftเครื่องเรา
โคลนเสียงเรา
คุณภาพเสียงไทยพอใช้ ออกแนวหุ่นยนต์ดีมาก (เสียง Neural)เป็นธรรมชาติ แต่บางคำอ่านผิด
ติดตั้งวินาทีวินาทีหนัก ~5 GB
ต้องต่อเน็ตทุกครั้งทุกครั้งเฉพาะครั้งแรก
ข้อความรั่วออกนอก⚠️ ใช่⚠️ ใช่✅ ไม่
ปรับความเร็ว/โทนเสียงเกือบไม่ได้ได้ (rate/pitch/volume)ได้ละเอียดที่สุด
⚠️ ข้อควรระวังของทั้งสองตัวบนคลาวด์:
⚡ ติดตั้งทั้งสองตัว
1) สร้างโปรเจกต์ + ติดตั้ง
mkdir tts-cloud && cd tts-cloud
npm init -y
npm pkg set type=module
npm install @andresaya/edge-tts google-tts-api

⚠️ ต้องมี "type": "module" ใน package.json ไม่งั้นใช้ import ไม่ได้ · ต้องใช้ Node.js 18 ขึ้นไป เพราะโค้ดใช้ fetch ที่มีมาให้ในตัว

🎤 Edge TTS — เสียงดีที่สุดในสามตัว (แนะนำ)
gen-edge.js
import fs from "fs";
import { EdgeTTS } from "@andresaya/edge-tts";

const script = `สวัสดีครับ นี่คือตัวอย่างเสียงพูดภาษาไทยที่สร้างด้วย Edge TTS
ระบบนี้ปรับความเร็ว ระดับเสียง และโทนเสียงได้`;

async function main() {
  try {
    const tts = new EdgeTTS();

    await tts.synthesize(script, "th-TH-NiwatNeural", {
      rate: "-5%",     // ช้าลง 5% ฟังสบายขึ้น เหมาะกับผู้สูงอายุ
      volume: "+0%",
      pitch: "-2Hz"    // โทนต่ำลงเล็กน้อย ฟังน่าเชื่อถือขึ้น
    });

    fs.writeFileSync("output.mp3", tts.toBuffer());
    console.log("✅ สร้างไฟล์ output.mp3 เรียบร้อยแล้ว");
  } catch (err) {
    console.error("❌ สร้างเสียงไม่สำเร็จ:", err);
  }
}

main();

รันด้วย node gen-edge.js · th-TH-NiwatNeural คือเสียงผู้ชายไทย · ค่า rate −5% กับ pitch −2Hz เป็นค่าที่ใช้ได้ดีกับงานบรรยาย ทำให้ไม่พูดเร็วเกินไป

อยากรู้ว่ามีเสียงไทยให้เลือกกี่เสียง
import { EdgeTTS } from "@andresaya/edge-tts";

const tts = new EdgeTTS();
const voices = await tts.getVoices();

// กรองเฉพาะเสียงภาษาไทย
console.log(voices.filter(v => v.Locale === "th-TH"));

รายชื่อเสียงเปลี่ยนได้ตามที่ผู้ให้บริการอัปเดต — ให้ดูจากคำสั่งนี้เป็นหลัก ดีกว่าจำชื่อเสียงจากบทความ

🌐 Google Translate TTS — ง่ายที่สุด แต่เสียงหุ่นยนต์กว่า
gen-google.js
import fs from "fs";
import googleTTS from "google-tts-api";

const script = `สวัสดีครับ นี่คือตัวอย่างเสียงพูดภาษาไทย
ข้อความยาวจะถูกตัดเป็นท่อนให้อัตโนมัติ`;

(async () => {
  try {
    // getAllAudioUrls ตัดข้อความยาวเป็นท่อนให้เอง (จำกัดท่อนละ 200 ตัวอักษร)
    const urls = await googleTTS.getAllAudioUrls(script, {
      lang: "th",
      slow: false,
      host: "https://translate.google.com",
    });

    const writeStream = fs.createWriteStream("output.mp3");

    for (const { url } of urls) {
      const res = await fetch(url);
      writeStream.write(Buffer.from(await res.arrayBuffer()));
    }

    writeStream.end();
    console.log("✅ สร้างไฟล์ output.mp3 เรียบร้อยแล้ว");
  } catch (err) {
    console.error(err);
  }
})();

⚠️ ข้อจำกัดสำคัญ: ข้อความยาวต้องใช้ getAllAudioUrls เท่านั้น (ตัวธรรมดารับได้ ~200 ตัวอักษร) · การต่อไฟล์ด้วยการเขียน buffer ต่อกันแบบนี้เล่นได้ปกติ แต่ความยาวรวมอาจแสดงเพี้ยนในโปรแกรมตัดต่อบางตัว

แก้ปัญหาความยาวเพี้ยน — ต่อไฟล์ด้วย ffmpeg
# บันทึกแยกเป็น part-0.mp3, part-1.mp3 ... ก่อน แล้วต่อด้วย ffmpeg
ls part-*.mp3 | sed "s/^/file '/;s/$/'/" > list.txt
ffmpeg -f concat -safe 0 -i list.txt -c copy output.mp3

ติดตั้ง ffmpeg: brew install ffmpeg (Mac) หรือ sudo apt install ffmpeg (Ubuntu)

🧭 สรุป — งานแบบไหนใช้ตัวไหน
งานใช้ตัวนี้เพราะ
พากย์คลิปสั้น อ่านข่าว บรรยายสไลด์Edge TTSเสียงดี ติดตั้งเร็ว ปรับความเร็วได้
ทดลองเล่นเร็ว ๆ ไม่ซีเรียสคุณภาพGoogle TTSโค้ดสั้นที่สุด
ต้องใช้เสียงของเราเองF5-TTS-THAIตัวเดียวที่โคลนเสียงได้
เอกสารมีข้อมูลส่วนบุคคล/ความลับF5-TTS-THAIข้อมูลไม่ออกจากเครื่อง
ระบบจริงที่ห้ามล่ม / มีรายได้Azure AI Speech
หรือ Google Cloud TTS
เป็น API ทางการ มีสัญญาบริการรองรับ
🛡️ จริยธรรมการโคลนเสียง — ข้อนี้สำคัญที่สุด
🚨 เครื่องมือนี้เลียนเสียงคนได้จากตัวอย่างแค่ 2–8 วินาที ซึ่งเป็นเทคนิคเดียวกับที่มิจฉาชีพใช้ ปลอมเสียงโทรหลอกญาติผู้สูงอายุ ที่กำลังระบาดในไทย
💡 เอาไปทำอะไรได้บ้าง
📌 ข้อมูลอาจเปลี่ยนแปลง: โปรเจกต์โอเพนซอร์สอัปเดตบ่อย คำสั่งติดตั้งและชื่อปุ่มอาจเปลี่ยนได้ · หน้านี้อ้างอิงจาก README และโค้ดของ repo จริง ณ เดือนสิงหาคม 2569 · ถ้าติดตั้งแล้วไม่ผ่าน ให้ดู README ล่าสุดใน GitHub เป็นหลัก
🔗 แหล่งอ้างอิง