Hume AI Not Working? Fix Common Errors
Troubleshoot Hume AI issues — EVI WebSocket not connecting, 401/403 authentication, browser audio problems, and high latency — with live platform status.
Quick diagnosis
- 1 Platform outage? — Check prismix.dev/service/hume for active incidents
- 2 API key valid? — Keys live at platform.hume.ai — EVI and Expression Measurement use the same key
- 3 Correct header? — Expression Measurement API uses X-Hume-Api-Key (not Authorization: Bearer)
- 4 EVI: WebSocket endpoint? — wss://api.hume.ai/v0/evi/chat with api_key in the query string
- 5 Microphone permission? — EVI requires getUserMedia — must be HTTPS and user must grant permission
- 6 Audio chunk size? — Send 100–200 ms chunks, not large buffers — smaller chunks reduce latency
Common errors and fixes
EVI WebSocket not connecting
Hume EVI uses a persistent WebSocket for real-time voice conversation. Correct setup:
{`// JavaScript — connect to EVI
const socket = new WebSocket(
\`wss://api.hume.ai/v0/evi/chat?api_key=YOUR_HUME_API_KEY\`
);
socket.onopen = () => {
// Send initial session settings before any audio
socket.send(JSON.stringify({
type: "session_settings",
audio: { encoding: "linear16", sample_rate: 16000, channels: 1 }
}));
};
socket.onmessage = (event) => {
const msg = JSON.parse(event.data);
if (msg.type === "audio_output") {
// Play base64-encoded audio response
}
};`} - The API key goes in the query string, not a header
- Wait for
socket.onopenbefore sending audio - Corporate proxies blocking
wss://will cause silent failures
Expression Measurement API — 401 authentication
The Expression Measurement API uses a different header than most AI APIs:
✖ Wrong
Authorization: Bearer YOUR_KEY ✔ Correct
X-Hume-Api-Key: YOUR_KEY {`import requests
response = requests.post(
"https://api.hume.ai/v0/batch/jobs",
headers={"X-Hume-Api-Key": "YOUR_HUME_API_KEY"},
json={
"models": {"face": {}},
"urls": ["https://example.com/video.mp4"]
}
)
print(response.json())`} Browser audio not working (microphone blocked)
EVI requires microphone access via the browser's getUserMedia API. Common blockers:
- HTTP vs HTTPS:
getUserMediais blocked on insecure origins. Use HTTPS orlocalhost. - Permission denied: The user dismissed or blocked the permission dialog. Check browser site settings and request permission again.
- No microphone device: Test with
navigator.mediaDevices.enumerateDevices()to list available audio inputs. - Sending audio before session open: Always wait for the WebSocket
onopenevent before streaming audio.
High latency / slow responses
EVI latency has several components. The part you can control:
| Component | Typical latency | Optimization |
|---|---|---|
| Audio upload chunk | 100–200 ms | Send small chunks (don't buffer >500 ms) |
| Speech detection (VAD) | ~150 ms | Set end-of-utterance threshold in session settings |
| LLM generation | 300–800 ms | Not controllable; platform-dependent |
| TTS synthesis | ~200 ms | Streams as soon as first token is ready |
Get an email the next time Hume AI goes down
Outage alerts for Hume AI, straight to your inbox. No account needed, unsubscribe in every email.
Watching more than one service? A free account covers 5 services + a daily digest — and Pro is currently free.
FAQ
What is Hume AI EVI?
EVI (Empathic Voice Interface) is Hume's real-time voice AI that understands emotional tone from speech and generates emotionally expressive responses. It combines speech recognition, LLM inference, and text-to-speech in a single WebSocket connection with sub-second latency.
Hume vs ElevenLabs vs PlayHT — which is more reliable?
All three are in the same real-time voice AI space. For uptime comparison, see prismix.dev/service/hume and prismix.dev/service/elevenlabs. Hume's differentiator is the emotional intelligence layer; the tradeoff is a more complex WebSocket API versus ElevenLabs' REST-based TTS.
Hume Python SDK import error
Install the correct package: pip install hume. The Hume Python SDK provides HumeClient for REST APIs and AsyncHumeClient for async usage. For EVI, use the hume.empathic_voice module.