PDF 直接丢给 AI 就行?
datasheet 喂 AI,先过这关
表格读不进,全白搭
#工作流 · #PDF转markdown · #datasheet · #MinerU · #MarkltDown
硬件AI工坊
📦 7 Parts + Conclusion
👉 滑动
PART 01
为什么读不进
PDF 的排版陷阱
PART 02
实测两条路
工具 + 脚本
PART 05
半自动校表
转完必核 4 项
PART ///
写在最后
资料包
想把 LAN8720A 的规格书喂给 AI 抽参数,结果还没轮到 AI 发挥,我先卡在了最前面一步。
这份 PDF,得先变成 Markdown。
我原以为这是最简单的一步,点一下转换的事。试下来才发现,对硬件 datasheet 这种表格密集的文件,PDF 转 Markdown 是整个工作流里最不起眼、却最碍事的一道坎。
01
PART
PDF 不是 AI 能顺滑读的格式
WHY · 为什么读不进
datasheet 里最要命的信息,基本不在正文段落,而在三个地方:电气特性表、寄存器和位域图、曲线图。
PDF 是个排版格式,它只记得“这个字在这个坐标”,不记得“这是一个表”。文字层、表格线、图,全压在一起。
你直接把 PDF 丢给 AI,它要么把表当图去“看”,猜;要么硬抽文字,抽出来是乱的。上次让它读 LAN8720A,翻车在“看图猜数”——现在回头看,根子不在 AI 笨,在我喂进去的东西本来就是一坨没结构化的排版。
上次跑原理图评审那篇实测,这步我也只是一带而过,说后面单开一篇专门讲——这篇就是来填这个坑的。
所以不管后面你要做 RAG、抽参数还是搭知识库,前面这道 PDF→Markdown 的坎,绕不过去。
02
PART
第一条路:专用解析工具
WAY 1 · 专用解析工具
LAN8720A 是电子版 PDF,文字能复制,不是扫描件,我先按“矢量文本”的路子,上了 MarkItDown。
它本地跑,快,文字层出来得很顺,段落在、标题在。但它的强项就是矢量文本,不怎么做深度版面分析——LAN8720A 是双栏排版,它不认栏,把左栏某行和右栏某行横向拼到一起,语序直接错乱,读起来像两个人同时说话被录进了同一行。电气特性表也错位,参数名和数值串行。
更要命的是 datasheet 里那些内嵌的图——寄存器位域图、曲线图,很多是图片对象不是文字。MarkItDown 遇上图片型的内容效果就不好,这些它基本抓瞎。
换 MinerU。它路子不一样,不是简单提文字,而是先做版面分析:识别这页有几栏、阅读顺序怎么走、哪块是表格哪块是图,再输出结构化的 Markdown,还能给 JSON。双栏它认得出来,语序没乱;电气特性表也比 MarkItDown 强,大部分能成表。
但寄存器位域图、曲线图这种,它识别得出“这是一张图”,图里的数还是得靠视觉模型去认,位域表照样崩成乱码。特别复杂的合并表头,偶尔也还会错位。
两个下来,分工其实挺清楚
MarkItDown 快但浅,文字好、表格和图不行;MinerU 深但重,版面和表格强、但图片型元素还得猜
共同的硬伤,还是落在“图”上。而 datasheet 最值钱的电气特性表和寄存器图,恰好一个在表格、一个在图。
03
PART
第二条路:自己写脚本
WAY 2 · 自己写脚本
解析工具不顶用,我想着自己控,就用 Python 脚本(pdfplumber这类抽表格的库)来抽。
好处是能精细操作:指定页、指定区域、按单元格抽。
但很快发现,卡点和上面一模一样。pdfplumber 抽电气特性表,合并表头那几行经常错位;跨页的大表拼起来,页眉页脚混了进去;寄存器位域图,还是抽不动。
我能靠脚本修一部分——手动指定哪一行是表头、把合并单元格拆开、删掉页眉的干扰行。但每修一处,都得对着这一份 PDF 的具体排版调。
换一份 datasheet,排版一变,参数又得重调。
说白了,脚本能搞定一份你反复用的规格书,但它不通用。换一颗芯片,又是一场新的折腾。

04
PART
按 PDF 类型选工具,是最实用的收货
PICK · 按类型选工具
我自己反复用、实测过的是 MarkItDown 和 MinerU这两个,各有侧重:矢量文本、要快,上 MarkItDown;版面复杂、表格多、要喂 RAG,上 MinerU。
其他类型我也整理了个选型参考(部分没细测,按需选):
✦ 硬件场景特别提醒
老芯片的 datasheet,很多是扫描件,没有可复制的文字层。MarkItDown 这种吃矢量文本的直接废,得先 OCR。我图省事就 OCRmyPDF 先过一道加文字层再转——流程简单,但排版还原一般,表格该错还是错。
05
PART
两条路试下来,我的当前结论
RESULT · 当前结论
试了一圈,一个挺扫兴的结论:
对硬件 datasheet 这种表格密集的文件,现在还没有“一键完美”的方案。至少我没有
文字层,AI 和工具都能搞定。真正的难点,从头到尾都是表格和寄存器图。
所以我把这一步从“自动转换”改成了“半自动 + 人工校表”:
文字部分用工具转,省事;
关键的电气特性表、寄存器表,转完我不直接信,对照原文核一遍,错得离谱的干脆手敲进 Markdown;
凡是工具或脚本“看图”抽出来的数,一律回原图确认——这条跟上次 AI 认错信号是一个道理:眼睛不可信的部分,就得人盯。
慢,但可靠。
而且这一步省不得。因为后面的 RAG、抽参数、知识库,全指望这份 Markdown 干净。输入脏,后面全白搭。

06
PART
转完之后,我必核的几项
CHECK · 转完必核
不是清单控,是这几处错的频率实在太高:
电气特性表的数值有没有贴错行
最优先,错了直接误导设计
多栏排版的语序对不对
寄存器、位域表有没有崩成乱码
单位、页码、脚注还在不在
没了就没法回原文定位
核完这几项,这份 Markdown 才敢往工作流的下一步喂。
07
PART
下一步
NEXT · 下一步
我现在在试一个半自动的校法:让 AI 转完一张表,再让它自己对着原图查一遍错,相当于转完自带一道复核。
还没完全跑通。它有时候“自己查自己”,查得很敷衍。
等跑通了再单独写一篇。
///
LAST
最后
END · 文末
转成干净的 Markdown 只是第一步。接下来怎么让 AI 稳稳地抽参数、不让它编数,我把提示词整理成了模板。
关注「硬件AI工坊」,回复 Datasheet领取。
既然看到这里了,如果觉得有用,随手点个赞、在看、转发三连吧。
THANKS FOR READING
夜雨聆风