☰
Hyper-Extract 的 he dump 命令指南:知识摘要如何持久化到磁盘
2026/10/28 19:33:33 网站建设 项目流程

Hyper-Extract 的 he dump 命令指南:知识摘要如何持久化到磁盘

【免费下载链接】Hyper-ExtractHypergraph is more powerful. Transform unstructured text into structured knowledge with LLMs. Graphs, hypergraphs, and spatio-temporal extractions — with one command.项目地址: https://gitcode.com/GitHub_Trending/hy/Hyper-Extract

Hyper-Extract 是一款基于 LLM 的知识提取工具,能把非结构化文档转换为结构化的知识摘要(Knowledge Abstract,简称 KA)。dump正是这条流水线的最后一步:将提取出的知识摘要持久化到磁盘,供后续的可视化、语义搜索和对话复用。本文带你看懂这套"存得下、读得回"的持久化机制。

🧠 先认识主角:知识摘要(Knowledge Abstract)

he parse命令从文档中提取出的并不是零散的笔记,而是一个完整的知识摘要目录。一个 KA 就是"结构化数据 + 元信息 + 向量索引"的集合体,全部继承自统一的基类 BaseAutoType,因此任何类型的 KA(图、超图、集合、模型等)都共享同一套保存协议。

💾 dump 一次写入的"三件套"

ka.dump()是整个持久化流程的总入口,定义在 base.py#L526-L557。它会在目标目录下写出三部分:

./my_ka/ ├── data.json # 核心知识数据(实体、关系等结构化 JSON) ├── metadata.json # 模板、语言、创建/更新时间戳 └── index/ # 向量索引文件(FAISS),支持语义搜索

三者地位并不对等,这一点决定了系统的容错设计:

文件地位写入策略
data.json🔴 关键由 Pydantic 模型序列化写出,dump_data() 保证 UTF-8 与缩进格式
metadata.json🟡 推荐记录created_at/updated_at等,dump_metadata() 写入
index/🟢 可选索引保存失败只打印警告、不中断流程,随时可用he build-index重建

这种"数据为主、索引可弃"的分层设计,意味着即使索引损坏,你的知识本体也安然无恙。

⚙️ 哪些 he 命令在暗中替你执行 dump

在官方工作流图中,"保存"被标记为he dump(见 docs/zh/cli/index.md 的流程说明);而在当前实现中,这个保存动作由ka.dump()承担,被以下三个命令自动触发,无需你手动执行:

  1. he parse— 提取完成后保存数据;若未跳过索引(--no-index),构建索引后会再 dump 一次把索引一并落盘,见 cli.py#L346-L368
  2. he feed— 向已有 KA 追加新文档后,合并结果自动保存,见 cli.py#L825-L827
  3. he build-index— 重建向量索引后重新持久化,见 cli.py#L887-L889

也就是说,只要你正常走完提取流程,知识就已经安全躺在磁盘上了。

📂 load 读回来:一场完整的往返旅行

持久化的另一半是 load(),它与 dump 严格对称,且按重要性分级处理:

  • data.json缺失 → 直接报错(没有数据就没有 KA)
  • metadata.json缺失 → 静默跳过
  • index/缺失或损坏 → 打印提示,建议用he build-index或ka.clear_index()重建

此外还有一个贴心的细节:读回时会把metadata里被序列化成字符串的时间戳还原为datetime对象,保证加载后的 KA 与新创建的行为完全一致(见 base.py#L641-L652)。

🐍 Python API:手动掌控保存时机

如果你用 Python 而非 CLI,dump与load同样是显式方法,保存时机完全由你决定——这也是长任务中做定期快照的关键手段(示例见 docs/zh/python/guides/incremental-updates.md):

ka.feed_text(text) ka.dump("./kb_v1/") # 任意时刻手动快照 ka.load("./kb_v1/") # 随时恢复现场

完整读写指南参见 docs/zh/python/guides/saving-loading.md。

🗺️ 模块速查

内容路径
CLI 命令入口hyperextract/cli/cli.py
dump / load 核心实现hyperextract/types/base.py
知识摘要类型族hyperextract/types/
预置提取模板hyperextract/templates/presets/
CLI 文档(含工作流图)docs/zh/cli/index.md

一句话总结:he parse/he feed/he build-index背后都藏着同一个ka.dump(),它把知识摘要拆成"数据、元信息、索引"三层落盘;load()再按同一协议读回——一次 dump,知识永久可查。

【免费下载链接】Hyper-ExtractHypergraph is more powerful. Transform unstructured text into structured knowledge with LLMs. Graphs, hypergraphs, and spatio-temporal extractions — with one command.项目地址: https://gitcode.com/GitHub_Trending/hy/Hyper-Extract

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询