ข้ามไปเนื้อหาหลัก

สร้าง AI Voice Assistant ด้วย ElevenLabs และ Node.js

เรียนรู้วิธีสร้างผู้ช่วยเสียง AI บน Node.js เชื่อมต่อ ElevenLabs API สำหรับสังเคราะห์เสียงพูดสมจริงและโคลนเสียง พร้อมใช้คำสั่งง่ายๆ

เรียบเรียงโดย AI
Inewgen
29 Oct 2026ที่มา: Dev.to3 นาทีอ่าน (0 ครั้ง)
แชร์
สร้าง AI Voice Assistant ด้วย ElevenLabs และ Node.js

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ขนาดตัวอักษร
  • ใช้ ElevenLabs API และ Node.js สร้าง AI Voice Assistant
  • ตั้งค่าระบบง่ายๆ ด้วย native fetch ไม่ต้องลงไลบรารี HTTP เพิ่ม
  • รองรับการโคลนเสียงด้วยตัวอย่างไฟล์เสียงเพียง 10 วินาที
  • เพิ่มความสามารถตอบคำถามด้วย OpenAI ร่วมด้วยได้

หากคุณกำลังมองหาวิธีเพิ่มเสียงพูดที่มีความธรรมชาติ แสดงอารมณ์ได้ และสามารถเลียนแบบเสียงเฉพาะบุคคลให้กับแอปพลิเคชันของคุณ ElevenLabs ถือเป็นบริการ Text-to-Speech (TTS) และการโคลนเสียงที่ได้รับความนิยมสูงในปัจจุบัน ด้วย API ที่เรียกใช้งานผ่าน HTTP เพียงไม่กี่คำสั่ง พร้อมแพ็กเกจฟรีสำหรับนักพัฒนาที่เพียงพอต่อโปรเจกต์งานอดิเรกและงานต้นแบบ

ในบทความนี้เราจะพาไปขั้นตอนการสร้าง AI Voice Assistant อย่างง่ายโดยใช้ Node.js และ ElevenLabs API ซึ่งจะช่วยให้คุณได้เครื่องมือบรรทัดคำสั่ง (Command-line tool) ที่พร้อมทำงาน เริ่มต้นด้วยการเตรียมความพร้อมของระบบโดยตรวจสอบเวอร์ชัน Node ผ่านคำสั่ง node -v และติดตั้ง ffmpeg ผ่านตัวจัดการแพ็กเกจของระบบ เช่น brew install ffmpeg หรือ apt-get install ffmpeg

code editor workspace software development dark theme

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

โครงสร้างไดเรกทอรีของโปรเจกต์ voice-assistant/ จะประกอบด้วยไฟล์สำคัญดังนี้:

  • .env สำหรับเก็บ API keys
  • index.js เป็นจุดเริ่มต้นหลักของโปรแกรม
  • tts.js เป็น wrapper ขนาดเล็กสำหรับเรียกใช้งาน ElevenLabs
  • package.json สำหรับจัดการแพ็กเกจ

คุณสามารถสร้างโฟลเดอร์และเริ่มต้นใช้งาน npm ได้ด้วยคำสั่ง mkdir voice-assistant && cd voice-assistant ตามด้วย npm init -y และ npm install dotenv openai โดยโค้ดของเราจะมีความเบาและหลีกเลี่ยงการพึ่งพาไลบรารีภ J การเรียก HTTP เพิ่มเติมเนื่องจากเราใช้ native fetch ที่มีมาให้อยู่แล้ว

การใช้ native fetch ใน Node.js เวอร์ชันใหม่ๆ ช่วยลดภาระในการติดตั้งแพ็กเกจเสริมอย่าง axios ทำให้โปรเจกต์ขนาดเล็กอย่าง Voice Assistant มีความคล่องตัวสูงและบำรุงรักษาง่ายขึ้น เหมาะอย่างยิ่งสำหรับนักพัฒนาที่ต้องการต้นแบบที่รวดเร็ว

จากนั้นให้สร้างไฟล์ .env เพื่อเก็บค่าคีย์ความปลอดภัย:

ไม่อยากพลาดข่าวใหม่?

สมัครรับสรุปข่าวสารใหม่ทางอีเมล ไม่บ่อยจนรำคาญ

โฆษณา

  • ELEVENLABS_API_KEY=your_elevenlabs_key_here
  • OPENAI_API_KEY=your_openai_key_here (สำหรับกรณีต้องการเพิ่มความสามารถให้ผู้ช่วยตอบคำถาม)

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

นอกจากนี้ ElevenLabs ยังเปิดให้คุณอัปโหลดตัวอย่างเสียงสั้นๆ ความยาวเพียง 10 วินาทีของเป้าหมายเพื่อสร้าง Voice ID เฉพาะตัวได้ ผ่านคำสั่ง curl ตัวอย่างเช่นการส่งคำขอ POST ไปยัง https://api.elevenlabs.io/v1/voices/add พร้อมแนบ xi-api-key, Content-Type: multipart/form-data, ชื่อเสียง name=MyClone และไฟล์ตัวอย่าง files=@/path/to/sample.wav

การตอบกลับจะส่งค่า voice_id กลับมา ซึ่งคุณสามารถนำไปแทนที่อาร์กิวเมนต์ voiceId ในฟังก์ชัน synthesize() เพื่อให้เสียงโคลนของคุณพูดคำตอบจาก LLM ออกมาได้

ที่มา: Dev.to

ความคิดเห็น

แสดงความคิดเห็น
0/2000

พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้