Deeplake 获取矢量存储中的矢量列表?

问题描述 投票:0回答:1

我一直在使用deeplake创建一个向量数据库,效果很好,我的问题是我不确定如何从数据库中检索向量,即构成嵌入向量的物理数字(例如[0.2143, 1.2332, 2.223, -0.23123, ...., 1.23242] 或无论它们是什么)。

我在这里找到了这段代码: https://docs.activeloop.ai/tutorials/vector-store/deep-lake-vector-store-in-langchain

# LangChain Vector Store
db = DeepLake(dataset_path=dataset_path)

# Deep Lake Vector Store object
ds = db.vectorstore

# Deep Lake Dataset object
ds = db.vectorstore.dataset

这似乎是我正在寻找的东西,但它并不像广告中那样起作用。它返回一个错误,指出矢量存储不存在。

我尝试了以下几种形式,试图使其发挥作用。

from langchain.vectorstores import DeepLake
import tqdm
import os


# Load the vector store
vector_store_path = '/path_to_deeplakestorage/DeeplakeStorage'
vector_store = DeepLake(dataset_path=vector_store_path, read_only=True, verbose=False)

all_vecs = vector_store.vectorstore.dataset. # This does not work

再次强调,我只是想返回在该数据库中找到的所有 id 和向量。结果应返回向量列表或 ID 和向量一起。

非常感谢任何帮助。谢谢你。

vector embedding deeplake
1个回答
0
投票

您想要检索存储在数据集中的所有嵌入以及 id 吗?如果是这样,您可以执行以下操作:

from langchain.vectorstores import DeepLake
import tqdm
import os


# Load the vector store
vector_store_path = '/path_to_deeplakestorage/DeeplakeStorage'
vector_store = DeepLake(dataset_path=vector_store_path, read_only=True, verbose=False)

embeddings = vector_store.vectorstore.embedding.data()['value']
ids = vector_store.vectorstore.id.data()['value']

© www.soinside.com 2019 - 2024. All rights reserved.