跳转到主要内容

OntoGPT

项目描述

OntoGPT

OntoGPT Logo

DOI PyPI

简介

OntoGPT 是一个用于从大型语言模型 (LLMs)、指令提示 和基于本体论的基础中提取结构化信息的 Python 包。

有关更多详细信息,请参阅完整文档。

快速入门

OntoGPT 在命令行上运行,尽管还有最小化的网络应用程序界面(见下文 Web 应用程序 部分)。

  1. 确保您已安装 Python 3.9 或更高版本。

  2. 使用 pip 进行安装

    pip install ontogpt
    
  3. 设置您的 OpenAI API 密钥

    runoak set-apikey -e openai <your openai api key>
    
  4. 查看所有 OntoGPT 命令的列表

    ontogpt --help
    
  5. 尝试信息提取的简单示例

    echo "One treatment for high blood pressure is carvedilol." > example.txt
    ontogpt extract -i example.txt -t drug
    

    OntoGPT 将检索必要的本体并输出结果到命令行。您的输出将在 extracted_object 标题下提供所有提取的对象。

Web 应用程序

有一个简单的网络应用程序,用于运行 OntoGPT 和查看结果。

首先,通过运行以下命令使用 pip 安装所需依赖项

pip install ontogpt[web]

然后运行此命令以启动网络应用程序

web-ontogpt

注意:我们不推荐在没有身份验证的情况下公开托管此网络应用程序。

模型 API

OntoGPT 使用 litellm 包(https://litellm.vercel.app/)与 LLM 交互。

这意味着支持大多数 API,包括 OpenAI、Azure、Anthropic、Mistral、Replicate 等。

要使用的模型名称可以在以下命令中找到:ontogpt list-models - 使用第一列中的名称,并通过--model选项使用。

在大多数情况下,这需要设置特定服务的API密钥,如下所示。

runoak set-apikey -e anthropic-key <your anthropic api key>

某些端点,例如通过Azure的OpenAI模型,需要设置其他详细信息。这些设置方式类似。

runoak set-apikey -e azure-key <your azure api key>
runoak set-apikey -e azure-base <your azure endpoint url>
runoak set-apikey -e azure-version <your azure api version, e.g. "2023-05-15">

这些详细信息也可以按照以下方式设置为环境变量。

export AZURE_API_KEY="my-azure-api-key"
export AZURE_API_BASE="https://example-endpoint.openai.azure.com"
export AZURE_API_VERSION="2023-05-15"

开放模型

可以通过ollama包(https://ollama.ac.cn/)检索和运行开放LLM。

您需要安装ollama(见GitHub仓库),可能需要使用类似ollama servesudo systemctl start ollama的命令将其作为服务启动。

然后使用ollama pull <modelname>检索模型,例如ollama pull llama3

然后可以通过在名称前加上ollama/(例如ollama/llama3),以及--model选项在OntoGPT中使用该模型。

一些ollama模型可能不在ontogpt list-models中列出,但可以使用ollama list命令查看下载的LLM的完整列表。

评估

OntoGPT的功能已在测试数据上进行了评估。有关这些评估的详细信息以及如何复现它们,请参阅完整文档。

相关项目

  • TALISMAN,一个用于生成基因集合中丰富函数摘要的工具。TALISMAN使用OntoGPT与LLM一起工作。

教程和演示

  • 演示:“在大型语言模型的帮助下构建结构化生物知识” - Harry Caufield作为AgBioData联盟网络研讨会系列的一部分进行演示(2023年9月)
  • 演示:“使用大型语言模型转换非结构化生物医学文本” - Harry Caufield作为ISMB/ECCB 2023的BOSC会议的一部分进行演示(2023年7月)
  • 演示:“OntoGPT:一个用于处理本体和大型语言模型的框架” - Chris Mungall在联合食品本体工作组上的演讲(2023年5月)

引用

OntoGPT中使用的实体提取方法SPIRES在以下文献中进一步描述:Caufield JH,Hegde H,Emonet V,Harris NL,Joachimiak MP,Matentzoglu N,等。无监督学习填充知识库的方法:结构化提示查询和语义递归提取(SPIRES)。生物信息学,第40卷,第3期,2024年3月,btae104,https://doi.org/10.1093/bioinformatics/btae104

致谢

本项目是Monarch Initiative的一部分。我们还要感谢Bosch Research对我们这个研究项目的大力支持。

项目详情


下载文件

下载适用于您平台文件的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分布

ontogpt-1.0.5.tar.gz (1.1 MB 查看散列值)

上传时间

构建分布

ontogpt-1.0.5-py3-none-any.whl (1.3 MB 查看散列值)

上传时间 Python 3

由以下支持