最快的修法:别再让它”总结整份报告”。先让 ChatGPT 列出所有章节标题和页码范围,然后一章一章地问,并要求每条结论都给出一句逐字 quote 加页码。光这一招就能解决大多数情况,因为它逼着 ChatGPT 主动去检索每个章节,而不是拿恰好抓到的几块去猜。
默认会失败的原因:ChatGPT 处理大文件不是从头读到尾。它先给文件建一个私有语义索引,每一轮再按你 prompt 的相关度检索出最匹配的几块(chunk)塞进 context。截至 2026 年 6 月,单次检索大约从索引里取 110,000 token 注入模型(OpenAI Help Center, “File Uploads FAQ”),而单个文件最多索引 2,000,000 token 文本,超过的部分会被静默丢弃。一个 200 页 PDF 用一句”总结这个”来问,进入模型的可能只有 8-15 个 chunk(也就几页内容)。你以为它读了全文,它其实在用恰好被检索到的那几块作答。这是设计、不是 bug——但分章节、点名页码、逐表查询的结构化 prompt 能把整篇都”逼”出来。
你属于哪一类
| 症状 | 可能原因 | 跳到 |
|---|---|---|
| 全文总结全是主题、没有数字 | 检索只抓了几块,其余从未加载 | 原因 1,Step 1-2 |
| 你明知存在的某页它引不出来 | 那页没被检索到或抽取失败 | 原因 1 / 3,Step 1 |
| 某章被说成”主要是图表 / 内容很少” | 图片页或表格页抽取失败 | 原因 3,Step 5-6 |
| 同一 prompt 每次跑数字都不同 | 检索按措辞重新排序 | 原因 4,Step 2 |
| 开头结尾章节对、中间错或空 | lost in the middle | 原因 6,Step 2 |
| 文件很大、只有前面几页像有 | 撞上大小或 token 上限 | 原因 5,Step 5 |
常见原因
按命中率从高到低:
1. 检索只取 top-k chunk,整篇从未一起进 context
最常见。一次”总结这份报告”只检索 5-10 chunk,每 chunk 几百字——加起来可能就 5-10 页内容进模型。后面 190 页基本没读。
如何判断:让它”逐字引用第 142 页第一段”。引不出 / 引错页 = 那一页根本没被检索到。
2. 大输入触发”highlights”模式
模型识别到 “summarize 200-page report”,默认走概括路径而不是细读路径——平滑掉所有具体数字,只给主题。
如何判断:回答里有大量”该报告涵盖了…、重点关注…、强调了…”这种 meta 描述,没有具体数字 / 名字 / 日期。
3. 部分页抽取失败(图片页、扫描页、复杂版式)
PDF 解析器对纯图像页、双栏混排、表格密集页常常静默失败——文件传上去显示成功,但那几页内容根本没进检索池。
如何判断:让它列出每章的页数对照实际 TOC。某几章它说”内容很少”或”主要是图表” = 那几页抽取失败。
4. 同一问题不同时间答案不同
每轮检索按你 prompt 的具体措辞排 chunk,措辞稍变排序就变。结果是连续两次问同样问题,答案细节不同。
如何判断:用完全相同 prompt 问两次(间隔 5 分钟),具体数字 / 列表项有差异 = 检索抽样的随机性。
5. 文件撞上硬性大小或 token 上限
截至 2026 年 6 月,ChatGPT 会拒收单个超过 512 MB 的文件;而且每个文件只索引前 2,000,000 token 文本(大约 3,000 页纯文本文档),超出的部分在检索时被静默忽略。超大文件还可能退回到一条更轻的处理路径,结果主要只浮出开头几页。
如何判断:开着 Advanced Data Analysis,让它跑一小段脚本打印 os.path.getsize(path) 和 len(pdf_pages)。报告页数和真实文件对得上 = 完整加载;对不上(或被压到远低于真实总数)= 撞上了上限,那就切文件。
6. 上下文窗口看似够大、其实 attention 被稀释
在 ChatGPT 里,GPT-5.5 Instant 在 Plus 和 Business 上是 32K token 上下文;GPT-5.5 Thinking 能开到 256K,但仅在你手动选它时;完整的 1M token 上下文只有 $200 的 Pro 档在 App 内才有。即便窗口理论上塞得下 200 页 PDF,attention 也不均匀:众所周知的 “lost in the middle” 效应(Liu et al., 2023)让中间章节的信息接近被忽略,准确率呈一条偏向开头和结尾的 U 形曲线。
如何判断:开头几章和结尾几章答得准,中间章节细节错 / 缺 = lost in the middle。切到 GPT-5.5 Thinking 通常能自己把中间救回来。
动手前先确认
- 确认问题是在普通对话、Project,还是 Custom GPT 里出现;Custom GPT Knowledge 走的检索路径和上传文件不同。
- 复现前把当前对话复制一份,避免清掉历史影响下次诊断。
- 确认订阅:Free、Go($8)、Plus($20)、Pro($100/$200)、Business、Enterprise 在上下文窗口和模型选择上差异明显。只有付费档才有 model picker 让你切到 GPT-5.5 Thinking。
需要收集的信息
- 文件类型、大小(MB)、总页数 / 行数、章节数。
- 是否扫描件 PDF、是否含中文 / 公式 / 大量图表 / 多栏排版。
- 上传方式:拖入对话框、Project 文件区、Custom GPT Knowledge。
- 完整 prompt 文案 + 回答截图;具体哪几章 / 哪几页内容明显缺。
- 当前模型 + 订阅级别。
最短修复路径
按收益从高到低,前 2 步通常修 70% 问题。
Step 1:先让它列章节标题对照 TOC
不要一上来就”总结全文”。第一轮:
List every section heading in the uploaded document, with page ranges.
Format as a numbered list. Do not summarize content yet.
把输出和 PDF 实际 TOC 对照。漏掉的章节 = 那部分抽取 / 检索失败,单独后续处理。
Step 2:逐章节追问 + 强制 evidence
不要让它一次”总结全文”。一章一问:
Summarize Chapter 3 (pages 47-72). Output:
- 3 concrete facts from this chapter, each with a 1-sentence quote
+ page number
- 2 numerical data points (with units)
- 1 sentence on what this chapter does NOT cover
Do not generalize. If you cannot find 3 facts, return fewer.
每章独立 chunk 检索,模型 attention 集中在小窗口,深度立刻上来。
Step 3:表格 / 数字单独问
数据密集的章节单独抽:
The document contains tables on pages 18, 34, 67, and 102.
For each table:
- Title / caption
- Row count + column count
- Quote the headers verbatim
- Quote the first 3 data rows verbatim
让它逐表处理,不要”总结所有表格”。
Step 4:自己聚合,不要让模型”汇总分章节答案”
收集了 10 章答案后,不要再问”基于以上请总结全文主题”——它会再次做平滑概括。 聚合在你这边做:
- 用 Markdown 表格放每章的关键事实
- 自己看 pattern、找矛盾、写跨章结论
- 需要某项跨章比较时单独问(“chapter 3 says X, chapter 7 says Y, reconcile”)
Step 5:抽取不稳就先切 PDF
如果 Step 1 列出来章节不全,本地切:
# 按章节切(如果 PDF 有书签)
pdftk full.pdf cat 1-46 output chapter1.pdf
pdftk full.pdf cat 47-72 output chapter3.pdf
# 或按页数固定切
qpdf --split-pages=30 full.pdf part-%d.pdf
每段 ≤ 30-50 页传一份,单文件抽取覆盖率显著更高。
Step 6:扫描件 / 图像页先 OCR + 转 Markdown
如果是扫描 PDF 或复杂排版:
# OCR
brew install ocrmypdf
ocrmypdf input.pdf output.pdf --language eng+chi_sim
# 高质量结构化抽取
pip install marker-pdf
marker_single input.pdf ./out --max_pages 300
把生成的 Markdown 上传,比 PDF 检索质量飞跃。
Step 7:重复用的同类报告做成 Custom GPT
每周看的财报 / 季报,做个 Custom GPT:
- Knowledge 里放最新一份 + 历史 3-4 份
- Instructions 把 TOC 烤进去:“This document type always has sections: Executive Summary, Financials, Risk Factors…”
- 每次新报告替换 Knowledge 文件即可,prompt 模板复用
怎么确认已经修好
- 开新对话上传同文件用 Step 2 的逐章 prompt 重做,每章都给出具体数字 + 页码引用 = 真修好。
- 把它给的某个 quote 在 PDF 里 Ctrl+F 找——找到且页码一致 = 真读到。
- 让同事用相同分章 prompt 跑一遍,覆盖一致 = 流程稳定,不是你这次运气。
如果还是没修好
- 把文件切到极小:保留你最关心的那 5-10 页传一份,看深度能不能拉起来。
- 换抽取工具:PDF → Marker Markdown → 直接传 Markdown,跨过 ChatGPT 的 PDF 解析器。
- 换模型:打开 model picker,从 GPT-5.5 Instant 切到 GPT-5.5 Thinking($200 档可用 Pro)。这些 reasoning 模式对长文跨章综合、以及文档中段的处理都明显更稳。
- 准备好原文件 + 分章 prompt + 缺失章节列表,去 help.openai.com 提工单。
预防建议
- 大文档心智模型:把 ChatGPT 当”章节级研究助手”,不是”一键摘要器”。
- 永远先列 TOC 再分章问,不要”总结全文”。
- 每章都强制要求 quote + page,没引证就当没读。
- 反复读的同类报告做 Custom GPT,把 TOC 烤进 instructions。
- 重要决策类总结让 ChatGPT 输出原始事实 + 你自己写结论,不要让它做跨章综合。
常见问题
升级到更高的 ChatGPT 套餐能让它读完整篇吗? 部分能。更高的套餐会放宽窗口(GPT-5.5 Thinking 到 256K,$200 的 Pro 档拿到完整 1M 的 App 内上下文),所以一次能塞进 context 的内容更多。但检索上限和 “lost in the middle” 效应依然在,所以对 200 页的文件来说,分章节、点名页码的 prompt 在准确率上仍胜过单纯升套餐。
为什么它能引第 12 页却引不出第 150 页? 因为它根本没检索到第 150 页。ChatGPT 只取和你 prompt 匹配的几块,截至 2026 年 6 月单次约 110,000 token。在 prompt 里点名页码或章节,才是把那一块逼进 context 的办法。
传 PDF 好还是直接粘文字好? 对文字密集的报告,转成干净的 Markdown 再上传胜过原始 PDF,因为这样能跨过 ChatGPT 的 PDF 解析器——它对扫描页、双栏排版、表格密集页常常静默失败。粘贴只适合塞得进可见上下文的短摘录。
文件多大算太大? 单文件超过 512 MB 会被拒收;而且只索引前 2,000,000 token 文本(约 3,000 页纯文本),其余在检索时被忽略。远在撞到这些硬上限之前,检索准确率就已经在下滑,所以切成 30-50 页的小块在远低于上限时就有帮助。
为什么同一个问题问两次数字会不一样? 每一轮都按你的具体措辞重新给 chunk 排序,措辞稍变,被检索到的页就变了。在 prompt 里锁定页码或章节、并要求逐字 quote,才能让答案可复现。
相关阅读
- ChatGPT 上传的 PDF 分析不正确
- ChatGPT 文件分析太浅
- ChatGPT 多文件没被一起用
- ChatGPT 项目功能
- ChatGPT 文件分析
- ChatGPT Projects 进阶工作流
标签: #ChatGPT #ChatGPT 文件 #排查 #排查 #大文档