把一份通知交给 AI,答案里却漏了截止时间;把一张表截图发过去,数字又被看错。很多时候,问题不只在提示词,也和资料本身的格式、清晰度和组织方式有关。
这篇用同一份虚构的“青禾社区读书会”活动资料,比较可选中文字的 PDF、页面图片和 CSV 表格。你会看到哪些内容可以直接提取,哪些地方需要 OCR 或人工复核,以及上传前怎么整理资料。
先看文件里实际装了什么
.pdf 只是文件容器。它可能保存了可选中的文字,也可能每一页只是图片。看后缀无法判断。可以试着在 PDF 中选中一句话并复制;如果选不中、复制出来是空白或乱码,就要考虑 OCR 或换一个来源文件。
图片保存的是像素。拍歪、反光、阴影、模糊、小字或裁掉边角,都会让读图更难。模型说“看不清”时,不要让它猜;重新拍清楚,或回到原文件核对。
CSV 和电子表格按行列组织数据。它适合名单、数字和字段对照,但空白格不一定等于“0”,也可能表示没有记录或尚未填写。CSV通常只保存表格里的纯文本和值,不保留工作簿的颜色、公式、多个工作表或复杂排版;需要这些内容时,保留原始工作簿并说明要查看哪个表。
不同 AI 产品支持的文件类型和大小各不相同。上传前先看当前产品的说明;同一个产品也可能区分“上传 PDF”“识别图片文字”和“读取表格”。
同一份资料,三种读取路径
材料包里有两页可选中文字 PDF、一份按相同事实整理的 CSV,以及从 PDF 页面生成的图片和图片型 PDF。活动名称、日期、时间、地点、人数、报名截止、准备事项和流程都来自这份虚构材料。
可选中文字的 PDF
我们在 Mac 上用 pdftotext -layout 提取两页 PDF。活动内容、页码顺序和四项未提供信息都能读到。之前 A4 的 PDF 上传实测中,百炼北京 qwen-long 直接读取同一份文件,HTTP 200,回答列出了时间、地点、人数、截止时间、准备事项、三段流程和缺失项;该回答保存在 A4 材料中,本篇复用它,没有再次调用云端模型。
文本 PDF 也可能有双栏、页眉页脚、跨页表格或阅读顺序错乱。能复制文字只说明文字层存在,不代表提取后的先后顺序一定正确。金额、日期、编号、表格列和页码要回到原件复核。
图片和图片型 PDF
我们把两页 PDF 渲染成 PNG,再将图片封装成图片型 PDF。对后者运行同一个 pdftotext -layout,结果只有分页符,没有正文。这说明它没有可选中文本;直接搜索或复制文字的工具读不到内容,需要 OCR 或视觉识读。
随后让 Mac 本机 Ollama 0.35.1 的 qwen3.8-27b-vision:latest 读取两张页面图片。回答里的活动时间、地点、人数、截止时间、准备事项、三段流程和“未提供”信息均与原文一致;本次运行耗时111.84秒,输入3382、输出829 tokens。它成功读懂这份清楚、排版简单的样本,不代表模糊照片、小字、表格截图或其他模型也会同样准确。
图片上传时,尽量让标题、日期、表头、单位和相关内容同时入镜。大页面可以分区域拍摄,但每张保留少量上下文,避免裁掉它属于哪一列、哪一段。重要数字再和原文件对照。
CSV 表格
材料包中的 CSV 将同一份事实整理成“项、内容、备注”三列。我们用 Python 标准库按行读取并和事实卡逐字段比对:14个字段都唯一、没有空单元格,14项内容全部一致;报名链接、联系人、电话和收费信息明确写成“未提供”。这一步验证的是表格内容和字段结构,不是让 AI 生成答案。
给表格任务时,最好说明要看哪个工作表、哪几列、单位是什么,以及空白和“未提供”分别代表什么。筛选、统计或计算之后,让 AI 返回使用了哪些字段和计算过程;合计、百分比、日期换算等结果再用表格软件或计算器复算。
上传前的四步准备
- 先找原件。 能提供原始 PDF 或工作簿时,优先用原件;不要为了方便先截图,再把清晰文字变成模糊图片。
- 只给相关范围。 标出页码、工作表、列名或图片区域。材料太长时先分批,保留文件名和页码,避免不同版本混在一起。
- 说明任务和缺项规则。 让 AI 提取、比较还是计算?请它标来源页码或列名;没有写到的内容应回答“未提供”,看不清的地方标“无法辨认”。
- 保留原件并复核关键项。 日期、金额、人名、编号、数量和结论都回原件检查。需要给外部服务处理的材料,先删除完成任务不需要的个人信息。
可以从这个模板开始:
请只根据我提供的[文件名/页码/工作表]完成[具体任务]。
结果按[字段或列]输出,并在每项后标出来源页码或列名。
资料没有说明的写“未提供”;看不清或无法判断的写“无法确认”,不要猜。
最后列出需要我回原件核对的日期、金额、编号和计算结果。
自己练习
打开材料包里的 PDF、PNG 和 CSV,回答三个问题:活动日期有没有写年份?报名链接是否存在?分享环节多少分钟?对照原文件,在答案后记下页码或字段名。再把图片型 PDF 和可选中文字 PDF 各复制一段文字,看看它们的差异。
合格的结果应是:年份未提供、报名链接未提供、分享35分钟(PDF第2页或CSV“分享”字段)。如果模型给日期补了年份、替报名链接编了地址,或把空白当成0,就停下来回原件检查。
我们这次试了什么
练习使用的是完全虚构的读书会活动。可选中文字 PDF 的本地提取、既有 PDF 上传回答、图片识读和 CSV 字段核对都留在材料包中;没有把一次本机模型读图结果当成普遍准确率,也没有重新发起云端请求。原文件内容、提示词、输出和逐项核对见示例材料包。
如果你还没学过图片提取,可先看《给AI看一张图,提取你需要的信息》;结构化数据的基础见《Markdown、JSON、CSV:AI 常用的数据格式怎么读》。