跳转到主要内容

存储和查询知识图嵌入的包

项目描述

此包提供了一种数据库架构和Python包装器,用于存储通过各种表示学习包生成的嵌入。

目前,此包侧重于使用SQL数据库和SQLAlchemy,但可能扩展到使用NoSQL数据库作为替代。

安装

使用以下命令直接从GitHub安装embeddingdb:

$ pip install git+https://github.com/cthoyt/embeddingdb

将环境变量EMBEDDINGDB_CONNECTION设置为有效的SQLAlchemy连接字符串,因为此包使用特定于PostgreSQL的ARRAY类型。

命令行界面

此包安装了一个名为embeddingdb的入口点,可以直接从shell中使用。

上传实体嵌入

实体可以通过各种类型的表示学习进行嵌入和存储,包括网络表示学习、知识图嵌入和文本学习。

使用以下命令上传由word2vec生成的嵌入,指定文件路径:

$ embeddingdb upload --fmt word2vec --path ~/path/to/file.txt

使用以下命令上传由pykeen生成的嵌入,指定输出目录:

$ embeddingdb upload --fmt keen --path ~/path/to/directory/

列出实体嵌入

上传后,可以使用以下命令列出集合:

$ embeddingdb ls

分析实体嵌入的相关性

建立这个仓库的动机之一是为了提供一个方便的方法来比较通过正交嵌入技术生成的实体嵌入。例如,我们想知道从蛋白质序列通过 ratvec 生成的蛋白质嵌入与从蛋白质-蛋白质相互作用网络通过 pykeennrl 生成的嵌入包含多少相同的信息。

两个位置参数对应于数据库中的集合标识符。

$ embeddingdb analyze 1 2

使用Docker运行

安装Docker后,可以使用以下命令实例化整个Web应用程序

$ docker-compose up

获取 /test 端点以实例化数据库并添加测试集合。

项目详情


下载文件

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

源分布

embeddingdb-0.0.1.tar.gz (11.3 kB 查看哈希值)

上传时间

构建分布

embeddingdb-0.0.1-py3-none-any.whl (14.1 kB 查看哈希值)

上传时间 Python 3

由以下提供支持