AI Engineer Summit 2025
How Deep Research Works
Read the talk
How Deep Research Turns Questions into Research Tasks
A shot-put scholarship question exposes what a research agent must do: plan around missing evidence, survive failures, combine sources, and preserve context for follow-up work.
From a talk by Mukund Sridhar and Aarush Selvan
Before you start: Basic familiarity with LLM prompts, context windows, and web retrieval will help with the architecture discussion.
From scholarship advice to concrete requirements
What does it take to get an athletic scholarship for shot put, and how do you get one? Answering that question requires more than advice about where to look. Gemini Deep Research was built to browse the web and produce a report on the user’s behalf. In the version presented by Aarush Selvan and Mukund Sridhar, users selected 1.5 Pro with Deep Research in Gemini Advanced. Selvan’s rounded $20 access price refers to the historical subscription, not a charge for each report.
Research and learning were already leading uses of Gemini, but difficult questions often produced a blueprint for finding an answer. For the shot-put question, that meant advice to contact coaches, find out how far to throw, and maintain good grades. The missing information was precisely what the user needed: actual academic requirements and throwing standards. A useful research agent must resolve the details that ordinary advice leaves as homework.
The engineering opportunity was to spend more inference time and make more browsing calls in exchange for a more comprehensive answer. That relaxation still had a practical budget: Selvan joked that the agent had to finish in five minutes because they did not have the chips for more. This was a framing of the compute constraint, not a universal completion-time guarantee.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
An editable plan makes the wait intentional
A chatbot normally feels synchronous: ask a question, then read its answer. A research task that runs for minutes breaks that expectation. It also needs to be chosen deliberately. Waiting several minutes for the weather or a joke offers little benefit, while a long research report creates a second problem: how to read and work with thousands of words inside a conversation.
The product walkthrough uses a venture-capital research question: investigate recent breakthroughs in small nuclear reactors and identify interesting companies in their supply chain. Instead of immediately browsing, Gemini presents a research-plan card. The card makes the proposed work visible and gives the user a chance to change its scope.
The interaction proceeds through an explicit handoff:
- Review the approach. The plan describes the research Gemini proposes to undertake.
- Edit the plan. The user can steer the investigation before it begins.
- Start research. Approval moves the task from a proposal into execution.
Like an analyst explaining an approach before beginning, the agent establishes what it intends to do. The extra interaction also signals that this is a different kind of request from an ordinary chat response.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Make progress inspectable and the report persistent
After approval, Gemini shows the websites it is browsing in real time. This interface predates thinking-model displays; its transparency comes from exposing source activity. Users can open those pages and read while the research continues. The count also created an unintended incentive: Selvan reports that some users deliberately pushed the displayed website count into the thousands. That anecdote describes people testing the counter, not a typical research workload or a measure of answer quality.
When research finishes, the report stays pinned beside the conversation. Selvan explicitly credits Anthropic’s Artifacts interface as inspiration. Keeping the document in view lets the user read a section and ask about it without scrolling back and forth through the chat. The same arrangement supports changes to writing style, adding or removing sections, and follow-up questions.
Sources consulted and sources cited are different sets. The interface exposes both, supporting user trust and attribution to publishers. A page can be read without contributing to the final report, yet its information can remain in context for later questions. Citations also carry into Google Docs when the user exports the report, preserving the connection between the document and its supporting sources.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
The task must outlive an individual call
Behind the interface are four connected engineering concerns: long-running work, iterative planning, interaction with a noisy web, and growing context. Each affects the others. Browsing produces intermediate information; that information changes the plan; the revised plan triggers more calls and expands the task’s state.
A research task can make many LLM and service calls over several minutes. Intermediate failures are therefore part of the operating environment. Sridhar also anticipates tasks that could eventually run for hours, making it even more important to recover from a failed service without dropping the whole investigation. State management must preserve the research task across failures of its individual operations. The talk identifies that requirement without prescribing a particular storage system or retry implementation.
The same separation between a task and its immediate interaction enables a different usage pattern: submit the request, walk away, receive a notification, and read the result later. The user may return on another device. Recoverable task state therefore serves both reliability and the cross-device product experience.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Choose the next action from what is still missing
Return to the shot-put scholarship question. Its subproblems do not all have the same dependencies: some can be investigated in parallel, while others require earlier findings. The model must identify that structure, then inspect the information already collected before deciding what to do next. Parallel execution saves time only when the work is actually independent.
In Sridhar’s example, the agent has found Division I qualifying information but still needs to investigate Divisions II and III. The point is the gap in coverage, not that all divisions offer equivalent scholarships. Current NCAA guidance states that Division III schools do not offer athletics scholarships, although other aid may be available. A complete investigation must distinguish participation requirements from scholarship availability instead of filling every division with the same kind of answer.
A small TypeScript representation makes this planning boundary concrete. The records below track evidence coverage, not athletic eligibility; the resulting actions are proposed searches, not completed findings.
typescript
type Division = "D1" | "D2" | "D3";
type Coverage = {
division: Division;
qualifyingInformation: "found" | "unresolved";
};
const coverage: Coverage[] = [
{ division: "D1", qualifyingInformation: "found" },
{ division: "D2", qualifyingInformation: "unresolved" },
{ division: "D3", qualifyingInformation: "unresolved" },
];
const proposedActions = coverage
.filter(item => item.qualifyingInformation === "unresolved")
.map(item => ({
division: item.division,
status: "proposed" as const,
question:
`For ${item.division}, verify shot-put participation requirements ` +
"and whether athletics scholarships are available.",
}));
The general loop is to ground the next plan in accumulated evidence. Finding one answer changes what remains worth investigating.
A second example exposes a subtler gap. A search for the best roller coaster for children returns a page listing the top ten roller coasters. The page is relevant to roller coasters, but that alone does not establish suitability for children. The planner must recognize the unresolved constraint and pursue it in later steps. Topical relevance is not the same as answering the question.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Combine facts without confusing their sources
Even when the necessary facts exist, they may not appear together. For a question about scuba certification at nearby dive centers, one source explains the course structure and another gives the center’s pricing. The agent has to combine those facts to determine the certification’s cost structure. Neither page independently supplies the whole answer: the useful result comes from relating the requirements to the relevant prices.
Combining sources also introduces entity resolution. Two pages may mention what appears to be the same organization or offering, but the agent needs identifying information to determine whether those mentions really refer to one entity. When the evidence remains ambiguous, further research is part of the task. Otherwise, a plausible synthesis can attach one entity’s facts to another.
Accessing the evidence is a separate challenge from interpreting it. Sridhar compares two websites about music festivals in Portugal: one makes most of the information available in a single view, while the other uses a different layout. A robust browsing mechanism must navigate these variations. Search can locate a relevant page, but the agent still needs to reach and read the information within that page’s structure.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Keep recent detail and retrieve older research
Each research step adds intermediate outputs to the context. Finishing the first report does not end that growth: a user may ask a follow-up question or request the same investigation for another topic. Those subsequent tasks add their own evidence and planning history. Gemini’s long-context models provide room, but they do not remove the need to decide what stays available directly.
Sridhar presents one approach with a deliberate recency bias:
| Research history | Treatment |
|---|---|
| Current task | Keep richer information in context |
| Previous task | Retain more detail |
| Older tasks | Select research notes for retrieval |
The older notes go into a retrieval-augmented generation (RAG) system, so the model can still access them selectively. This reduces how much old material must remain in active context without making the older work entirely inaccessible. It is one context-management choice among several, with its own trade-offs.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Research that changes with the user and the task
At the December launch, the team was unsure whether users would accept waiting several minutes for an answer. Selvan reports a positive reception and compares the product to a McKinsey analyst available through an inexpensive subscription. That is his analogy for the product’s value, not a validated performance comparison. The system he describes here retrieves from the open web and accepts and produces text; those boundaries belong to the talk-era product.
The first proposed direction is deeper expertise. Moving from an analyst to a partner, in Selvan’s analogy, means going beyond aggregation and synthesis to explain implications: which patterns matter, what they suggest, and how they affect a decision. In science, the corresponding ambition is to read many papers, compare methods, recognize patterns, and propose new hypotheses to investigate. These are directions for development rather than capabilities demonstrated in the walkthrough.
Expertise alone does not make an answer useful to a particular person. Consider company due diligence:
| Reader | Information needed |
|---|---|
| General reader | Company explanation and strategic position |
| Banker | Detailed financials and a discounted cash-flow model |
A banker’s needs imply more than a different writing style. They require finer-grained financial analysis and should change which questions the agent pursues and which sources it browses. Personalization belongs in the investigation itself, not only in the final presentation.
The final direction is to combine web research with coding, data science, and even video generation. In the due-diligence example, an agent could perform statistical analysis and construct financial models, then use those results to inform the research output. The report would draw on work performed over the evidence, as well as on retrieved text. Selvan explicitly qualifies the financial example: Google does not give financial advice and is not a financial advisor. The proposed expansion is toward research whose tools and outputs fit the work the user actually needs to do.
Suggest correction
This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.
Resources
From the talk
Google’s original description of Deep Research, including editable plans, iterative web research, linked reports and Google Docs export.
Further reading
Anthropic’s June 2024 explanation of working with generated documents and code in a separate panel alongside a conversation.
- Division III eligibility and financial aidDocumentation
Official NCAA guidance distinguishing Division III participation and academic requirements from athletics scholarships.
Read the complete timestamped transcript
- 0:00
[on-hold music] Hey, everyone.
- 0:17
I'm Aarush. I'm a product manager here at Google.
- 0:19
Hey, I'm Mukund. I'm a software engineer at Google working on Deep Research.
- 0:22
Um, so, uh, I don't know if people have had a chance to, uh, try Deep Research on Gemini, um, or are familiar with the product, but you can try it if you go to Gemini Advanced.
- 0:34
And if you scroll past 2.0 Flash, 2.0 Flash Thinking Experimental, 2.0 Flash Thinking Experimental with apps, 2.0 Pro Experimental, you will find, uh, 1.5 Pro with Deep Research, which is what we built.
- 0:47
Um, and if you have the chance to use it and you paid the twenty bucks, uh, you will see that it's a personal research agent that can browse the web for you to, to build, uh, reports on your behalf.
- 0:58
And so our motivation and what we wanna talk about today is kind of why we built it, some of the product challenges we overcame, and some of the technical challenges you'll face of building a web research agent.
- 1:07
Um, so our motivation was really we wanted to help people get smart fast. Um, we saw that research and learning queries are some of the top use cases in Gemini.
- 1:17
But when you bring, like, really hard questions, uh, to chatbots in general, what we were finding is that it would often give you a blueprint for an answer rather than actually give you the answer itself, right?
- 1:29
So we had this query that we used to throw around of like: Tell me what does it take to get an athletic scholarship for shot put, and, like, how do I go get one?
- 1:38
And often the answers would be things like, "You should talk to coaches," "You should find out how far you should be able to throw," and, you know, uh, "You should make sure you have good grades."
- 1:46
But really what I wanna know is like, okay, what are the grade boundaries? Like, how far do I need to actually be able to throw? I want something super comprehensive, and, and that's where we saw a big opportunity.
- 1:56
Yeah, so we said, what if you remove the constraints of compute and latency at inference time? Let Gemini take as long as it wants, browse the web as much as it needs, and see if we can trade that off for a much comprehensive answer for the user.
- 2:10
But you gotta do it in five minutes, 'cause beyond that, uh, we don't have the chips. Um, so, uh,
- 2:18
this brought a bunch of product challenges for us. Um, Gemini, up to this point, is an inherently synchronous feature. It's a chatbot. Um, and so you wanted to-- we needed to figure out how do you sort of build asynchronous experiences in, in an inherently synchronous product.
- 2:33
Um, you also wanted to set expectations with users, right? Deep Research is good for, like, one very specific thing, but a lot of user queries to Gemini are things like, "What's the weather?"
- 2:40
"Write me a joke." Things like that, where waiting five minutes is not gonna get you a good answer, and we wanted to set expectations. Uh, and the last thing is our answers can be thousands of words long, and we needed to figure out how do you make it easy for users to engage with really long outputs and,
- 2:56
um, uh, in, in a chat experience. Um, so let's walk through kind of the UX and kind of think about how, how we solve some of these, right? So imagine you're a VC, uh, and everybody's talking about, you know, investing in nuclear in America.
- 3:11
And so you come with this query like, "Hey, help me learn the latest technology breakthroughs in small nuclear reactors and tell me interesting companies in the supply chain." So the first step, um, when you bring this query to Deep Research is that Gemini will actually put together a research plan for you and present it in a card.
- 3:26
And so this is the first way in which we're able to communicate with users. Like, this is different. This isn't your standard chatbot experience. Something's gonna happen. You're gonna hit Start.
- 3:35
But it's also an opportunity for us to actually show the user a research plan that they can edit and engage with. Kind of like a good analyst, right? They, they wouldn't just get to work.
- 3:42
They'd actually show you, "Okay, here's how I'm gonna approach this." And it's a way for users to, if they want, kind of engage and steer the direction of the research further.
- 3:51
Now, uh, once it-- you hit Start, we actually try and show you, um, what Gemini is doing on the-- under the hood in real time, uh, by showing you the, the websites it's browsing.
- 4:03
And this is a feature that was built before thinking models, and thoughts are also a really great way of kind of showing transparency of what the model is thinking.
- 4:11
Um, but what's really nice here is while you wait, you can sort of click through the websites, dive into any of the content. Um, but what we also inadvertently saw is people trying to game that number to see how high it could go.
- 4:22
So we definitely saw people push that number into the, into the thousands, uh, to try and, um, you know, see how many websites Deep Research could read.
- 4:30
Um, finally, we kind of get this report that's, you know, thousands of words long. And, um, we're really inspired by what, kind of what Anthropic does with, um, artifacts.
- 4:40
And so we thought that was a really great way of sort of being able to pin an artifact so that users can actually ask questions about the research while reading the material.
- 4:49
They don't have to scroll back and forth. And what's really neat about this is it means it's easy for you to engage in sort of changing the style of the report, adding sections, removing sections, asking follow-up questions, and, uh, and it sort of makes that really easy.
- 5:02
And the last part that's super important is kind of user trust and also doing right by the publishers. So we, we try and always show is all the sources we read as well as all the sources we used in the report.
- 5:12
'Cause not everything that we read is used, but it stays in context for follow-up questions. And, and also sort of these are all things that, um, carry over to Google Docs as citations and things like that if you choose to export.
- 5:29
Uh, so I thought today we can pick some of the challenges, uh, that one has to encounter while building a research agent and ta-talk through some of them. So, uh, I picked four for today.
- 5:39
So one is this, this long-running nature of tasks introduce-- This is a couple of things that we need to look into. Second is the model has to plan iteratively and spend, uh, its time and compute during this time effectively.
- 5:55
So what are those challenges there? And it has to do this, uh, while interacting with A very noisy environment that is the web. And as you do this and, uh, read through information, very quickly you can start seeing your context grow and h-how do you effectively manage context.
- 6:14
So if, if you think about a job that runs for multiple minutes and something that can make many, many d-- uh, different LLM calls and calls to different services, there are bound to be failures, right?
- 6:26
And today we are talking about, oh, of minutes, but you can very easily think in the future of, uh, these kind of research agents taking like multiple hours. So it's important to be robust to intermediate failures of these various services of various reliabilities.
- 6:41
And so being able to build a good state management solution, being able to recover from e-errors effectively so that you just don't drop the whole research, uh, task due to one failure.
- 6:53
That's one. The second aspect of doing this, what it enables us, is to enable this feature, uh, cross-platform. So we believe more and more, uh, users will start kind of registering your asks, uh, or your research tasks and just like walk away, do their thing, and then you need to get notified.
- 7:11
And this can happen now across, uh, devices and you can pick off, uh, uh, reading it, uh, uh, uh, once it's done.
- 7:21
So now what is the model doing at, uh, like through these, you know, uh, few minutes? Uh, so let's take, uh, example, right? So here, uh, we're looking for, uh, athletic scholarships, uh, for shot put.
- 7:33
There are many facets to this query, and we kind of show this in a research plan like Aarush showed. The first thing the model has to do is try to figure out which of these sub problems it can start tackling in parallel versus things that are inherently sequential, right?
- 7:49
So the model has to be able to reason to do that. And, uh, the other challenge is, here you see you're always gonna land in this state where there's partial information, so it's important to look at all the information found so far before you decide what to do next.
- 8:06
So in this instance, the model found, hey, it's-- it knows the qualifying standards, uh, for the D1 division, but in order to provide a complete report and answer the user's question, it has to go figure out what the equivalent for the D2 and D3 divisions are.
- 8:22
So this notion of being able to ground on information you find and then plan your next step is key.
- 8:31
Another example of partial information could be when you make searches. Uh, so in this case, we're trying to find the best roller coaster, uh, for kids. Uh, you might find results, uh, that provide partial information again.
- 8:44
So here, uh, you end up at a link, uh, which talks about the top ten roller coasters, but does not mention anything about them being suitable to kids. Uh, so the plan has to recognize this fact and then go ahead and in the next steps of planning, try to resolve this, uh, disambiguity.
- 9:05
Um, another example of, uh, challenges in planning is information is often not found in one place. You find facets of information spread across different sources. So here, uh, we are trying to find, uh, what would, uh, what would it take to get a certification for a scuba dive, uh, in, in, in some dive centers nearby.
- 9:26
So you see, uh, one part or one source has, uh, the kind of the structure of, uh, what, what you have to go through to get a certification, but in a completely different source, you have this notion of the pricing for this diving center.
- 9:40
So the model has to weave this together to figure out, um, you know, what the cost structure for such a certification would look like.
- 9:48
Then there's the classic, uh, entity resolution problem. So you might find mentions of the same entity across different sources, so you need to be able to reason about some information indicators to kind of figure out if they're talking about the same entity or you need to explore more to verify such, uh, disambiguities.
- 10:09
Um, yeah, I think m-most people here have worked on some notion of a web problem, and we know like it's super fragmented. So, uh, here you see two different websites, uh, talking about the same thing, uh, about music festivals in Portugal this year.
- 10:24
Uh, on the left, uh, if you end up at such a website, it's easier and you get most of your information in one go. Uh, on the right, uh, the layout is different, so having a robust, uh, browsing mechanism if you wanna navigate, uh, the web for your research tasks is another, uh, important challenge.
- 10:44
So like we saw, there is a lot of these intermediate outputs, and as you do this and you start getting streams of information during your planning, you can imagine your context size growing very quickly.
- 10:57
Um, the other challenge that, uh, about context size is your research task doesn't typically end with your first query. People have follow-ups. People can say, "Hey, can you also do the same for this other topic?"
- 11:10
So there is like this kind of a follow-up, uh, deep research and, uh, that also adds pressure on the context. Uh, we at Gemini have, uh, the liberty of really long-context models, uh, but, uh, even then you have to design, uh, some way to make sure you, you effectively manage your context.
- 11:30
And there are multiple choices here, each come with various different trade-offs. Uh, we're showing one here, uh, where we kind of have like this recency bias. So you have a lot more information about your current and your previous tasks, but as you get to older tasks, we kind of selectively pick out, uh, you know, things what we
- 11:50
call as research notes and put it in a RAG. That way, the model can still access it, but it's being selective. Uh, I'll hand it back to Aarush about, uh, to talk about what's next.
- 12:00
Yeah. So we were super excited To put this feature out in December, we weren't actually sure if anyone was gonna use it, if anyone was gonna care, um, uh, to wait five minutes, uh, for something.
- 12:12
And, uh, we were really positively surprised by the reception. Um, and, and really what we, what we saw, um, was, hey, we, we've built something that's maybe as good as, like, a McKinsey analyst, right?
- 12:23
And we give it away for 20 bucks. But, um, you know, that's, that's really great and, uh... But what it does is it just retrieves from the open web, and it's a text in, text out only system, right?
- 12:34
And so where we sort of, we sort of see a few different directions of where research agents are gonna go next, and the first one is around expertise, right?
- 12:42
So how do you go from a McKinsey analyst to a McKinsey partner or a Goldman Sachs partner or, like, a partner at a law firm, right? So that's really around not just being able to aggregate information and synthesize it, but also think through the "so what" of how do-- like, what are the implications for what we're gonna
- 12:58
do and, and what are the most interesting insights and patterns that come out of it? The, the other thing is, you know, there are plenty of domains beyond professional services, like the sciences, where you, you know, wanna get really good.
- 13:09
You know, you want something that can read many papers, form hypotheses, find really interesting patterns in, you know, what methods we used, uh, and, and come up with novel hypotheses to explore.
- 13:20
However, um, just because you build something that can be really smart doesn't mean that it's useful to someone, right? So, um, if we were thinking about a use case of running a due diligence on a company, the way you'd present that information to me would be very different to the way you'd present that information to, say, a
- 13:36
Goldman Sachs banker, right? Um, for me, you really wanna talk through, like, what, like, what is this company and how is it positioned strategically? But a banker would want to know all the financial information, actually have a DCF that they could look at, right?
- 13:50
Actually, uh, have a, have a much more, like, fine-grained, uh, sort of, uh, finan- uh, financial modeling and analysis. And, and that really should shape the way in which you browse the web, right?
- 14:00
The way you browse the web, the way you frame your answer, the kind of questions you pursue should be very personalized to kind of meeting the user where they're at.
- 14:07
I think the last part is sort of something that goes across domains of what models can do, right? So not just being able to do web research with text, but being able to combine that with abilities in coding, data science, even video generation, right?
- 14:19
So coming back to this example, if you're doing a due diligence, y- what if it could go and do, like, a lot of statistical analysis and actually build financial models to inform the research output that it gives you, right?
- 14:29
Telling you, "Hey, why is this a good company or not?" Um, I should say Google doesn't give financial advice and- [laughs] ... you know, it's not a financial advisor. Um, but yeah.
- 14:39
And so we're really excited about the potential. We think there's a ton of headroom to make research agents better, and we are really glad we didn't call this Gemini Deep Dive, which was [laughs] our best name before, uh, before launching this feature.
- 14:51
Um, that's it. Thank you so much.
- 14:54
Thank you. [clapping] [upbeat music]