togpt 徽标" style="max-width: 100%;">
ontogpt是一个 Python 包,用于从具有大型语言模型 (LLM)、指令提示和基于本体的基础的文本中提取结构化信息。
有关更多详细信息,请参阅完整文档。
ontogpt在命令行上运行,但也有一个最小的 Web 应用程序界面(请参阅下面的Web Application
部分)。
确保您安装了 Python 3.9 或更高版本。
使用pip
安装:
pip install ontogpt
设置您的 OpenAI API 密钥:
runoak set-apikey -e openai < your openai api key >
查看所有ontogpt命令的列表:
ontogpt --help
尝试一个简单的信息提取示例:
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 应用程序:
web- ontogpt
注意:我们不建议在未经身份验证的情况下公开托管此 Web 应用程序。
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.com/) 检索和运行。
您需要安装ollama
(请参阅 GitHub 存储库),并且可能需要使用ollama serve
或sudo systemctl start ollama
等命令将其作为服务启动。
然后使用ollama pull <modelname>
检索模型,例如ollama pull llama3
。
然后,可以通过在其名称前添加ollama/
前缀(例如ollama/llama3
以及--model
选项,在ontogpt中使用该模型。
一些 ollama 模型可能不会在ontogpt list-models
中列出,但可以使用ollama list
命令查看下载的 LLM 的完整列表。
ontogpt的功能已根据测试数据进行了评估。请参阅完整文档,了解有关这些评估以及如何重现它们的详细信息。
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。
该项目是君主倡议的一部分。我们还衷心感谢博世研究中心对该研究项目的支持。