xAI Grok 4.3 개발자 가이드 — Speech-to-Text·Text-to-Speech API 실전 활용
2026년 4월 GA된 Grok STT($0.10/hr)·TTS($4.20/1M자) API 실전 코드, 감정 표현 태그 활용, Voice Agent 파이프라인 구축, ElevenLabs·Deepgram과의 가격·오류율 비교를 정리했다.
xAI가 2026년 4월 17일 Grok 4.3 Beta를 출시하면서 동시에 Grok Speech-to-Text(STT) API와 Text-to-Speech(TTS) API를 GA(정식 출시)했다. STT는 배치 $0.10/시간, 스트리밍 $0.20/시간으로 ElevenLabs·Deepgram·AssemblyAI 대비 오류율이 대폭 낮고, TTS는 감정 표현 태그([laugh], [sigh], <whisper>)를 지원하는 표현형 음성 API다. 이 글은 Grok 4.3의 신기능, 음성 API 실전 코드, 경쟁사 가격 비교, Voice Agent 구축 방법을 정리한다.
이 글이 필요한 사람: 음성 기능을 앱에 추가하려는 개발자, ElevenLabs·Deepgram 비용에 불만이 있는 개발자, Grok 최신 모델을 API로 활용하려는 팀.
Grok 4.3 Beta — 2026년 4월 신기능 총정리
Grok 4.3 Beta — 2026년 4월 17일 SuperGrok Heavy 사용자 우선 배포
Grok 4.3 Beta는 4월 17일 SuperGrok Heavy 구독자를 대상으로 먼저 배포됐고, 전체 롤아웃은 2026년 5월 중순으로 예정되어 있다. 핵심 변경사항은 크게 세 가지다.
네이티브 비디오 입력: 이전까지 Grok은 이미지 멀티모달만 지원했다. 4.3부터 영상 파일을 직접 프롬프트에 넣어 분석할 수 있다. 코드 데모 영상에서 버그를 찾거나 UI 녹화를 분석하는 시나리오에 활용 가능하다
문서 생성 능력 확장: 대화 결과를 다운로드 가능한 PDF, 완성형 스프레드시트(.xlsx), PowerPoint 프레젠테이션으로 직접 생성한다. API 레벨에서는 아직 제한적으로 제공 중이나 베타 접근 신청으로 테스트 가능하다
음성 API GA: STT와 TTS가 모두 정식 출시됐다. Tesla 차량, Starlink 고객지원에서 이미 수백만 명이 사용 중인 동일 스택을 API로 공개했다
API 모델 라인업도 정리됐다. Grok 4.20은 가장 강력한 모델로 $2/M 입력·$6/M 출력이고, Grok 4.1 Fast는 $0.20/M 입력·$0.50/M 출력에 2M 컨텍스트 창을 제공한다.
Grok Speech-to-Text API — 실전 코드와 핵심 파라미터
Grok STT API는 두 가지 모드를 제공한다. REST 방식의 배치 처리($0.10/시간)와 WebSocket 기반 실시간 스트리밍($0.20/시간)이다. 내부 벤치마크에서 전화통화 엔티티 인식 오류율 5.0%로 ElevenLabs(12.0%), Deepgram(13.5%), AssemblyAI(21.3%)를 크게 앞선다고 xAI는 발표했다. 의료·법무·금융 도메인에서 특히 강세를 보인다.
주요 기능: 단어 수준 타임스탬프, 다채널 오디오 지원, Inverse Text Normalization(숫자·날짜를 텍스트로 자동 변환), 화자 분리(speaker diarization). 지원 포맷은 mp3, mp4, mpeg, mpga, m4a, wav, webm 등 12가지다.
Grok STT API — Python 배치 처리
import anthropic
client = anthropic.Anthropic(
api_key="your-xai-api-key",
base_url="https://api.x.ai/v1"
)
# 배치 방식 — 파일 업로드 후 트랜스크립션
with open("meeting.mp3", "rb") as f:
response = client.audio.transcriptions.create(
model="grok-audio-v1",
file=f,
language="ko", # 한국어 지정 (생략 시 자동 감지)
timestamp_granularities=["word"], # 단어 수준 타임스탬프
response_format="verbose_json"
)
print(response.text)
# 타임스탬프 접근
for word in response.words:
print(f"{word.word}: {word.start:.2f}s - {word.end:.2f}s")
Grok STT API — JavaScript 실시간 스트리밍
// WebSocket 스트리밍 — 실시간 트랜스크립션
const ws = new WebSocket(
'wss://api.x.ai/v1/audio/transcriptions/stream',
{ headers: { Authorization: 'Bearer YOUR_API_KEY' } }
)
ws.onopen = () => {
ws.send(JSON.stringify({
model: 'grok-audio-v1',
language: 'ko',
diarize: true // 화자 분리 활성화
}))
// 마이크 오디오 스트림 연결
startMicrophoneCapture((chunk) => ws.send(chunk))
}
ws.onmessage = (event) => {
const data = JSON.parse(event.data)
if (data.type === 'transcript') {
console.log(`[화자 ${data.speaker}] ${data.text}`)
}
}
Grok Text-to-Speech API — 감정 표현 태그 활용법
Grok TTS는 [laugh], [sigh] 같은 인라인 태그로 자연스러운 음성 표현을 제어한다
Grok TTS API($4.20/1M 문자)의 차별점은 감정 표현 태그다. 텍스트 중간에 [laugh], [sigh], [pause] 같은 인라인 태그를 삽입하거나 <whisper>, <excited> 같은 래핑 태그로 구간 전체의 감정을 제어할 수 있다.
지원 음성 5종: Ara(여성, 밝음), Eve(여성, 차분), Leo(남성, 전문적), Rex(남성, 에너지), Sal(중성, 내레이션). 지원 언어는 20개로 한국어 포함이다.
Grok TTS API — 감정 태그 활용
import anthropic
import base64
client = anthropic.Anthropic(
api_key="your-xai-api-key",
base_url="https://api.x.ai/v1"
)
# 감정 표현 태그 사용 예시
text = """
안녕하세요, 오늘 업데이트를 소개해드리겠습니다. [pause]
<excited>이번 릴리즈에서 성능이 두 배 향상됐습니다!</excited>
[sigh] 물론 마이그레이션이 필요하긴 하지만... [laugh]
걱정 마세요, <whisper>생각보다 쉽습니다.</whisper>
"""
response = client.audio.speech.create(
model="grok-tts-v1",
voice="Ara", # Ara / Eve / Leo / Rex / Sal
input=text,
response_format="mp3" # mp3 / wav / flac / opus
)
# 파일 저장
with open("output.mp3", "wb") as f:
f.write(response.content)
print(f"생성된 오디오: {len(response.content) / 1024:.1f} KB")
음성 API 가격 비교 — Grok vs ElevenLabs vs Deepgram vs OpenAI
2026년 4월 기준 주요 음성 API 가격 비교다. 사용량이 많을수록 Grok의 가격 경쟁력이 두드러진다.
Voice Agent 구축 실전 — STT + Grok 추론 + TTS 파이프라인
Grok Voice Agent API는 STT → LLM 추론 → TTS를 단일 WebSocket 연결에서 처리하는 올인원 파이프라인이다. 음성 → 텍스트 변환, 대화 처리, 음성 응답 생성을 각각 별도로 호출할 때보다 레이턴시가 낮다. docs.x.ai/docs/guides/voice에 Python·JavaScript 예시가 있다.
Voice Agent API — 기본 구조 (JavaScript)
// Grok Voice Agent — STT + LLM + TTS 올인원 파이프라인
const ws = new WebSocket(
'wss://api.x.ai/v1/voice/agent',
{ headers: { Authorization: 'Bearer YOUR_API_KEY' } }
)
ws.onopen = () => {
// 세션 설정
ws.send(JSON.stringify({
type: 'session.create',
model: 'grok-4.1-fast', // 추론 모델 지정
voice: 'Leo', // TTS 음성
language: 'ko',
system_prompt: '당신은 개발자 지원 어시스턴트입니다.',
turn_detection: {
type: 'server_vad', // 서버 측 음성 감지
silence_duration_ms: 500
}
}))
}
ws.onmessage = (event) => {
const msg = JSON.parse(event.data)
switch (msg.type) {
case 'transcript.partial':
// 실시간 텍스트 자막
updateSubtitle(msg.text)
break
case 'audio.delta':
// TTS 오디오 스트리밍
audioPlayer.appendChunk(msg.audio)
break
case 'agent.message':
// 최종 응답 텍스트
addToConversation(msg.content)
break
}
}
⚠️ 한국어 지원 주의: Grok STT는 한국어를 지원하지만 전화통화 도메인 벤치마크는 영어 기준이다. 한국어 의료·법무 도메인에서는 독립 평가 없이 바로 프로덕션 적용을 피하고, 소규모 파일럿 테스트를 먼저 진행하라.
Grok API 시작하기 — 계정 설정과 실전 주의사항
Grok API는 console.x.ai에서 API 키를 발급받고 api.x.ai/v1 엔드포인트를 사용한다. OpenAI SDK 호환 인터페이스를 제공하므로 기존 OpenAI 기반 코드에서 base_url과 api_key만 변경하면 된다.
SDK 호환성: Python openai 패키지, Node.js openai 패키지, @anthropic-ai/sdk의 xAI 프로바이더 모두 지원
Rate Limit: 기본 티어는 분당 60 요청. 음성 API는 동시 스트리밍 연결 수에 별도 제한이 있다
Grok 4.3 Beta 접근: 현재(2026년 4월) SuperGrok Heavy 구독자 우선. API 레벨 전체 공개는 5월 예정
지역 규정: xAI 서버는 미국 기반이다. GDPR·PIPA 적용 대상 데이터를 음성 API로 처리할 경우 데이터 처리 계약 확인 필요
xAIGrokGrok 4.3Speech-to-TextText-to-Speech음성 APIVoice AgentLLMAI API