ontogpt

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

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 开源模型 🍴 复刻 125 🐛 待处理 80 👀 关注 19
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1089
维护状态 维护中
是否开源 开源
定价模式 🏷️完全免费 开源项目,BSD-3-Clause许可证,可免费使用和部署。

项目预览

ontogpt 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类开源模型
开发团队monarch-initiative
定价模式🏷️完全免费
价格说明开源项目,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 星标★ 1089
上线时间2023-01-03 00:00:00
代码更新2026-09-10
仓库体积83.8 MB
本站数据更新2026-11-09
维护状态维护中
收录时间2026-08-09
浏览次数4

项目介绍

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

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1089

使用教程

难度:入门 约 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

上一篇:OgbujiPT

下一篇:ChainForge

同类项目推荐

aigne-framework 开源

用 TypeScript 函数式组合,快速搭建生产级 AI Agent

The functional, composable, and typescript-first AI Agent framework for real-world L···

★ 369 2026-08-09
lmstudio-js 开源

用 TypeScript 轻松调用本地大模型,开发 AI 应用更高效

LM Studio TypeScript SDK

★ 1809 2026-08-09
agentsilex 开源

300行代码,让你完全掌控AI智能体,无黑盒魔法

A transparent, minimal, and hackable agent framework. ~300 lines of readable code. F···

★ 458 2026-08-09
fast-agent 开源

快速搭建、测试和评估 AI 智能体,支持 MCP/ACP/A2A 协议

Code, Build and Evaluate agents - excellent Model and Skills/MCP/ACP/A2A Support

★ 3960 2026-08-09
ai-agents 开源

用 Ruby 快速搭建能调用工具、互相协作的 AI 智能体

Ruby AI Agents SDK - Inspired by OpenAI Agents SDK

★ 164 2026-09-22
agent-protocol 开源

统一智能体接口,告别碎片化集成

Common interface for interacting with AI agents. The protocol is tech stack agnostic···

★ 1460 2026-08-09
cc9s 开源

像 k9s 管 Pod 一样,用 TUI 轻松管理 Claude Code 会话

A k9s-inspired CLI and TUI for managing Claude Code sessions — browse, search, insp···

★ 67 2026-08-09
PromptingTools.jl 开源

Julia 里几行代码调用大模型,提示词管理一步到位

Streamline your life using PromptingTools.jl, the Julia package that simplifies inte···

★ 178 2026-10-05