ontogpt

用大模型从文本中自动抽取结构化知识,构建本体图谱

ontogpt 是一个基于大型语言模型(LLM)的本体论信息抽取工具集,核心组件是 SPIRES(Structured Prompt Interrogation and Recursive Extraction System)。它主要解决从非结构化文本中自动提取结构化知识并映射到本体(如生物学、医学等领域)的问题。用户通过定义模板和提示,引导 LLM 输出符合特定模式的实体、关系和属性,从而构建知识图谱或数据库。项目支持多种预定义模板,也允许自定义,并集成了与 BioPortal 等本体服务的交互。其核心能力包括:基于提示的零样本抽取、递归细化提取结果、以及将抽取结果序列化为标准格式(如 JSON、OWL)。

开源 free 开源模型
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1026
维护状态 较活跃
是否开源 是
定价模式 free

项目数据

分类开源模型
开发团队monarch-initiative
所属国家
定价模式free
价格说明开源项目,BSD-3-Clause许可证,可免费使用和部署。
访问状态
是否开源是
开源协议BSD-3-Clause
主要语言Jupyter Notebook
技术栈/模型ai,chat-gpt,data-modeling,gpt-3,information-extraction,language-models,large-language-models,linkml,llm,monarchinitiative,named-entity-recognition,ner,nlp,oaklib,obofoundry,relation-extraction
GitHub 星标★ 1026
30天Star增速
HF 下载量
上线时间2023-01-03 00:00:00
最近更新2026-09-23 00:00:00
维护状态较活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数3

使用教程

难度:入门 约 10 分钟 部署方式:命令行工具 6 步

环境要求

  • Python 3.10 或更高版本
  • OpenAI API 密钥(用于访问 LLM)
  • 可访问外网以拉取所需本体(如通过 OAK 注解器)

安装与启动步骤

  1. 1检查 Python 版本

    确认本机 Python 版本不低于 3.10,否则 pip 安装后可能无法正常运行。

    python --version
  2. 2安装 OntoGPT

    用 pip 从 PyPI 安装 ontogpt 包,安装后会提供 ontogpt 命令行入口。

    pip install ontogpt
  3. 3配置 OpenAI 密钥

    用 runoak 的 set-apikey 命令把 OpenAI 密钥写入配置,供 OntoGPT 调用模型使用。

    runoak set-apikey -e openai sk-xxxxxxxx
  4. 4查看可用命令

    执行 help 列出 OntoGPT 的全部子命令,确认安装成功并了解可用功能。

    ontogpt --help
  5. 5准备示例文本

    把待抽取的一句话写入 example.txt,作为抽取命令的输入文件。

    echo "One treatment for high blood pressure is carvedilol." > example.txt
  6. 6运行抽取示例

    用 drug 模板对示例文本做信息抽取,会自动获取所需本体并输出结果。

    ontogpt extract -i example.txt -t drug

关键配置

配置项必填说明示例
openai api key是LLM 调用凭证,通过 runoak set-apikey 写入本地配置sk-xxxxxxxx

如何确认成功

执行 ontogpt --help 能列出所有子命令;抽取运行时命令行输出 extracted_object 与 validation 两个区段即成功。

常见问题

Q:不设置 API key 可以运行吗?

A:不行。README 明确要求先通过 runoak set-apikey -e openai 设置 OpenAI 密钥,未设置时模型调用会失败。

Q:输出里的 AUTO: 前缀是什么意思?

A:表示该名称无法在真实本体中完成 grounding,OntoGPT 不会猜测标识符,而是用 AUTO: 前缀标记。

Q:如何确认抽取出的标识符是真实的?

A:看输出中的 validation 区段,它报告每个标识符是否存在于对应本体并与标签匹配,无效项会尽量替换。

Q:除了命令行还有别的用法吗?

A:README 提到还有一个精简的 Web 应用界面,具体用法见项目文档的 Web Application 章节。

注意事项

  • OntoGPT 不直接让模型生成本体标识符,而是先取名称再通过 OAK 注解器 grounding 并校验,降低幻觉风险。
  • 抽取结果同时输出 extracted_object(抽取对象)和 validation(校验结果)两部分,建议都查看。
  • 自定义模板、递归抽取等高级用法请查阅官方文档 https://monarch-initiative.github.io/ontogpt/。

核心亮点

  • 提供 SPIRES 递归提取机制,能逐步细化复杂抽取任务,提高准确性
  • 内置多种领域模板(如生物、化学),开箱即用,降低使用门槛
  • 与 BioPortal 集成,自动映射到标准本体,方便知识融合

不足之处

  • 依赖外部 LLM API,运行成本和数据隐私需自行考量
  • 模板定制需要学习其特定语法,上手有一定陡峭度

适用场景

  • 从科研文献中自动提取基因、疾病、药物等实体关系,构建知识图谱
  • 辅助构建领域本体,快速生成候选类与属性
  • 将非结构化报告(如医学病例)转换为结构化数据库记录

替代项目

spacy-llm、dspy、extractous

项目介绍

ontogpt 是开发框架领域的开源项目,由 monarch-initiative 开发,2023 年首次发布。

在全站 13,090 个收录项目中,它的 GitHub 星标数(1,026)位列前 30%,在开发框架分类中处于中上游。

近 42 天,它的 GitHub 星标从 972 增加到 1,026,净增 54。

项目保持着较活跃的维护节奏,最近一次代码更新于 2026-09-23。BSD-3-Clause许可证,可免费使用和部署。

它主要面向的使用场景是:从科研文献中自动提取基因、疾病、药物等实体关系,构建知识图谱。同类可对比的替代方案包括 spacy-llm、dspy、extractous。

上一篇:OgbujiPT

下一篇:ChainForge

同类项目推荐

langchain 开源

组装 AI 应用的乐高积木,从想法到上线不换工具

The agent engineering platform.

★ 146874 2026-08-09
transformers 开源

全球最大的模型仓库全家桶,想用的模型一把抓

Transformers: the model-definition framework for state-of-the-art machine learning m···

★ 166529 2026-08-09
pi 开源

一套 TypeScript 工具包,快速搭出能写代码的 AI agent

AI agent toolkit: unified LLM API, agent loop, TUI, coding agent CLI

★ 108504 2026-09-12