วิธีใช้ Grok Voice ฟรี: ตั้งค่า Console, โคลนเสียง, และสร้าง Voice Agent แบบเรียลไทม์

Ashley Innocent

Ashley Innocent

8 May 2026

วิธีใช้ Grok Voice ฟรี: ตั้งค่า Console, โคลนเสียง, และสร้าง Voice Agent แบบเรียลไทม์

enterprise.banner.title

enterprise.banner.feature1

enterprise.banner.feature2

enterprise.banner.feature3

enterprise.banner.ctaB

xAI ได้เปิดตัว Grok Voice พร้อมกับการเปิดตัว Grok 4.3 และประเด็นหลักสำหรับนักพัฒนาคือ: มันฟรีบน xAI Console ไม่มีค่าใช้จ่ายต่อนาที ไม่มีค่าใช้จ่ายต่อโทเค็น เข้าถึงโมเดลเอเจนต์เสียง, พื้นผิวแปลงข้อความเป็นเสียงพูด (text-to-speech), พื้นผิวแปลงเสียงพูดเป็นข้อความ (speech-to-text) และเครื่องมือโคลนเสียงแบบกำหนดเองได้อย่างเต็มที่ ทรัพยากรเดียวที่มีค่าใช้จ่ายคือการใช้งานโทเค็น Grok 4.3 พื้นฐานเมื่อเอเจนต์ประมวลผล ซึ่งมีโควตาฟรีสำหรับคอนโซลสำหรับการทดสอบอยู่แล้ว

คู่มือนี้จะครอบคลุมวิธีการทำให้ Grok Voice ทำงานได้โดยไม่มีค่าใช้จ่าย รวมถึงวิธีการโคลนเสียงของคุณเอง ลักษณะของเซสชัน WebSocket และวิธีทดสอบกระบวนการทั้งหมดด้วย Apidog ก่อนที่คุณจะนำไปรวมเข้ากับผลิตภัณฑ์จริง

ปุ่ม

หากคุณต้องการ คู่มือ API ของ Grok 4.3 ที่กว้างขึ้น หรือการเปรียบเทียบกับสแต็กของ OpenAI ใน Grok Voice vs GPT-Realtime โพสต์เสริมเหล่านั้นจะครอบคลุมส่วนที่เหลือ

TL;DR (สรุป)

Grok Voice ให้อะไรฟรีบ้าง

xAI Console คือหนทางสู่การเข้าถึงฟรี ลงชื่อเข้าใช้ที่ console.x.ai สร้างคีย์ API และคุณสามารถเรียกใช้บริการสี่ส่วนโดยไม่มีค่าใช้จ่ายที่เกี่ยวข้องกับคุณสมบัติเสียงโดยตรง:

มาตรวัดเดียวที่ทำงานคือการใช้งานโทเค็น Grok 4.3 เมื่อเอเจนต์ประมวลผลคำขอ คอนโซลยังให้เครดิตฟรีสำหรับการทดสอบส่วนนั้นด้วย ซึ่งเพียงพอสำหรับการตรวจสอบเวิร์กโฟลว์แบบ end-to-end ก่อนที่จะมีการเรียกเก็บเงินใดๆ

ขั้นตอนที่ 1: รับคีย์คอนโซล

ไปที่ console.x.ai และลงชื่อเข้าใช้ด้วยบัญชี X ของคุณ จากหน้า API Keys สร้างคีย์ใหม่โดยเปิดใช้งานสโคป voice และ chat ส่งออกครั้งเดียวและนำกลับมาใช้ใหม่:

export XAI_API_KEY="xai-..."

สำหรับแอปฝั่งไคลเอนต์ที่คุณไม่สามารถใส่คีย์ได้ ให้สร้าง โทเค็นชั่วคราว (ephemeral token) จากการตั้งค่าคอนโซล หรือผ่านปลายทาง /v1/realtime/sessions โทเค็นชั่วคราวมีสโคปเดียวกันแต่จะหมดอายุในไม่กี่นาที ดังนั้นคุณจึงสามารถส่งให้เบราว์เซอร์ได้โดยไม่เสี่ยงต่อการรั่วไหลของคีย์หลัก

ขั้นตอนที่ 2: เลือกเสียง

มีสองทางเลือก

เสียงที่ตั้งไว้ล่วงหน้า เอเจนต์เสียงมาพร้อมกับบุคลิกที่ตั้งชื่อไว้ห้าแบบ:

สำหรับ API TTS ที่กว้างขึ้น ไลบรารีเสียงที่ตั้งไว้ล่วงหน้ามีขนาดใหญ่กว่ามาก; มีมากกว่า 80 เสียงครอบคลุม 28 ภาษา ซึ่งทั้งหมดสามารถเรียกใช้ได้ด้วยพารามิเตอร์ voice บนปลายทาง TTS

การโคลนเสียงแบบกำหนดเอง อัปโหลดไฟล์ WAV ที่เป็นเสียงพูดที่ชัดเจนประมาณหนึ่งนาทีจากผู้พูดคนเดียว xAI จะส่งคืน voice_id ภายในไม่ถึงสองนาที และ ID เดียวกันนี้ใช้ได้กับทั้ง TTS และเอเจนต์เสียง

curl https://api.x.ai/v1/custom-voices \
  -H "Authorization: Bearer $XAI_API_KEY" \
  -F "name=narrator-jane" \
  -F "language=en" \
  -F "audio=@sample.wav"

ความยาวคลิปอ้างอิงสูงสุดคือ 120 วินาที แต่ยิ่งยาวไม่ได้หมายความว่าจะดีกว่าเสมอไป เสียงที่สะอาดและสอดคล้องมีความสำคัญมากกว่าความยาว บันทึกในห้องที่เงียบ บันทึกครั้งเดียว ไม่มีเพลงประกอบ

ขั้นตอนที่ 3: ให้ Grok พูดผ่าน WebSocket

เอเจนต์เสียงเป็นเซสชัน WebSocket เดียว เปิดใช้งานครั้งเดียว สตรีมเสียงเข้า สตรีมเสียงออก ไคลเอนต์ Node.js แบบง่ายจะมีลักษณะดังนี้:

import WebSocket from "ws";

const ws = new WebSocket(
  "wss://api.x.ai/v1/realtime?model=grok-voice-think-fast-1.0",
  { headers: { Authorization: `Bearer ${process.env.XAI_API_KEY}` } }
);

ws.on("open", () => {
  ws.send(JSON.stringify({
    type: "session.update",
    session: {
      voice: "ara",
      instructions: "You are a friendly support agent. Keep replies under two sentences.",
      input_audio_format: "pcm16",
      output_audio_format: "pcm16",
      turn_detection: { type: "server_vad" },
    },
  }));
});

ws.on("message", (raw) => {
  const event = JSON.parse(raw.toString());
  if (event.type === "response.audio.delta") {
    process.stdout.write(Buffer.from(event.delta, "base64"));
  }
});

เสียงผู้ใช้จะถูกส่งในเหตุการณ์ input_audio_buffer.append เป็นเฟรม PCM16 แบบ base64 เซิร์ฟเวอร์จะปล่อยเหตุการณ์ response.audio.delta เมื่อโมเดลตอบกลับ และ response.audio.done เมื่อการสนทนาสิ้นสุดลง PCM16 ที่ 24 kHz เป็นค่าเริ่มต้นที่ปลอดภัยสำหรับแอปเบราว์เซอร์และเดสก์ท็อป; เปลี่ยนเป็น μ-law เมื่อคุณเชื่อมต่อกับระบบโทรศัพท์

ขั้นตอนที่ 4: เพิ่มการใช้เครื่องมือ

เอเจนต์เสียงรองรับการเรียกใช้ฟังก์ชัน ดังนั้นโมเดลจึงสามารถเรียกใช้ API ของคุณระหว่างการสนทนาได้ ประกาศเครื่องมือในการตั้งค่าเซสชัน:

ws.send(JSON.stringify({
  type: "session.update",
  session: {
    tools: [{
      type: "function",
      name: "lookup_order",
      description: "Look up the status of a customer order by order number.",
      parameters: {
        type: "object",
        properties: { order_id: { type: "string" } },
        required: ["order_id"],
      },
    }],
  },
}));

โมเดลจะส่ง response.function_call_arguments.done เมื่อต้องการเรียกใช้เครื่องมือ ให้รันฟังก์ชันในฝั่งของคุณ จากนั้นส่งผลลัพธ์กลับด้วย conversation.item.create ที่เป็นประเภท function_call_output โมเดลจะดำเนินการต่อจากที่ค้างไว้และบรรยายคำตอบ

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

ขั้นตอนที่ 5: ใช้ TTS โดยไม่มีเอเจนต์

หากคุณต้องการเพียงแค่ Text-to-Speech (เสียงแจ้งเตือน เสียงพากย์แอป บทนำพอดแคสต์) ให้ข้าม WebSocket และเรียกใช้ปลายทาง REST:

curl https://api.x.ai/v1/tts \
  -H "Authorization: Bearer $XAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "grok-tts-1",
    "voice": "ara",
    "input": "Welcome back to your account. Your last login was Tuesday at 3pm.",
    "format": "mp3"
  }' \
  --output greeting.mp3

ตัวเลือกรูปแบบคือ mp3 (ความละเอียดสูง) และ mulaw (8 kHz, สำหรับระบบโทรศัพท์) ปลายทางนี้เป็นแบบ Synchronous; คุณจะได้รับไบต์กลับมา ไม่จำเป็นต้องมีเซสชันสตรีมมิ่ง

ขั้นตอนที่ 6: ทดสอบขั้นตอนทั้งหมดใน Apidog

API ของ WebSocket นั้นยากต่อการดีบักจากเทอร์มินัลเนื่องจากการสนทนามีสถานะ รูปแบบมาตรฐานที่เราใช้:

  1. บันทึก URL ของ WebSocket พร้อมโทเค็น Bearer ที่กรอกไว้ล่วงหน้าในสภาพแวดล้อม
  2. จัดเตรียมสคริปต์ข้อความ JSON: session.update, input_audio_buffer.append (พร้อมเฟรมเสียงจำลอง), response.create
  3. เล่นสคริปต์ซ้ำกับการเชื่อมต่อเดียวและจับภาพเหตุการณ์เซิร์ฟเวอร์ทั้งหมดลงในโครงสร้างต้นไม้
  4. เปรียบเทียบการรันสองครั้งแบบเคียงข้างกันเมื่อคุณเปลี่ยนเสียงหรือคำสั่ง; มีประโยชน์สำหรับการตรวจจับความเบี่ยงเบนในพฤติกรรมการสลับบทสนทนา

ดาวน์โหลด Apidog สร้างคำขอ WebSocket ใหม่ และวาง XAI_API_KEY ของคุณภายใต้ตัวแปรสภาพแวดล้อม คอลเลกชันเดียวกันนี้ใช้ได้กับ TTS และ STT (ซึ่งเป็น REST ธรรมดา) และคุณสามารถเก็บทั้งสองส่วนไว้ภายใต้โปรเจกต์เดียว สำหรับข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบการทดสอบ API ที่มีสถานะ โปรดดูที่ เครื่องมือทดสอบ API สำหรับวิศวกร QA

ข้อจำกัดของระดับฟรี

คอนโซลให้คุณเข้าถึงได้เต็มที่โดยไม่มีค่าใช้จ่ายต่อนาทีหรือต่อโทเค็นสำหรับคุณสมบัติเสียงเอง ข้อจำกัดที่มีอยู่คือ:

หากคุณพบข้อผิดพลาดเกี่ยวกับขีดจำกัดอัตรา ให้รวมคำขอของคุณเป็นชุด หรือย้ายไปใช้ระดับแบบชำระเงิน; ลักษณะการทำงานของ API จะไม่เปลี่ยนแปลง มีเพียงขีดจำกัดเท่านั้น

การเปรียบเทียบเสียง

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

การทดสอบที่ไม่ขึ้นกับโมเดลที่เราใช้ภายใน: พูดข้อความเดียวกันด้วยสามความเร็ว (สงบ, ปกติ, เร่งด่วน) และฟังการเปลี่ยนแปลงของน้ำเสียง เสียงที่ตั้งไว้ล่วงหน้าของ Grok จัดการได้ดีกว่าเครื่องยนต์ TTS ส่วนใหญ่ที่เราได้ทดสอบ แต่คุณยังคงต้องตรวจสอบก่อนที่จะเปิดใช้งานจริง

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

API ฟรีจริงหรือ หรือมีข้อจำกัดที่ซ่อนอยู่? คุณสมบัติเสียง (TTS, STT, เอเจนต์เสียง, Custom Voices) ไม่มีค่าใช้จ่ายต่อนาทีหรือต่อโทเค็นบนคอนโซล โมเดลการประมวลผลที่อยู่เบื้องหลังจะถูกเรียกเก็บเงินจากเครดิตคอนโซล; โควตาคอนโซลเพียงพอสำหรับการสร้างต้นแบบ

ฉันต้องมีบัญชี X (Twitter) หรือไม่? ใช่ การลงชื่อเข้าใช้คอนโซลใช้บัญชี X

ฉันสามารถใช้ Grok Voice จากเบราว์เซอร์ได้หรือไม่? ได้ ด้วยโทเค็นชั่วคราว สร้างโทเค็นฝั่งเซิร์ฟเวอร์ผ่าน /v1/realtime/sessions ส่งโทเค็นชั่วคราวที่มีอายุสั้นไปยังเบราว์เซอร์ และเชื่อมต่อ WebSocket โดยตรง คีย์หลักจะไม่ออกจากเซิร์ฟเวอร์ของคุณเลย

ฉันสามารถคาดหวังคุณภาพเสียงแบบใด? เอาต์พุต TTS เป็น MP3 คุณภาพสูง หรือ 8 kHz μ-law เอเจนต์เสียงรัน PCM16 ที่ 24 kHz ภายใน คุณภาพเทียบเท่ากับเครื่องยนต์ TTS เชิงพาณิชย์หลักๆ; ความหน่วงเป็นปัจจัยที่แตกต่าง

ใช้งานกับระบบโทรศัพท์ได้หรือไม่? ได้ เอาต์พุต μ-law เป็นรูปแบบมาตรฐานสำหรับบริดจ์ SIP และ PSTN คุณยังคงต้องมีผู้ให้บริการ SIP; xAI ไม่ได้มีเกตเวย์ SIP ของตนเองในปัจจุบัน

คุณภาพการโคลนเทียบกับเครื่องมืออื่น ๆ เป็นอย่างไร? คุณภาพการโคลนขึ้นอยู่กับคุณภาพของเสียงอ้างอิงมากกว่าความยาว ตัวอย่าง 60 วินาทีที่ชัดเจนในห้องที่เงียบดีกว่าตัวอย่าง 120 วินาทีที่มีเสียงรบกวนในการทดสอบของเรา voice_id ที่ได้สามารถพกพาไปใช้กับปลายทาง TTS และเอเจนต์เสียงได้โดยไม่ต้องโคลนใหม่

ฉันสามารถใช้ Grok Voice สำหรับตัวละคร AI ในเกมได้หรือไม่? ได้ ปลายทาง TTS เร็วพอสำหรับการสร้างในขณะรันไทม์ และ Custom Voices หมายความว่าตัวละครแต่ละตัวสามารถมีเสียงโคลนของตัวเองได้ ระวังความหน่วงในประโยคยาวๆ; การแบ่ง TTS เป็นส่วนๆ เป็นรูปแบบที่เหมาะสม

สรุป

Grok Voice เป็นเส้นทางฟรีที่สะอาดที่สุดสำหรับเอเจนต์เสียงแบบเรียลไทม์ในปี 2026 คอนโซลไม่มีค่าใช้จ่ายต่อนาที ความหน่วงต่ำจริง และ Custom Voices ช่วยขจัดปัญหาด้านการอนุญาตที่ขัดขวางไม่ให้หลายทีมเปิดตัวคุณสมบัติเสียง วิธีที่เร็วที่สุดในการตรวจสอบโมเดลสำหรับกรณีการใช้งานของคุณคือการเขียนสคริปต์เซสชันใน Apidog เรียกใช้กับเสียงที่ตั้งไว้ล่วงหน้าสามเสียง และลองฟัง

เมื่อคุณพร้อมที่จะเชื่อมต่อเข้ากับการประมวลผลของ Grok 4.3 โปรดดูที่ คู่มือ API ของ Grok 4.3 สำหรับการเปรียบเทียบกับสแต็กของ OpenAI โปรดดูที่ Grok Voice vs GPT-Realtime

ปุ่ม

ฝึกการออกแบบ API แบบ Design-first ใน Apidog

ค้นพบวิธีที่ง่ายขึ้นในการสร้างและใช้ API