Deep Research and Long-Document Analysis
- Run multi-document research tasks effectively
- Structure prompts for traceable multi-source synthesis
- Know when to rely on context versus web search
Loading Multiple Documents for Cross-Document Questions
The difference between a 128k context window and a 1M context window is not just size — it changes the kind of questions you can ask. A 128k window forces a choice: load document A, ask your question, then load document B separately. You never have both in view at once, so you can't ask questions that require comparing them directly. With Astra's 1,050,000-token window, 50 to 100 research papers, a full legal case file, or an entire product backlog can sit in the same context simultaneously. Cross-document questions become possible.
A cross-document question is one where the answer requires holding multiple sources in view at the same time: which of these papers contradicts that one, what changed between version 2 and version 3 of this spec, or which witness statement conflicts with the email from three weeks prior. These are not questions a single document can answer — they require the model to reason across boundaries. Astra can do that when all the relevant documents are in context together.
Uploading PDFs in ChatGPT. The ChatGPT web interface accepts multiple file attachments in a single message. Click the paperclip icon in the message composer and select multiple files — PDFs, Word documents, plain text files. There is no per-file count limit stated separately from the overall token limit; what matters is whether the combined content fits within the 1,050,000-token context window. Astra confirms what it has loaded in its first response, which lets you verify that the documents were parsed before you proceed.
Pasting large document content. For documents you can't export as files — wiki pages, internal tool outputs, copied text from sources that don't export cleanly — paste the content directly into the message. Large pastes are handled the same as file attachments. For long pastes, preface each block with a label like "--- Document: Internal Strategy Memo Q3 ---" so you and the model can reference it by name in subsequent questions.
Loading a dataset. Uploading a CSV or spreadsheet file activates Astra's code interpreter alongside the document context. The model reads the column headers and first rows, confirms the shape of the data, and is ready to answer analytical questions. You can combine a dataset with narrative documents in the same context — for example, upload a CSV of clinical trial results alongside the three papers that reference that trial. The model can reason across both simultaneously.
The workflow change is significant. Multi-source research that previously required a manual loop — load one document, extract findings, load the next — can now run in a single pass. You load everything first, then ask the question once. The model holds the entire source set in view when it answers.
Prompting for Traceable Synthesis
The default behavior when synthesizing multiple documents is to blend findings into a summary without attributing individual claims to their source. That blending is often exactly what you don't want: if two documents contradict each other, a blended summary hides the contradiction. If a claim is well-supported by three papers, a blend obscures that evidentiary weight.
Asking Astra to cite its sources is not optional for research work — it is the prompt practice that separates useful synthesis from unreliable summaries. The model can trace claims to specific documents when asked; it doesn't do so by default.
The basic citation instruction. Add this to any multi-document synthesis prompt: "For each claim you make, cite which document it comes from. Use the document title or filename as the citation label." That single instruction changes the output structure. Instead of "Several studies found that X," you get "Document A (Smith et al.) found X; Document B (Lee et al.) reached the same conclusion." The difference is auditable — you can pull up Document A and verify the claim.
The structured synthesis prompt pattern. For systematic cross-document comparison, the most reliable structure is to specify the comparison axis, the documents to compare, and the required citation format in a single prompt:
The "conflicts with" column is the most valuable part of this structure. When the model is forced to check for contradictions explicitly, it surfaces disagreements it would otherwise smooth over in a narrative summary.
What good citation output looks like. A well-cited synthesis response names the source before the claim, not after. "Document B (Lee et al., Section 4) states that X" is better than "X (Lee et al.)." The source label at the front signals that the claim is drawn from a specific place and invites verification. Responses where citations appear as footnotes at the end of paragraphs are harder to audit — the claim has already been absorbed before you can check whether the attribution is accurate.
Asking for direct quotes. When a claim is load-bearing for a decision, ask for the exact quote alongside the citation: "For each claim, include a direct quote from the source document." This is slower than summary synthesis, but it makes hallucination immediately visible — if the quoted text doesn't appear in the source when you check, you know the claim isn't grounded.
Scientific Data Analysis
GPT-6 Astra reaches 64.6% on Terminal-Bench Science 0.1, a benchmark that tests whether agents can complete scientific research workflows using code and terminal tools — analyzing data, running simulations, and fitting models. That's the highest score on this benchmark, ahead of Claude Fable 5.1 at 52.6%. The gap reflects Astra's ability to combine analytical reasoning with code execution in a single workflow, not just produce analysis in prose.
Scientific data analysis with Astra works in two modes: via the ChatGPT code interpreter (which runs Python in a sandbox and can produce charts inline) and via the API (which gives the same code interpreter access with more control over how results are returned).
Loading a CSV for analysis. Attach the CSV file or paste its contents. Astra reads the column headers and sample rows, then confirms its understanding of the data structure. Start with a broad request to orient the analysis:
That prompt produces a structured baseline. From there, you can ask progressively more specific questions — correlation between two variables, filtering to a subset, testing a hypothesis — without re-uploading the data.
Requesting visualizations. In ChatGPT, the code interpreter can generate and display charts inline. Ask for a chart and describe the axes:
When working through the API, charts are returned as base64-encoded image files you render in your application. The model can also describe what a chart would show — "the scatter plot reveals a positive correlation with two clear outlier clusters" — when you want analysis without the rendering step.
Multi-step analysis workflow. For tasks that require multiple dependent steps — clean the data, summarize, test a hypothesis, produce a report — structure the workflow as a single prompt with numbered stages rather than a back-and-forth conversation:
Staged prompts outperform iterative conversation for analysis because each stage's output feeds the next. When you specify all stages upfront, the model plans the full analysis before executing — which means it is less likely to clean data in a way that invalidates the later statistical test.
Combining datasets with papers. Astra's 1M context lets you combine a dataset with the papers that describe it. Upload your CSV alongside the papers that detail the study methodology, then ask questions that span both: "The paper says the exclusion criteria were X — how many rows in this dataset would have been excluded by that criterion?" This kind of cross-reference — checking data against its own documentation — was not practical before the 1M context window made it a single-prompt operation.
Context vs Web Search: When to Use Each
GPT-6 Astra's knowledge cutoff is April 30, 2026. Everything in its training data comes from before that date. Events, papers, software versions, pricing, regulations, and personnel changes after April 30, 2026 are outside what the model knows from memory. Asking about something post-cutoff without providing a document or search result produces either a refusal or a confident-sounding answer based on nothing current — the two worst outcomes for research work.
Web search is a native tool in Astra, not an add-on. It ships alongside code interpreter, computer use, and MCP support. The model can search the web mid-task without you explicitly invoking a separate mode.
The decision rule. Two questions determine which source to use:
The most important rule: if you can load the document, load it. Model memory — even for pre-cutoff facts — can hallucinate details when the specific source would have made them unambiguous. A model working from a document in context makes claims grounded in that text; a model working from memory is reconstructing from training data, which is less reliable for precise figures, quotes, and structured data.
How to invoke web search. In ChatGPT, Astra uses web search automatically when a question is clearly time-sensitive or when the model recognizes a knowledge gap. You can also request it explicitly: "Search the web for the current version of [library] released in 2026" or "Find the latest pricing for [service] as of today." The model performs the search, summarizes the results, and cites the URLs it retrieved.
Mixing context and web search in one prompt. The most powerful research pattern combines both: load your base documents into context, then ask the model to verify or update specific facts using web search:
This pattern — document as baseline, web search for currency — handles the most common research scenario: you have existing research that needs to be brought up to date. The document provides structure and historical context; web search fills the gap the cutoff creates.
When to distrust context alone. If your documents are the source of truth for everything in the analysis and no post-cutoff facts are involved, context alone is reliable. If any part of the analysis depends on something that might have changed since April 30, 2026, add web search to that component explicitly. The model won't spontaneously warn you that a fact in a document you loaded might be outdated — that judgment is yours to apply.
- Loading multiple PDFs into 1M context enables true cross-document questions in one pass
- Ask Astra to cite its sources — it will trace claims to specific documents when prompted
- Knowledge cutoff is April 30, 2026 — always pair with web search for anything more recent