Building Deep Research: A Production AI Research Assistant Agent

google_deepmind · Tech · 2024 · source Agentic: yes · promotional bias: low · source-backed · extracted with prompt 0.5.5 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Production AI research assistants

Google DeepMind built Deep Research for multi-faceted research tasks where ordinary search forces users to open dozens of tabs, compare noisy sources, and synthesize a report manually. The system needed to spend multiple minutes browsing and reasoning, let users steer the research plan, maintain state across long-running work, and evaluate long-form reports whose quality is hard to capture with simple benchmarks.

Constraints:

Architecture

Deep Research wraps a specialized, post-trained Gemini 1.5 Pro agent in a product flow that first drafts an editable research plan. After the user starts or edits the plan, the agent parallelizes obvious substeps, uses search and page-browsing tools, reads prior outputs to decide what to double-click, and iterates until it decides the plan is complete. The browsed material remains in long context for follow-up questions when possible, with retrieval available past context limits. An async execution platform maintains state and retries for multi-minute jobs, while the product evaluates behavior with dev-set metrics, human review, groundedness/completeness attributes, and an ontology of research behavior types.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  user[User] --> gemini-deep-research-ui[Gemini Deep Research UI]
  gemini-deep-research-ui --> editable-research-plan[Editable research plan]
  gemini-deep-research-ui --> report-chat-workspace[Report chat workspace]
  editable-research-plan --> gemini-deep-research-agent[Gemini Deep Research agent]
  gemini-deep-research-agent --> search-tool[Search tool]
  gemini-deep-research-agent --> web-page-browser[Web page browser]
  gemini-deep-research-agent --> source-context-store[Source context store]
  gemini-deep-research-agent --> analysis-and-drafting-stage[Analysis and drafting stage]
  gemini-deep-research-agent --> async-execution-platform[Async execution platform]
  search-tool --> source-context-store
  web-page-browser --> source-context-store
  source-context-store --> analysis-and-drafting-stage
  analysis-and-drafting-stage --> report-chat-workspace
  report-chat-workspace --> user
  evaluation-harness[Evaluation harness] --> gemini-deep-research-agent
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
User Researcher who submits a query, reviews the plan, optionally edits it, and reads or follows up on the report. Gemini Deep Research UI
Gemini Deep Research UI Product surface that shows the plan, live website browsing, report, citations, and side-by-side chat. User, Editable research plan, Report chat workspace
Editable research plan Initial model-generated plan that acts as a transparent contract and steering surface before long-running work starts. Gemini Deep Research agent
Gemini Deep Research agent Specialized Gemini 1.5 Pro based agent that plans, searches, browses pages, reasons over prior outputs, drafts, and revises reports. Search tool, Web page browser, Source context store, Analysis and drafting stage, Async execution platform
Search tool Tool used to explore topics and discover candidate web pages. Source context store
Web page browser Tool for going deeper into particular pages of interest and reading source material. Source context store
Source context store Long-context working set containing the sites and research material read during the session, with retrieval available when context limits are exceeded. Gemini Deep Research agent, Analysis and drafting stage
Analysis and drafting stage Stage that handles cross-source inconsistencies, report outlining, drafting, and self-critique before final output. Report chat workspace
Report chat workspace Side-by-side document and chat interface for reading, asking follow-up questions, editing, and exporting with citations. User
Async execution platform Internal platform that keeps state, retries failures, and allows users to leave while multi-minute research jobs continue. Gemini Deep Research agent
Evaluation harness Dev-set metrics, human evaluation, and behavior ontology used to evaluate long-form research outputs. Gemini Deep Research agent

Data flow

The user submits a broad research query in Gemini. Deep Research generates a proposed plan, lets the user review or edit it, then uses that accepted plan as a contract for execution. The agent launches parallel search and page-browsing steps, stores the material it reads in context, reasons over previous outputs to refine later searches, enters an analysis/drafting stage, self-critiques the draft, and presents a report with citations in a side-by-side chat/report workspace. Follow-up questions can either use the existing context, trigger more deep research, or edit the report.

5 supporting quotes
“What's nice is the first step is actually where it puts together a research plan that you can review. And so this is sort of its guide for how it's going to go about and carry out the research, right? And so this was like a pretty decently well-specified”transcript, stated
“we kind of give this research plan that is a contract and that you know, has been accepted. But then if you look at the plan, there are things that are obviously parallelizable. So, the model figures out which of the sub-steps that it can start exploring in”transcript, stated
“the model figures out which of the sub-steps that it can start exploring in parallel. And then it primarily uses like two tools. It has ability to do perform searches and it has abilities to go deeper within, you know, a particular web page of interest,”transcript, stated
“same thing, right? So, this notion of being able to read outputs from the previous turn, ground on that to decide what to do next, I think was was key. Otherwise you have like incomplete information and your report becomes a little bit of a like a high-level bullet points. So, we wanted to”transcript, stated
“The model tries to revise that by self-critiquing itself, you know, to to finalize the prompt finalize the report”transcript, stated

Why this architecture

The architecture trades instant response for agentic depth. A visible plan helps users steer a long-running job before compute is spent. Search and deep browsing are separated so the agent can first cover breadth and then double-click when previous findings expose partial or inconsistent information. Long context keeps fresh research material available for follow-up questions, while async execution protects multi-minute runs from browser closures and failures.

4 supporting quotes
“if we're going to spend like 5 to even 10 minutes researching something, we want to one understand what exactly are you trying to accomplish here”transcript, stated
“right? And oftentimes it'll start exploring things in parallel but that's not sufficient. Many times it it has to reason based on information found. So, in this case it one of the searches could have led the EU Commission has these additives banned. It wants to go and”transcript, stated
“we actually hold all these all the research material across turns so if it's able to find the answer in things it's found you're going to get a faster reply”transcript, stated
“if you build like five, six-minute jobs, they are bound to be like failures and you don't want to like lose your progress”transcript, stated

Models used: Gemini 1.5 Pro · Gemini · Gemma

Scale

Alternatives considered (roads not taken)

Ask users direct follow-up questions before research.

Rejected because: The team believed users often do not know what questions or facets to ask about, so showing an editable proposed plan both teaches the topic and invites steering.

“instead of asking the users just follow-up questions directly, we kind of lay out hey, this is what I would do like these are the different facets.”transcript, stated
“they would want to steer this. Yeah, and many times when you try to use a product like this, you often don't know what questions to look for or the things to look for. So, we kind of made this decision very deliberately that instead of asking the users just follow-up questions directly,”transcript, stated

Use retrieval for all accumulated research material.

Rejected because: The team prefers long context for recent research tasks because RAG similarity can struggle when queries combine multiple attributes and users need complex comparisons.

3 supporting quotes
“the tricky thing for rag it really works well because a lot of these things are doing like cosine distance like a dot product kind of a thing”transcript, stated
“cosine distance like a dot product kind of a thing and that kind of gets challenging when your query side has multiple different attributes. The dot product doesn't really work as well. I would say at least for me that's that's my guiding principle on when to avoid rag. That's one. The second one is”transcript, stated
“if it's the most recent set of research tasks where the user is likely to ask lots of follow-up questions that should be in context”transcript, stated

Render pages and use vision for web understanding.

Rejected because: The team judged rendering latency as not worth the value for head queries, while leaving vision for tail cases where it matters.

3 supporting quotes
“the challenge is the trade-off between having to you know actually render it and and so on the the gap the trade-off between the added latency versus the value add you get. You have a latency budget of minutes. yeah, yeah, yeah, yeah it's it's true. In my”transcript, stated
“between having to you know actually render it and and so on the the gap the trade-off between the added latency versus the value add you get. You have a latency budget of minutes. yeah, yeah, yeah, yeah it's it's true. In my opinion uh the places you'll see a real”transcript, stated
“people ask uh there's definitely some use cases where it makes a lot of sense to do it but I still feel it's not in the not in the head cases uh and we we we do it when we get there I guess. The classic is like it's a JPEG that has some important information and”transcript, stated

Use static workflow engines for orchestration.

Rejected because: Agentic research requires dynamic adaptation to the agent's decisions, while Airflow and Step Functions are framed as static execution graphs.

“Meta before. I think so. Apache Airflow, Temporal. were both at Amazon, by the way. Yeah, AWS Step Functions would be one of those where you define a graph of execution, but uh Step Functions are more static and would not be as able to accommodate Deep Research style backends. What's neat”transcript, stated
“Step Functions are more static and would not be as able to accommodate Deep Research style backends. What's neat though is we built this to be like quite flexible. So it's like you can imagine once you start doing hour or multi-day jobs like Yeah, you have”transcript, stated

Optimize for external benchmarks as the main product target.

Rejected because: The team considered benchmarks useful but not directly representative of Deep Research's desired product experience.

“can benchmark against, but they don't really like if I do great on HLE, that doesn't really mean I'm a great deep researcher. So, we want to avoid going into that rabbit hole a bit, but I think we also feel like yeah, benchmarks are great, especially in the whole gen AI space with like”transcript, stated
“really like if I do great on HLE, that doesn't really mean I'm a great deep researcher. So, we want to avoid going into that rabbit hole a bit, but I think we also feel like yeah, benchmarks are great, especially in the whole gen AI space with like models coming”transcript, stated

Patterns

human-in-the-loop-gate (ux)

Deep Research shows a proposed plan before execution and lets users edit or conversationally steer it before the agent spends minutes researching.

3 supporting quotes
“What's nice is the first step is actually where it puts together a research plan that you can review. And so this is sort of its guide for how it's going to go about and carry out the research, right?”transcript, stated
“we want to one understand what exactly are you trying to accomplish here and two give you an opportunity like to steer where the research goes”transcript, stated
“So, like we actually you can actually edit conversationally. We put in a button here just to like draw users' attentions to the fact that you can edit this.”transcript, stated

tool-use-orchestration (agent-architecture)

The agent uses search and deep page browsing tools, starts parallel substeps, and uses findings from earlier turns to choose later tool calls.

3 supporting quotes
“it primarily uses like two tools. It has ability to do perform searches and it has abilities to go deeper within, you know, a particular web page of interest”transcript, stated
“the model figures out which of the sub-steps that it can start exploring in parallel.”transcript, stated
“it can continuously like iteratively search and and and browse until it feels like it's done.”transcript, stated

prompt-chaining (agent-architecture)

Deep Research decomposes a query into plan, browse, analysis, draft, and self-critique stages instead of relying on a single answer-generation call.

3 supporting quotes
“Yeah, so so what's happening behind the scenes actually is we kind of give this research plan that is a contract and that you know, has been accepted.”transcript, stated
“we kind of enter this analysis mode and here there can be inconsistencies across sources.”transcript, stated
“The model tries to revise that by self-critiquing itself, you know, to to finalize the prompt finalize the report and that's broadly what's happening behind the scenes.”transcript, stated

durable-execution (infrastructure)

Google built an async execution platform so multi-minute research jobs can survive user departure, failures, and retries without losing progress.

3 supporting quotes
“Yeah, so we built this uh asynchronous platform for Deep Research, Okay. which is basically to like most of our interactions before this were like sync in nature.”transcript, stated
“you can close your computer. You get a notification on your phone”transcript, stated
“keeping state, uh knowing uh what to retry and and and trying to keep the journey going.”transcript, stated

rag-retrieval (context)

Deep Research keeps recent research material in long context, but falls back to retrieval when context limits are exceeded or older material is less central.

3 supporting quotes
“we actually hold all these all the research material across turns”transcript, stated
“we have retrieval mechanisms if required so uh we natively try to use the context as much as it's available”transcript, stated
“as stuff gets 10 tasks ago you know it's fine if that stuff is in rag”transcript, stated

eval-driven-development (quality)

The team evaluates Deep Research with auto-computed behavior distributions, human review, groundedness/completeness/comprehensiveness criteria, and a use-case ontology.

3 supporting quotes
“I think the entropy of the output space is so high like it's like you people love auto raters but it brings its own own own set of challenges and so for us we have some metrics that we can auto generate right?”transcript, stated
“over some dev set. So there are some things like this you can automate but beyond that there are auto raters but we definitely do a lot of human eval and there we have defined with product about certain things we care about and we've been super opinionated about is it comprehensive is it complete”transcript, stated
“developed this ontology of different research patterns and then for each one came up with queries”transcript, stated

Tradeoffs

Show a proposed plan instead of asking direct clarification questions.

Chose editable research plan over direct follow-up-question interview.

Rationale: A proposed plan teaches users the facets of an unfamiliar topic while giving them a steering surface before compute-heavy research begins.

“instead of asking the users just follow-up questions directly, we kind of lay out hey, this is what I would do like these are the different facets.”transcript, stated
“The aim of this is to kind of tell the user about the topic a little bit more and also get steered.”transcript, stated

Spend minutes researching rather than optimizing for instant latency.

Chose multi-minute research runs over fast synchronous answer generation.

Rationale: The team found that users valued the visible work when it produced deeper exploration and verification, despite this contradicting normal Google latency orthodoxy.

3 supporting quotes
“contrast to like all Google orthodoxy, we're actually going to slow everything right down”transcript, stated
“Yeah, I think it comes down to the trade-off like what are you getting in return for for for the weight? And from an engineering {slash} modeling perspective, it's just trading off inference compute and time to to do two things, right?”transcript, stated
“Either to explore more to be like more complete or to verify more on things that you probably know already.”transcript, stated

Keep fresh research in long context and move older material to retrieval.

Chose long context first with RAG fallback over retrieval-only session memory.

Rationale: Recent research tasks are more likely to need complex follow-up comparisons, while older tasks can be retrieved when needed.

“if it's the most recent set of research tasks where the user is likely to ask lots of follow-up questions that should be in context”transcript, stated
“as stuff gets 10 tasks ago you know it's fine if that stuff is in rag”transcript, stated

Use markdown conversion where useful instead of forcing raw HTML into the model.

Chose hybrid HTML and markdown processing over raw HTML only.

Rationale: Markdown reduces markup noise, while raw or embedded HTML remains available when the access path or content requires it.

3 supporting quotes
“We have both versions right? Uh so there is the models are getting like every generation of models are getting much better at native native understanding of these representations.”transcript, stated
“the markdown step definitely helps in in terms of you know there's a lot of noise”transcript, stated
“if there's an embedded snippet that's HTML we want the model to you know be able to work on that as well.”transcript, stated

Evaluate by product use-case behavior rather than optimizing mainly for public benchmarks.

Chose human and ontology-based product evaluation over benchmark-first optimization.

Rationale: The team considered benchmarks useful but not directly predictive of whether Deep Research creates the desired user value.

“benchmarks, at least the ones that we are seeing, they don't directly translate to the product.”transcript, stated
“our primary goal is like solving the deep research user value for the user use case.”transcript, stated

Gotchas (what bit them)

Users may not edit the plan even when the steering surface exists.

Root cause: Many users accept the model's first plan, treating it like an 'I'm Feeling Lucky' flow.

Resolution: The team added explicit UI affordances and still treats the plan as useful transparency even when users do not edit it.

3 supporting quotes
“Oh, actually you don't need to click the Yeah, actually like in early rounds of testing we saw no one was editing and so we were just like if we just put a button here maybe people will will like engage with it.”transcript, stated
“if we just put a button here maybe people will will like engage with it.”transcript, stated
“it's still like a nice transparency mechanism even if users don't want to engage.”transcript, stated

Iterative planning is hard to make generalizable.

Root cause: Training separate planning traces per domain or per ontology type would be too brittle and expensive.

Resolution: The team relied on post-training, data augmentation, and careful tuning to learn the behavior without overfitting away useful pretraining knowledge.

3 supporting quotes
“Yeah, I think the iterative planning one to do it in a generalizable way. Yeah. That was the thing I was very most wary about.”transcript, stated
“if you had to teach the model for every single type of ontology how to come up with these traces of planning, that would have been a nightmarish.”transcript, stated
“post-train it just enough without losing things that it knows in pre-training, basically not overfitting”transcript, stated

Raw web content is noisy and sometimes not worth rendering visually.

Root cause: HTML includes JavaScript, CSS, snippets, and visual edge cases; rendering pages adds latency.

Resolution: The system uses both raw/HTML-compatible representations and markdown conversion, and postpones vision to cases where value outweighs latency.

3 supporting quotes
“the the markdown step definitely helps in in terms of you know there's a lot of noise”transcript, stated
“sometimes it depends on the kind of access of what we get as well like uh for example if there's an embedded snippet that's HTML”transcript, stated
“the trade-off between the added latency versus the value add you get.”transcript, stated

Long-running research jobs are failure-prone if treated like synchronous chat.

Root cause: Five-to-six-minute agent runs can outlive a browser session and may fail mid-journey.

Resolution: Deep Research uses an async platform with state retention and retry logic.

3 supporting quotes
“all chat things are sync, right? And now now you can leave the chat and come back.”transcript, stated
“if you build like five, six-minute jobs, they are bound to be like failures”transcript, stated
“keeping state, uh knowing uh what to retry and and and trying to keep the journey going.”transcript, stated

Auto-evaluating long-form research reports is intrinsically difficult.

Root cause: The output space is high entropy and the quality target includes completeness, comprehensiveness, and groundedness, not just a single answer.

Resolution: The team combines auto-computed distribution metrics, human review, and ontology-based evaluation sets.

3 supporting quotes
“I think the entropy of the output space is so high like it's like you people love auto raters but it brings its own own own set of challenges and so for us we have some metrics that we can auto generate right?”transcript, stated
“There's another challenge but I'll I'll if you if you if Is this where the other challenge in that sometimes you just have to have your PM review examples? Yeah, exactly.”transcript, stated
“is it comprehensive is it complete like groundedness and these kind of things.”transcript, stated

Directly relying on model memory can undermine source-grounded research.

Root cause: Thinking models and model memory may know facts, but users still need sourced claims for trust.

Resolution: The team treats balancing model memory with external grounding as an explicit research-agent challenge.

3 supporting quotes
“But unless I sourced it, it's it's going to be hallucinated, yeah. Yeah, like one is a hallucination or even if I got it right, as a user I'd be very wary of uh that number unless I'm able to like source the the the the the dot gov website for it and so on, right?”transcript, stated
“even if I got it right, as a user I'd be very wary of uh that number unless I'm able to like source”transcript, stated
“balancing that out between uh trying to leverage the model memory versus being able to ground this in is in uh you know, some kind of a source”transcript, stated

Evaluation

Deep Research is evaluated with a mixture of automatic behavioral statistics, human review, product-defined quality attributes, and an ontology of research behavior types. Automatic metrics detect distribution changes such as planning time, plan length, and iterative-step counts across a dev set. Human evaluation judges comprehensiveness, completeness, and groundedness across use cases ranging from broad/shallow option exploration to specific/deep research and compound planning tasks.

Metrics: time spent on planning · number of iterative browsing/planning steps · research plan length · number of research plan steps · distribution shifts across a dev set · comprehensiveness · completeness · groundedness · coverage across research behavior ontology types · human PM review quality

5 supporting quotes
“how long it spent on planning how many how many iterative steps it does on like some dev set.”transcript, stated
“how long is the research plan? Do we like does a new model produce really longer many more steps”transcript, stated
“we definitely do a lot of human eval and there we have defined with product about certain things we care about”transcript, stated
“is it comprehensive is it complete like groundedness and these kind of things.”transcript, stated
“developed this ontology of different research patterns and then for each one came up with queries”transcript, stated

Outcomes

The case describes 5-6 minute research jobs, a 5-minute shipped mode, a 10-minute hard cap, an internal 15-minute hardcore mode, 50-60-tab user research journeys, one-to-two-million-token context, Android rollout and iOS launch timing, and async infrastructure designed for hundreds of LLM calls and future hour or multi-day jobs.

5 supporting quotes
“browses the web for about 5 minutes, and then outputs a research report for you to review”transcript, stated
“when you do export all the citations and in fact I can just run it now carry over”transcript, stated
“search? It always does. It depends on your question since we have the liberty of like really long context uh models we actually hold all these all the research material across turns so if it's able to find the answer in things it's found you're going to get a faster reply otherwise it's just going”transcript, stated
“Um but yeah, what's what's neat though is like you can close your computer. You get a notification on your phone and so on.”transcript, stated
“what's been surprising is like that's not the case at all and it's been going the other the other way.”transcript, stated