forked from rohitg00/ai-engineering-from-scratch
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathquiz.json
More file actions
90 lines (90 loc) · 3.24 KB
/
Copy pathquiz.json
File metadata and controls
90 lines (90 loc) · 3.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
{
"lesson": "22-voice-agents-pipecat-livekit",
"title": "Voice Agents: Pipecat and LiveKit",
"questions": [
{
"stage": "pre",
"question": "Which two flow directions does a Pipecat pipeline use?",
"options": [
"Read and write",
"DOWNSTREAM (source to sink) and UPSTREAM (feedback, cancel, barge-in)",
"Inbound and outbound",
"Hot and cold"
],
"correct": 1,
"explanation": "Frames flow downstream source-to-sink and upstream for control and cancellation."
},
{
"stage": "pre",
"question": "What is the canonical Pipecat voice pipeline?",
"options": [
"VAD -> STT -> LLM -> TTS -> transport",
"TTS -> STT -> LLM -> VAD",
"LLM -> embed -> retrieve -> answer",
"Audio -> JSON -> SQL -> response"
],
"correct": 0,
"explanation": "VAD detects voice activity, STT transcribes, LLM responds, TTS speaks, transport delivers."
},
{
"stage": "check",
"question": "Which two voice agent classes does LiveKit Agents ship?",
"options": [
"MultimodalAgent (direct audio) and VoicePipelineAgent (STT/LLM/TTS cascade)",
"BatchAgent and StreamAgent",
"TextAgent and SpeechAgent",
"LocalAgent and CloudAgent"
],
"correct": 0,
"explanation": "MultimodalAgent uses direct audio (Realtime-style); VoicePipelineAgent uses STT->LLM->TTS for text-level control."
},
{
"stage": "check",
"question": "What is barge-in and how is it handled?",
"options": [
"An LLM cost spike; reduce tokens",
"The user interrupts while the agent is speaking; UPSTREAM cancel frames stop TTS mid-utterance",
"A provider outage; switch regions",
"Captcha failure; retry"
],
"correct": 1,
"explanation": "Barge-in is user interruption; UPSTREAM cancellation is how Pipecat handles it cleanly."
},
{
"stage": "check",
"question": "What end-to-end latency does the lesson describe as premium?",
"options": [
"About 50 ms",
"About 450-600 ms",
"About 1500 ms",
"About 5000 ms"
],
"correct": 1,
"explanation": "Premium stacks land around 450-600 ms; 800-1200 ms is common; over 1500 ms feels broken."
},
{
"stage": "post",
"question": "What goes wrong if STT confidence is ignored?",
"options": [
"Latency improves",
"Low-confidence transcripts feed the LLM as if gospel, producing wrong answers; gate on confidence or ask for confirmation",
"TTS gets faster",
"Calls get cheaper"
],
"correct": 1,
"explanation": "Treating low-confidence STT as truth is a top voice-agent failure mode."
},
{
"stage": "post",
"question": "Why does the lesson recommend summing component latencies before shipping?",
"options": [
"Providers bill by latency",
"Every component adds 50-200 ms; the sum determines whether the experience feels broken",
"It satisfies a compliance requirement",
"Latency is required by WebRTC"
],
"correct": 1,
"explanation": "Sum the chain (VAD + STT + LLM + TTS + transport) before shipping; targets are tight."
}
]
}