AI Engineer World's Fair 2025
The Voice-First AI Overlay: Designing Conversational Co-Pilots
Read the talk
The Voice-First AI Overlay: Helping Without Taking a Turn
Live conversational assistance needs more than fast models: it must recognize when help matters, preserve context, and respect the attention of the people speaking.
From a talk by Gregory Bruss
How can AI help while two people are talking?
Conversation is our oldest interface, yet a live conversation between two people can leave AI outside the interaction. How can increasingly capable systems help through voice while keeping the humans involved? Gregory Bruss starts with this gap: the interface people use most naturally is still a difficult place to deliver assistance.
Two developments make that gap worth revisiting. Specialized agents can perform increasingly substantial tasks, while conversational voice agents make tools accessible through a call: ask for information, let the agent search, and hear its response. Ambient agents change the trigger. Instead of waiting for a chat message, they respond to an event. Bruss points to Harrison Chase’s talk, Ambient Agents and the New Agent Interface, as a reference for this emerging interaction model; Chase’s related ambient-agents article provides companion reading.
On the capability side, better retrieval-augmented generation, multi-step tool calling, longer task horizons, and agent orchestration expand what assistance can accomplish. On the voice side, lower time to first token and improved latency bring that assistance closer to conversational speed. Bruss also anticipates full-duplex speech models. The resulting design question is whether these capabilities can provide real-time help within an ongoing human conversation.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Language assistance during a live call
The prototype puts this question into a concrete setting: a live foreign-language call in which a participant is not fluent.
The described pipeline has several distinct responsibilities:
- Caption scraping brings the call’s captions into the assistance pipeline.
- Smart debouncing manages the incoming caption activity.
- Context management keeps language suggestions aligned with what is happening in the conversation.
- Suggestion and translation endpoints provide the two kinds of language support.
- Overlay rendering presents that support alongside the call.
The demonstration includes French and German speech. In the French demonstration, the interface shows a live translation panel on the left and populated response options and useful phrases, with English translations, on the right. The main caller remains visible between them.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Assistance without a third speaker
A voice-first overlay assists human-to-human conversation without becoming another speaker. Its voice-first character comes from the interaction it supports, not from a requirement that the AI speak. A conventional voice agent takes turns with a person and may use tools before responding. Here, the humans keep talking while the overlay listens passively and surfaces relevant help.
That help might be a phrase, a language suggestion, or a definition. Otherwise, the interface stays out of the way. Its conversational awareness is scoped to the current interaction: the surrounding dialogue supplies the context in which a suggestion becomes useful.
The overlay occupies an interface layer above speech capabilities and agent machinery. Speech recognition and text-to-speech provide foundational capabilities; intent and orchestration frameworks organize agent behavior. The overlay can decide when and where agent help appears without owning the agent’s internals.
| Interaction | Role of the AI |
|---|---|
| Meeting notes, as contrasted here | Retrospective assistance |
| Voice avatar or AI caller | Direct participation in dialogue |
| Voice-first overlay | In-flow assistance for the humans |
Bruss uses these distinctions to locate the design work: amplifying the people in the conversation requires research into cognitive load, timing, and display behavior at the intersection of human-computer interaction and AI interfaces.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Fast help can still arrive at the wrong time
Bruss frames conventional voice-agent responsiveness around a 200–400 ms window; this is not a measured requirement for the overlay. In an overlay, speed alone cannot establish usefulness. Help that arrives early interrupts; help that arrives late misses the moment when it would have mattered.
| Failure | Effect on the conversation |
|---|---|
| Too early | Interrupts the speakers |
| Too late | Misses the useful moment |
| Wrong context | Becomes irrelevant noise |
| Disruptive presentation | Derails conversational rhythm |
Even relevant help at an appropriate moment can fail if presenting it pulls the user away from the conversation. Timing, relevance, attention, and latency must be managed together.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Control how much help enters the conversation
Three design principles follow from the need to protect conversational flow:
- Transparency and control: The user should understand and control how much the overlay gets involved.
- Minimum cognitive load: Intelligence does not compensate for an interface that overloads the speakers or derails their discussion.
- Progressive autonomy: A beginner may need substantial support, then less assistance as their competence grows. Adjustable help should preserve the opportunity to learn.
Progressive autonomy here includes the human becoming more independent of the assistance. It is not simply permission for an agent to do more.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Four practical engineering challenges
Bruss groups the implementation problems into four memorable challenges. The first, Jitterbug Input, starts with ordinary speech: someone pauses to breathe, and speech-to-text activity stops momentarily. Debouncing matters because a pause in input is not necessarily a useful conversational boundary. Context repair accompanies that input handling so assistance remains grounded in the dialogue.
The Sub-Second Speed-Limit puts pressure on the entire live-assistance pipeline, not just model generation. Premature Interrupt, or No Show concerns the decision to surface help: conversational awareness must identify when stepping in would be useful, rather than delivering a hint too early, too late, or not at all.
Finally, Glanceable Ghost treats attention as a limited resource. Each arriving hint consumes some of it. An overlay in a video call should not obstruct the field of view, and its interface needs to be flexible and dismissible. The complete challenge table connects input handling to debouncing and context repair, speed to pipeline optimization, intervention timing to conversational awareness, and presentation to a flexible UI.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Fast inference, private inference, and connected agents
Bruss reports roughly 500–700 ms round trips to a fast provisioned LLM provider, not an end-to-end overlay benchmark. He separately points to low time to first token as a reason for optimism. These observations make responsive assistance seem attainable, while leaving the rest of the pipeline and the decision about when to display help as engineering work.
Smaller, increasingly capable models open another possibility: running the system entirely on the device. The question is whether an overlay can retain the intelligence it needs while making inference private by default. Bruss presents this as a deployment direction to explore, rather than a demonstrated property of the prototype.
The UX ambition is to respect human conversation as something worth protecting. A more speculative extension treats voice as a linkable surface: if ambient agents operate within calls and live conversations, could those agents be connected, and how would their activity be orchestrated? That expands the problem from one helpful interface to coordination across conversational contexts.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
When the transcript changes the meaning
Recognition errors can cascade into advice errors. Bruss uses a hypothetical 5% word error rate to illustrate the risk, not to report prototype accuracy. Transcribing I don't want this as I do want this changes only a small part of the sentence but reverses its intent. Advice based on that transcript may therefore point in the wrong direction. Broader conversational context is a proposed way to help interpret or repair such errors, not a demonstrated solution.
Correctly recognized words do not preserve everything either. Speech carries micro-intonation, prosody, and timing cues that people are sensitive to. Flattening it into text discards those cues. How much useful information disappears, and whether the remaining text is sufficient for relevant assistance, remain open questions.
Introducing agents into live conversation also creates a security surface that needs investigation. The concern extends beyond recognizing the words correctly to what happens when agents interact in that setting. Bruss raises the security question without prescribing a threat model or mitigation.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Beyond captions, toward an unfinished interface
The first proposed extension moves beyond the caption-based prototype. Could speech models use raw audio features to produce contextual overlay suggestions without first converting the conversation into text? Bruss places this possibility alongside emerging full-duplex models. The two properties are distinct: full duplex concerns simultaneous listening and speaking; it does not by itself require an architecture with no text representations. The proposed direction is assistance informed directly by audio.
Multimodal understanding could add the live video as another source of conversational context. Speculative execution and caching are further possible directions for making assistance available when it is needed, though the talk does not develop their implementation. These extensions broaden both what an overlay can perceive and how it might prepare its response.
Bruss closes with the assessment that voice AI’s growth points toward a conversational future: the technology appears ready, but the interfaces are not. For overlays, the remaining work is an interface that can bring that capability into a conversation while leaving the humans able to carry it forward.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
Further reading
- Introducing ambient agentsArticle
Harrison Chase explains agents triggered by events and patterns for requesting human attention and feedback.
An original study of conversational response timing across ten languages, including contextual and nonverbal influences.
A full-duplex dialogue architecture combining parallel audio streams with time-aligned text generation.
Inference code and setup instructions for experimenting with Moshi, including an MLX implementation for Apple devices.
Read the complete timestamped transcript
- 0:01
Hi, my name is Gregory, and today I'm gonna be talking about the Voice-First AI Overlay, designing conversational co-pilots.
- 0:12
So conversation is the oldest interface. You can think of voice as our original API.
- 0:22
It's the modality that we mastered even before fire.
- 0:27
But when you're actually talking to someone in live interaction, AI can't really help. It's essentially locked out of the conversation.
- 0:39
So this talk really was just a way to explore this question, which is, as AI systems grow more powerful,
- 0:48
can we find ways of keeping humans in the loop with that progress and on track with that progress through what is our most natural interface, the interface of voice?
- 1:03
There's a few reasons that this seems like it's on the horizon. The first is that we are developing highly specialized agents that can perform these incredible tasks over longer and longer time horizons.
- 1:19
And we also have the entire voice AI wave, where we have conversational agents that make AI very accessible. You can have a call with a conversational voice AI. It has access to tools.
- 1:33
It can search for something. It can come back to you with that information.
- 1:37
So we have those two explosions ongoing, but it seems like the user experience for ambient agents that respond not to a text chat or to a message, but rather to an event, uh, is still being defined.
- 1:54
So there was a great talk on this by, uh, Harrison Chase, uh, last month called Ambient Agents and the New Agent Interface. And this talk is just a way of exploring, uh, what might be some future options there.
- 2:10
So there are currently these two waves ongoing. The first is the agent capability wave. Uh, agents are getting more powerful over time. We have better ways of designing RAG systems, multi-step tool calling, uh, acting over longer and longer time horizons.
- 2:25
There's also this entire agent orchestration, uh, piece to it as well. And then there's the voice technology wave. So time to first token is reducing, uh, latency has improved a lot, and it also looks like full duplex speech-to-speech models are on the horizon.
- 2:45
So if we try and combine these two, is there a way of offering real-time assistance via agents but in an ambient setting, conversational setting?
- 2:59
So there's a demo which is real-time conversational assistance in the context of a live foreign language call, in the case where you do not necessarily speak the language fluently.
- 3:12
And what you'll see in the demo is caption scraping, smart debouncing, managing the context so that the suggestions, foreign language suggestions that the LLM is giving are, uh, in line with what's happening in the, in the call.
- 3:27
Uh, there's an entire LLM pipeline around that, around suggestion endpoint, translation endpoint, and all of this comes together within this voice-first AI overlay, which is then rendered. [French and German spoken]
- 5:11
So I'll just define the overlay paradigm.
- 5:33
A voice-first AI overlay sits alongside human-to-human calls and adds real-time assistance into that call, but without becoming a third speaker. So it is native to voice in that these two speakers are, of course, speaking with each other, but it does not try to actually participate in the call itself by having a sort of group setting.
- 5:58
So the typical voice AI interaction is you have a human speaking with an AI. That AI can then have access to tools. It can look up some information, get back to you.
- 6:07
But the overlay paradigm is different You have a human and a human speaking with each other and an AI operating in between to enhance and augment the dialogue. So in the case of the demo, the overlay is listening passively to the natural dialogue and then is surfacing relevant help under a specific context, uh, in that call.
- 6:28
So language suggestions, phrase suggestions, definitions, things like that. And otherwise, it stays out of the way until it is needed. So you can think of it like overlay enables an ambient agent, but that is conversationally aware because it exists only within that conversational moment.
- 6:51
Where would overlays fit in? So there are many layers, uh, of the stack and, and in the landscape currently. We have core speech models, [lips smack]
- 7:01
uh, to go from, you know, speech recognition, text-to-speech. We have, uh, intent and agent frameworks, so agent orchestration, for example. The overlay wouldn't necessarily, uh, be the agent itself, but it can decide when and where an agent surfaces or whether help from an agent surfaces.
- 7:21
It doesn't necessarily need to be concerned with the internals of that agent. There are also meeting bots or note-takers. These happen after the fact. They don't really happen in flow during a live interaction.
- 7:35
There are voice avatars and full AI callers, which is, uh, a v- a very interesting field right now. [lips smack] Um, but with overlays, it's not that they participate in the dialogue directly.
- 7:46
They simply try to give a way of amplifying the humans that are in the room. And part of that is in order to do that, there needs to be UX research on cognitive load, overlay design, timing, and this whole intersection of human-computer interaction plus AI UX research.
- 8:10
Besides the design challenges, there are also engineering challenges to be aware of. So with normal voice AI systems, uh, latency is the most important thing. But with overlays, it's a little bit different because you're not constrained necessarily by, uh, you know, a voice agent getting back to you within a 200 to 400-millisecond window where it will feel
- 8:35
off if it's 400 milliseconds too late. The thing is, though, if an overlay is assisting a live conversation and that help comes early, it's an interruption. It'll interrupt the conversation.
- 8:47
If it comes late, then you've missed the opportunity for the help to be of highest value, so it's useless.
- 8:55
If the help arrives, but it's loaded with the wrong context, then it's kind of spam. And even if all of that goes correctly, uh, if that help arrives but derails the ongoing conversation, then it's not usable because it hasn't really respected the conversational flow, the conversational rhythm of the two people who are speaking with each other.
- 9:20
And through all of that, the latency still has to be well managed throughout.
- 9:27
So if I could summarize it, it's timing, relevance, attention, and latency.
- 9:37
Now, for this design landscape, there's some principles that we can think about. Say the first is that for any overlay, we need to provide transparency and control, so you should be able to decide how much the overlay is actually, uh, getting involved in the conversation.
- 9:57
It should enforce minimum cognitive load. So it could be the most intelligent, uh, system in the world, but if it's
- 10:06
entering the conversation in such a way that it overloads the speakers and derails their, their conversation, then I think, um, that's, that's difficult. I don't think it would be very usable in this case.
- 10:17
And the third is an interesting one, which is allowing progressive autonomy. So in some cases, you know, if you're new to a field or something, you need a lot of help at the beginning.
- 10:30
But over time, you also want to moderate how much help you're getting so that you can also make sure that you are, uh, learning in the right way. So finding ways to allow progressive autonomy, I think, is a key design principle.
- 10:46
If you try to build one of these systems, uh, you will almost certainly encounter these four challenges. So I've listed them here as the four horsemen of overlay engineering.
- 10:59
The first is jitterbug input. So when someone is speaking, they might pause to take a breath, uh, and there'll be a, a moment where the speech-to-text is no longer running.
- 11:11
So yeah, debouncing is quite important there. Context repair is also very important. If you aim to give live assistance, then you're probably working with a sub-second speed limit, so the entire pipeline has to be optimized.
- 11:26
The third is when help arrives, it could come too early, so premature interrupt, or it could come, uh, way too late or not at all, so no-show. And the way to try and think about that is if you have very good conversational awareness, you know at what point, uh, it is the right time to step in and,
- 11:48
and help. The fourth is glanceable ghost. So you can think of it like attention is a kind of currency, and every time, uh, a hint arrives, it taxes the attention of the person that's seeing it.
- 12:03
So it shouldn't be, for example, if it's an overlay in a video call, like, you know, completely obstructing the field of view. Needs to be flexible, needs to be dismissible.
- 12:13
There's a lot of stuff around, uh, user, user interfaces that, uh, can be helpful here.
- 12:21
What excites me about this space? So I would say that I find it really exciting that latency is now within striking distance. We can thread round-trip calls to a fast provisioned LLM provider, um, in, yeah, 500, 700 milliseconds.
- 12:39
Time to first token is very low in some cases. I've seen people get, uh, yeah, very, very quick, uh, responses back.
- 12:47
Another angle is how to make the entire thing private by design. So we're seeing models become increasingly capable, even though they're smaller. Uh, if you do run this entirely on-device, how would that work?
- 13:00
You know, how can we make sure that we can get the same level of intelligence but keep it private by default on-device inference? I think that's an interesting angle.
- 13:09
The third is how to inject a strong user experience ethos into the entire concept. So a UX stance that values
- 13:21
human conversation, uh, and, and re-really respects it. Like it's something that is very native to human beings, and yeah, in many ways, kind of something that should be protected.
- 13:35
And I think the fourth angle is, um, more speculative, but voice as a linkable surface. So if you have, uh, ambient agents in the context of calls or, or, or, uh, live, live human conversations, can they be linked in some way?
- 13:54
How would you orchestrate that? I think that's an interesting, uh, piece.
- 14:00
Where I'm curious. So one thing that I'm curious about is that ASR errors can cascade.
- 14:08
So, uh, if you have a word error rate of 5% and in some of those cases you transcribe don't to do, for example, so I do want this versus I don't want this, uh, the overlay might give the wrong advice.
- 14:23
So how to, how to deal with that, um, pairing it with the amount of conversational context that you have would be one way. But yeah, this is something that I'm quite curious about how to, how to think about.
- 14:35
Another thing is prosody and timing complexity. So
- 14:40
because we've had voice for so long, and we've really evolved with, with voice, uh, we are hardwired to detect even micro intonation signals, and those are all lost when we just convert straight from speech to text.
- 14:56
So I think that's also something that I'm wondering about. H-how much-- W-what is the quantity of that information loss? And can you still get relevant assistance even if everything is flattened from speech to, to text?
- 15:10
And then, of course, the security surface. So if you have agents actually interacting in live conversations, um, what security risks does that pose? It, it, it feels like a completely new security surface to think about.
- 15:25
And, uh, yeah, it would be interesting to look into that further as well.
- 15:31
Extensions and future directions for voice-first overlays. So one is, um, it does look like full duplex speech models are on the horizon, where you do not convert from speech to text in order to do anything.
- 15:45
You take just the raw audio through a speech model. It does not get converted into text. You have audio features. Can you provide contextual suggestions in an overlay paradigm just with that?
- 15:57
I think that's interesting. Another thing is multimodal understanding. So being able to see the live call or the live video, uh, might give information that makes the AI interaction more helpful.
- 16:12
And then speculative execution and, and caching. That's also quite interesting.
- 16:17
So yeah, I think overall, uh, it's a very interesting space to be in, and I think in many ways, just with how voice AI has exploded, it does seem like the future is conversational.
- 16:31
Seems like the technology is ready, but the interfaces are not.
- 16:37
And, uh, yeah, thanks for listening. I've dropped my email there. Thanks.