把 PDF 变成可检索的知识
海量非结构化知识藏在 PDF 和图片里。这一篇讲怎样用 Pipeline Builder 把文档提取成文本、切成小块、嵌入成向量, 最终让语义搜索能精准命中原文——还能把原 PDF 渲染在侧边供核对。
https://www.palantir.com/docs/foundry/ontology/document-processing/
原始标题:Document processing
一句话速览
把 PDF 变成可检索的知识:海量非结构化知识藏在 PDF 和图片里。这一篇讲怎样用 Pipeline Builder 把文档提取成文本、切成小块、嵌入成向量,最终让语义搜索能精准命中原文——还能把原 PDF…
这一篇在讲什么?
从 PDF / 图片里提取数据,喂给语义搜索。
本篇给出一份基础指南:用 Pipeline Builder 解析 PDF,做语义搜索;并建议在只要纯文本时, 如何在 Workshop 应用里把信息呈现出来。
核心思路一句话:上传 PDF → 提取文本 → 把文本分块 → 对每块做嵌入 → 把结果变成可检索的本体对象, 搜索命中后,把对应的原 PDF 渲染在侧边,供用户"回到源头"核对。
数据提取流水线(概览)
用 Pipeline Builder 解析 PDF 的四步。
要把 PDF 接入语义搜索,原文给出的导入与提取步骤是:
点开每一层看细节。这四步产出的是一份"每行一个文档、带 object_text 文本列"的数据集,后面分块就在这上面做。
为什么要"分块(chunking)"?
长文本切成小块,再分别嵌入,检索才准。
分块,就是把大段文本切成更小的文本段。原文强调它有两个关键好处:
Chunk string 板卡的四个参数
在 Pipeline Builder 里用 Chunk string 板配置分块;把下面的参数拖到正确解释。
分块由 Pipeline Builder 里的 Chunk string 板完成。加好板后,要配置这几个参数:
点每个参数右边的按钮选解释,答完自动给反馈。
分块示例拆解(无代码)
用 Pipeline Builder 把一行文档变成多行 chunk。
原文用一个最简例子演示:一个两行数据集,列是 object_id 和 object_text。
| object_id | object_text |
|---|---|
| abc | gold ring lost |
| xyz | fast cars zoom |
逐步发生了什么
chunks,是 object_text 被切出的数组。例:["gold","ring","lost"]。文档建议每块约 256 字符、overlap 约 20 字符。{position, element}。abc_0),并删掉多余列。最终得到的表里,每行是一个 chunk,带 object_id(用于关联)、新主键 chunk_id、以及要嵌入的 chunk 文本:
| object_id | chunk | chunk_id | embedding |
|---|---|---|---|
| abc | gold | abc_0 | [-0.7, …, 0.4] |
| abc | ring | abc_1 | [0.6, …, -0.2] |
| abc | lost | abc_2 | [-0.8, …, 0.9] |
| xyz | fast | xyz_0 | [0.3, …, -0.5] |
动手演示:一份文档从上传到可检索
点"运行下一步",看 pipeline 如何一步步把 PDF 变成可语义检索的对象。
从"上传 PDF"到"可检索",共 8 步。点"运行下一步"逐步推进。
一页带走
延伸阅读 · 相关页面
按主题横向跳转,不必顺着目录一篇篇读。
常见问题速答 · FAQ
关于「把 PDF 变成可检索的知识」,读者最常问的几个问题。