开源知识抽取框架 推荐
随着大模型和知识图谱技术的发展,涌现出许多优秀的开源知识抽取(Knowledge Extraction)框架,它们可以帮助我们从文本中自动提取实体、关系、事件等结构化信息,进而构建知识图谱。
以下是目前(2025年)在学术界和工业界广泛使用、功能强大且持续维护的开源知识抽取框架推荐,涵盖传统方法和大模型时代的新范式:
✅ 1. OneKE(推荐指数:⭐⭐⭐⭐⭐)
- 来源:蚂蚁集团 + 浙江大学 联合研发
- 官网:http://oneke.openkg.cn/
- GitHub:集成在 DeepKE 和 OpenSPG 中
- 特点:
- 基于大语言模型(LLM)的统一知识抽取框架,支持中英文。
- 支持命名实体识别(NER)、关系抽取(RE)、事件抽取(EE) 等多任务。
- 采用“基于 Schema 的轮询指令构造”技术,提升大模型在信息抽取任务上的泛化能力。
- 开源了基于 Chinese-Alpaca-2-13B 全参数微调的版本,适合中文场景。
- 支持与 OpenSPG 和 DeepKE 集成,开箱即用。
📌 适用场景:金融、医疗、政务等领域的中英文知识图谱构建。
🔥 特别推荐给中文用户和大模型爱好者,是当前最先进的开源 LLM-based 抽取框架之一。
✅ 2. DeepKE(推荐指数:⭐⭐⭐⭐⭐)
- 来源:浙江大学 & 蚂蚁集团
- GitHub:https://github.com/zjunlp/DeepKE
- 特点:
- 支持静态(Distant Supervision)、零样本(Zero-shot)、低资源(Few-shot)等多种学习场景。
- 支持 NER、RE、EE 全流程抽取。
- 提供 LLM 版本(DeepKE-LLM),支持调用 OneKE、ChatGLM、Baichuan 等大模型进行抽取。
- 中文支持优秀,文档齐全,社区活跃。
📌 优势:灵活、易用、支持多种范式,适合研究和工业落地。
✅ 3. OpenSPG(推荐指数:⭐⭐⭐⭐⭐)
- 来源:蚂蚁集团
- 官网:https://openspg.yuque.com/
- 特点:
- 不只是一个抽取框架,而是一个完整的知识图谱构建平台。
- 支持从文本到知识图谱的端到端自动化构建(Schema 定义 → 抽取 → 存储 → 查询)。
- 集成 OneKE 作为核心抽取引擎。
- 支持 SPG(Semantic Preserving Graph) 模型,支持复杂语义建模。
- 提供 kNext 编程框架,可编写图谱构建流程。
📌 适用场景:企业级知识图谱自动化构建,尤其适合金融、风控等复杂场景。
🚀 可以看作是“知识图谱的编程操作系统”。
✅ 4. SpaCy + EntityRuler / SpanCAT(推荐指数:⭐⭐⭐⭐)
- 官网:https://spacy.io/
- 特点:
- 工业级自然语言处理库,速度快、易部署。
- 支持规则 + 统计模型混合抽取。
EntityRuler
:基于规则的实体识别,适合高精度场景。SpanCAT
:支持多标签、嵌套实体识别。- 支持自定义 pipeline,可集成到生产系统。
📌 适用场景:需要快速部署、轻量级抽取任务,如客服系统、日志分析等。
✅ 5. Stanford OpenIE / StanfordNLP(推荐指数:⭐⭐⭐⭐)
- 官网:https://nlp.stanford.edu/software/openie.html
- 特点:
- 经典的开放式信息抽取(OpenIE) 工具。
- 无需预定义 Schema,自动从句子中提取三元组。
- 输出格式清晰:
[主语] [谓语] [宾语]
。 - 适合构建通用知识图谱。
📌 缺点:对中文支持较弱,抽取结果需要后处理。
✅ 6. Google Thinker(新兴推荐)
- 说明:虽然 Google 官方未完全开源 Thinker 系统,但其思想影响了多个开源项目。
- 类似实现:可参考 Facebook DeepPath、Microsoft LUKE 等基于路径推理的抽取模型。
- 特点:结合知识图谱已有知识进行推理式抽取。
✅ 7. 其他值得关注的框架
框架 | 特点 |
---|---|
HuggingFace Transformers + 自定义Head | 使用 BERT/RoBERTa 等预训练模型 + 自定义NER/RE头,高度灵活 |
PaddleNLP / ERNIE-Health | 百度飞桨生态,中文医疗知识抽取强 |
KGTK (Knowledge Graph Toolkit) | 由谷歌和IBM支持,适合大规模知识图谱构建与转换 |
Apache Jena + RDFS/OWL 推理 | 适合语义网、RDF三元组抽取与推理 |
📊 对比总结表
框架 | 中文支持 | 大模型支持 | 多任务 | 易用性 | 适用场景 |
---|---|---|---|---|---|
OneKE | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 学术+工业,中文首选 |
DeepKE | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 研究+落地,全场景 |
OpenSPG | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 企业级自动化构建 |
SpaCy | ⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 轻量级、快速部署 |
Stanford OpenIE | ⭐⭐ | ⭐ | ⭐⭐⭐ | ⭐⭐⭐ | 英文OpenIE |
PaddleNLP | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | 百度生态,医疗强 |
🔚 推荐选择建议
- 如果是中文用户,想用大模型做知识抽取 → 首选 OneKE + DeepKE-LLM
- 如果构建企业级知识图谱平台 → 使用 OpenSPG
- 如果需要快速部署一个轻量级系统 → 使用 SpaCy + EntityRuler
- 如果做学术研究,支持多种学习范式 → 使用 DeepKE