ChatGPT reads an uploaded file on OpenAI's servers. Here is what that changes.
Upload a PDF to ChatGPT and it is parsed, chunked and searched on OpenAI's infrastructure, with the answer written by a frontier model. SecureRAG does the parsing, chunking and searching in the browser tab and answers from your own retrieval, with the file never leaving the device. The interesting comparison is not raw capability — ChatGPT wins that outright — but what happens to the document, which setting decides it, and which jobs only a hosted model can do.
Last updated:
Short answer: an uploaded file is parsed on OpenAI's servers and on consumer plans may improve their models unless you opt out; SecureRAG keeps it local.
What ChatGPT does better
- It does more with a file than answer questions about it: rewrite, translate, restructure into a table, generate code that reads the file, plot the numbers, then continue from that output.
- File uploads work on Free and paid plans, on the web and in supported mobile apps, subject to per-plan limits — no download, no model fetch.
- ChatGPT Enterprise has PDF visual retrieval, which reads layout and figures from a PDF. Other plans extract digital text and discard images. SecureRAG also reads text only: stamps, signatures and figures in a scanned or image-heavy PDF are not seen.
- One conversation can combine the file with web browsing, code execution and the model's general knowledge. A local retrieval tool deliberately does only retrieval.
- Frontier-model prose and long-context handling that a 0.5B–1.5B quantised model cannot match.
The setting that decides what happens to your document
OpenAI's help centre states that ChatGPT improves by further training on conversations unless you opt out, and that the opt-out sits in Settings → Data Controls → "Improve the model for everyone", or in the privacy portal as "Do not train on my content". Content can include files you upload. The same help centre states that business offerings — the API, ChatGPT Business and Enterprise — are not used to improve model performance by default. Three different answers exist for the same question, and which one applies depends on whether you are using consumer ChatGPT, an API call, or an enterprise workspace. Read your own plan's policy rather than a summary of it, including this page.
| Question | ChatGPT file upload | SecureRAG |
|---|---|---|
| Where the file is parsed | OpenAI's servers | Your browser tab |
| Account | OpenAI account | None — no account, no tracking pixels |
| Training use | Consumer plans train on content unless you opt out; business offerings are opted out by default | Not used for training — no server exists to train on |
| Offline | No | Works offline once cached |
| What a citation points at | Quoted passages inside the reply; no page anchor for an uploaded PDF | A numbered citation per sentence to a chunk, with PDF page numbers and DOCX heading levels preserved |
| Answer engine | A frontier cloud model | Extractive selection by default; optional Qwen2.5 0.5B–1.5B at 4-bit, 400 MB–1.0 GB, roughly 3–8 tokens/s on CPU |
| Ceilings | Per-plan file size and token limits; see OpenAI's help centre | ≤25 MB per file, ≤40 files, ≤200 MB per library, ≤20,000 chunks |
| Supported input | Common document, spreadsheet, presentation and text formats; see the help centre | PDF, DOCX, TXT, Markdown, CSV, HTML, JSON. No encrypted PDFs, no scans without a text layer, no legacy .doc |
Citations come from different places
ChatGPT quotes from the file inside its reply, which is usually enough when you are reading for understanding. It is not a citation system: there is no per-sentence anchor back to page 14, and a fluent paragraph can blend a direct quote with the model's own paraphrase. SecureRAG separates those two things. The default answering tier selects sentences from the retrieved chunks, keeps them in their original order, and attaches a numbered link to each one, so a paraphrase is never presented as a quote. The optional generation tier writes prose, but the citations are attached from the retrieved chunks before the text reaches you — the model is never asked to produce references, because models invent them.
Where SecureRAG loses to ChatGPT file upload
- It cannot write. A 0.5B–1.5B quantised model produces terse, literal prose next to a frontier model, and enabling that tier costs a 400 MB–1.0 GB download and runs at roughly 3–8 tokens/s on CPU without WebGPU.
- No image understanding. Figures, charts, handwriting and stamps are not read. A PDF that is mostly images yields mostly nothing.
- No code execution, no web browsing, no plugins. What is in the index is all the system knows.
- Tighter ceilings: 25 MB per file, 40 files, 200 MB per library, 20,000 chunks, and lower caps on mobile browsers where memory is scarcer.
- No cross-session memory in the Cloudflare sense of a hosted assistant. The index persists in IndexedDB; the conversation does not travel to another device.
- First load is slower. Parsing a 20 MB PDF and embedding 900 chunks takes real seconds on a laptop, where a hosted service shows a spinner on someone else's hardware.
A five-minute test with a document you already have
- Take a contract or report you know well, between 10 and 25 MB so it fits inside the 25 MB ceiling, and note one clause number you can quote from memory.
- Ask the same question in both tools: "Which clause covers early termination, and what notice does it require?"
- Check what supports the answer. In ChatGPT you get a quoted passage inside the reply; in SecureRAG you get a numbered citation on each sentence that opens the chunk and shows the page number.
- Ask a question the document cannot answer. Set strictness to "documents only" locally and confirm you get "not found in your documents" rather than an inferred clause number.
- Open DevTools → Network in both. In one you will see a multipart POST carrying the file; in the other, one GET for model weights and nothing after it.
Does ChatGPT train on files I upload?
For consumer plans, OpenAI's help centre states that it improves by further training on conversations unless you opt out, and that uploaded content can be included. The opt-out is in Settings → Data Controls ("Improve the model for everyone") or through the privacy portal. Business offerings such as the API and ChatGPT Enterprise are not trained on by default. Check your own plan's page, because the answer is plan-specific and changes.
Can SecureRAG answer questions that require reasoning across documents?
It can retrieve across up to 40 files at once and cite passages from several of them, and it can stitch those passages together in document order. What it will not do is invent a conclusion those passages do not support — in "documents only" mode it returns "not found in your documents" instead.
Why is the local answer shorter?
Because it is assembled from sentences that already exist in your files. Extraction cannot expand an argument the way generation can, and that is the mechanism that keeps invented clause numbers out of the answer.
Will enabling the generation tier give me ChatGPT-quality writing?
No. It gives fluent, grammatical prose from a 0.5B–1.5B quantised model — an improvement over extractive stitching, still a distance below a frontier model. It also requires an explicit click before any download starts, and can be turned off again at any time.