Research mode
UserSome questions can’t be answered from a handful of hits. “Which customers have a data processing agreement?” or “How many projects use technology X?” require the entire knowledge base to be examined — not just the best-matching documents. That’s what research mode is for.
When to use it
Section titled “When to use it”Normal chat retrieves the most relevant passages from your knowledge base and answers from those (→ RAG & search). That’s fast and exactly right for most questions — but by design it only ever sees a slice. For a question whose answer is a complete list or a count, that slice would distort the answer.
Turn research mode on when your question is enumerating or aggregating:
- Enumerating: “Which customers have a data processing agreement?”, “Which projects use PostgreSQL?”, “Which suppliers do we have a framework contract with?”
- Aggregating: “How many projects use technology X?”, “How many proposals did we write for the public sector last year?”
For anything else — a specific factual question, a summary, a draft — leave it off. Research mode is considerably slower and more expensive than a normal answer because it sifts the entire knowledge base and evaluates every match.
Using the toggle
Section titled “Using the toggle”In the chat composer you’ll find the Research chip (magnifying glass icon) next to the Private and Knowledge base toggles — that’s the research mode toggle. If your administrator has also enabled web research, a second chip, Web (globe icon), sits next to it. How the two differ is explained below under “Research or Web?”.
The most important part first: the toggle applies to exactly one message. It is not a mode you switch on once and that then stays on. When you send your question it is read and immediately reset.
In practice: if you want to ask two enumerating questions in a row, you have to switch it on before each of them. Forget it on the second and you get an ordinary, fast RAG answer with no error message — which for an enumerating question is incomplete, but doesn’t look it. This is the feature’s most common pitfall.
Beyond that:
- It is off by default and applies only to the current tab.
- Research and Web are mutually exclusive. Switching one chip on switches the other off — a message starts at most one research run. The Web chip, too, applies to exactly one message.
- When you switch from an existing conversation to another one, both chips switch off.
- For follow-up questions about a finished report you do not need it — normal chat answers those from the report itself.
If you don’t see the toggle at all, or nothing happens when you turn it on, research mode probably isn’t enabled in your instance yet — your administrator can help. → Enabling research mode
Research or Web?
Section titled “Research or Web?”The two chips start two different background research runs:
| Research (knowledge base) | Web | |
|---|---|---|
| Searches | your internal documents — completely, every document you have access to | current public sources on the web |
| Good for | lists and counts across your own records (“Which customers have a data processing agreement?“) | questions whose answer is not in your knowledge base: market overviews, recent developments, public facts |
| Where the question goes | to the model set up for research | to OpenAI (USA), which researches with its own web search |
| Duration | usually a few minutes | usually 5 to 20 minutes |
With the PII shield on, names in your question are replaced by placeholders for web research too — the web search then cannot look for those names.
Both share the progress display, delivery of the report into the conversation and the “one research run at a time” rule (see “Limits & notes”). Everything else in this article — phases, coverage header, source appendix from documents — concerns research in the knowledge base. A web research report has its own layout with numbered web sources. → Web research
The toggle while a run is in flight
Section titled “The toggle while a run is in flight”While one of your background researches is running, the magnifying glass becomes a spinner and the label shows the current phase with its counter — Planning, Selecting, PII check, Evaluating, Summarizing and finally, briefly, Composing report. So you can see that something is happening and where the run has got to.
For a web research run the spinner turns on the Web chip instead, and the label shows Web research with the time elapsed so far, for example “Web research 3 min”. There are no phases as in knowledge base research, because OpenAI reports no intermediate steps.
Three things that easily confuse:
- The toggle’s colour still follows its on/off state, not the run. “Armed for the next message” and “a run is under way” are two different facts.
- Switching it off does not stop the running research. The toggle only ever affects the next message.
- The display belongs to you, not to the conversation. It stays visible when you switch conversations, and even after reloading the page, for as long as the run lasts.
How it runs: instant notice, report later
Section titled “How it runs: instant notice, report later”Research mode behaves differently from a normal answer. It doesn’t block the chat:
- You ask the question with the toggle on.
- The chat turn ends immediately (usually under 5 seconds) with a placeholder notice: ”🔍 The background research across the knowledge base is running. The report will be delivered to this conversation automatically as soon as it is finished.” In the desktop app it adds “On Desktop the research only runs while the app is open.” This is not yet the answer.
- The research runs in the background for minutes. You can keep working, ask other questions or switch conversations in the meantime.
- When the research finishes, the report appears as a new assistant message live in the same conversation — no reload and no follow-up question needed.
- If you have switched conversations in the meantime, a badge appears on that conversation in the list. Clicking it takes you to the finished report.
Finding past research runs
Section titled “Finding past research runs”The badge in step 5 announces a newly arrived report and disappears once you have seen it. Distinct from it is the permanent marker in Recent chats: every conversation in which research was once started carries a magnifying-glass icon there, labelled Research.
That marker stays. It is how you find a research run from three weeks ago without remembering the exact wording of the question — research runs take minutes and cost real money, so re-running one you already have is rarely worth it.
The report is a coherent piece of text containing the result of the enumeration — depending on your question, a list, a count or a structured breakdown.
How a report is structured
Section titled “How a report is structured”Every report has the same frame. What sits between the parts depends on your question; the frame itself does not.
In your language. The report appears in the interface language you had set when you started the research — frame, notes and the model’s text alike. If you switch language during a run, that report still arrives in the old one.
At the top, the coverage header. It tells you what the answer rests on:
Coverage: 1,240 documents searched · 37 with matches · 85 passages evaluated Search terms: DPA, data processing agreement, … · Selector: …
This is where you judge whether the question cast a wide enough net — “0 with matches” on a question that should have found something usually means the search terms do not match your documents’ vocabulary.
Depending on the run, more details appear there. If they are missing, there was nothing to report:
- ”· Vault: …” at the end of the search-terms line — the research was limited to the vault you had chosen in the chat. “0 documents searched” then means “not in this vault”, not “nowhere”.
- “Dropped: … candidates over cap · … passages due to PII scan failures” — the run found more candidates than the configured ceiling allows, or individual passages dropped out because their PII check failed. Neither was evaluated.
- “Not read: … document(s) · … vault(s) could not be listed” — documents or whole vaults the run could not read. They are missing from the result, and nobody can say whether they would have contributed to the question. If the line ends with “session expired, please sign in again and repeat the research.”, do exactly that — it is the only one of these cases you can fix yourself.
Structural selection. If your administrator has allowed structural research selection, the run answers some questions — “Which customers do we have projects for?”, say — from the folder structure rather than the document text. The header then reads “Coverage: … documents surveyed · … structural units · … passages evaluated” and “Selection: structural (directory tree) · Selector: …”.
At the bottom, the source appendix “Cited sources (N)”. A list with one entry per document a finding came from. This list is written not by the model but by the system — it is appended after the summary. That is what makes it reliable: a source that made it into the appendix really was evaluated, even if the summary does not mention it in the running text.
Sometimes caveat lines. If documents could not be evaluated, or intermediate summaries came back empty, the report says so right below the header, before the actual text:
Note: 3 document(s) could not be evaluated (report incomplete).
A document counts as not evaluated when, for example, the model gave no answer on it for 60 seconds — the run does not wait any longer but carries on with the others.
At the end of the text you may find: “Note: The summary reached the model’s length limit and may be cut off at the end.” The running text may then stop in the middle of its last point; the source appendix is not affected.
Both are transparency, not a defect. The report is accurate, it is merely not complete — and it tells you so instead of hiding the gap.
What you get to see
Section titled “What you get to see”The research only sees what you are allowed to see. It runs with your permissions: vaults and documents you have no access to do not appear in the report. → RBAC & confidentiality
If evaluation fails on individual passages, the whole run doesn’t abort — you still get the report, just without those findings.
If the run does not end normally
Section titled “If the run does not end normally”An aborted or failed run also reports back in the same conversation — and delivers whatever it has by then. The message’s heading tells you what you are looking at; below it, “Reason:” gives the cause.
| Heading | What follows |
|---|---|
| Research (aborted) | Either “⚠️ Partial findings, not aggregated — the aggregation step was never reached.” with the individual findings finished before the abort. Or “⚠️ The report was already finished when the run was aborted and is delivered unchanged.” with the complete report. Or “No partial findings had been produced yet.” |
| Research (failed) | “⚠️ Partial findings, not aggregated — the run failed before the aggregation step.” with the finished individual findings. |
| Research (completed incompletely) | “⚠️ The report was already finished when the error occurred and is delivered unchanged; only the agent’s closing step failed.” — the report is complete. |
| Research failed | Only the reason; nothing usable existed yet. |
Partial findings are the results for individual documents before they are pulled together into one text — usable in substance, but unordered and with repetition. If they do not all fit into the message, it ends with ”… N further partial findings were omitted because of the length limit.”
Common reasons:
- “time limit reached or stopped manually” — the run exceeded its maximum run time (see below) or was stopped. The system cannot tell the two apart.
- “The run was cancelled from the administration page.” — someone ended it on the agents page. Waiting won’t help; ask the question again.
- “The application was shut down while the run was in progress.” — the desktop app was closed while the run was going. This message appears the next time the app starts.
- “Research not possible — the PII service is unreachable.” or “Research aborted — the PII service failed during the scan.” — research never hands unchecked text to the model (→ The PII shield). Only your administrator can help here.
One message comes without these headings, because no run starts at all. It follows shortly after the placeholder notice:
⚠️ The research could not start: its research agent is disabled or was deleted. Please contact your administrator (Agents page).
Your administrator has then disabled or deleted the Research agent (for web research: Web Research) on the Agents page. Only they can switch it back on. Previously, nothing at all followed the placeholder in this case.
Silence with no feedback at all is therefore not how a run normally ends.
Limits & notes
Section titled “Limits & notes”- Duration: minutes, not seconds — usually a few, with many matches considerably more. The maximum run time is set on the research agent, 20 minutes by default (older installations may have 15); after that the run is aborted and delivers its partial findings.
- Cost: considerably more tokens than a normal answer. The run does sift every accessible document, but that part is free — it happens locally, without a model. What you pay for is evaluating the matches for your question. A narrowly framed question is therefore cheaper than a broad one.
- Desktop: in the desktop app the background research only runs while the app is open. If you close the app during a run, no report will arrive — instead, on the next start the conversation reports “The application was shut down while the run was in progress.”. In web mode it continues server-side. → Web vs. desktop
- Privacy: the report is stored like any assistant message, but is checked against the session’s PII mapping beforehand. → The PII shield
- One research run at a time: each user has at most one research run started from the chat — Research or Web alike. If you switch a chip on while one is still running, no second run starts. Your question is answered normally instead, with the notice “ℹ️ A background research run is already in progress. This question was therefore answered normally.” A run counts as running for at most the longest Max run minutes set on the two research agents plus 5 minutes. With the defaults (Research 20, Web 40 minutes) that is 45 minutes; it used to be a fixed 30.
- No “Web” chip: the chip only appears when your administrator has switched web research on and chosen a usable model — an enabled chat model on an OpenAI provider with the endpoint
api.openai.comand stored credentials, with the “Only Managed-AI models” setting off for chat. If any of that is missing, there is no chip at all. In the desktop app, the desktop app’s own settings decide this, even when it is paired with a company server. - “Web” chip visible but unavailable: if your administrator switched web research off or disabled the model after you loaded the page, you still see the chip until you reload. A question sent with it is answered normally, with the notice “ℹ️ Web research is not available in this installation (switched off or no usable model). This question was answered normally.” After a reload the chip is gone.
”The summary could not be produced”
Section titled “”The summary could not be produced””If that sentence appears in the report, the research as a whole did not fail. The evaluation ran through and the findings exist — only the last step, pulling them together into prose, got no answer from the model. The report then states how many partial findings were found.
Two things make the difference:
- The system has already tried again. Before this message appears, the summary is automatically retried once with double the answer budget. So you only see it when the second attempt came back empty too.
- Your evidence is not lost. The source appendix “Cited sources (N)” is still in the report — so you know which documents had something to say about your question, even without the summary.
The sensible next step is to start the research again; a more narrowly framed question improves the odds, because there is less to summarize.
”The summary was stopped after 180 s”
Section titled “”The summary was stopped after 180 s””The sibling of the previous message: the model did not answer empty but not at all — for three minutes. Rather than keep waiting, the run delivers the findings unsummarized (“The N finding(s) follow unsummarized.”), along with the source appendix. Usually the AI provider is stalling at that moment; retrying a little later has the best odds.
Related
Section titled “Related”- Asking an enumerating question — step by step
- Full enumeration instead of top-k — why this mode searches differently
- Chat · Knowledge base · Agents
- Web research — the Web chip
- Tools: research — the tools behind it
- For administrators: Enabling research mode