VDMS
VDMS 是一种用于高效访问大“视觉”数据的存储解决方案,旨在通过搜索存储为图的视觉元数据来搜索相关的视觉数据,并实现对视觉数据的机器友好增强以加快访问速度,从而实现云规模。
安装和设置
安装客户端
pip install vdms
安装数据库
有两种方式可以开始使用 VDMS
通过 Docker 在本地计算机上安装 VDMS
docker run -d -p 55555:55555 intellabs/vdms:latest
直接在本地计算机上安装 VDMS
请参阅安装说明。
VectorStore
向量存储是 VDMS 的一个简单包装器。它提供了一个简单的接口来存储和检索数据。
from langchain_community.document_loaders import TextLoader
from langchain.text_splitter import CharacterTextSplitter
loader = TextLoader("./state_of_the_union.txt")
documents = loader.load()
text_splitter = CharacterTextSplitter(chunk_size=500, chunk_overlap=0)
docs = text_splitter.split_documents(documents)
from langchain_community.vectorstores import VDMS
from langchain_community.vectorstores.vdms import VDMS_Client
from langchain_huggingface import HuggingFaceEmbeddings
client = VDMS_Client("localhost", 55555)
model_name = "sentence-transformers/all-mpnet-base-v2"
vectorstore = VDMS.from_documents(
docs,
client=client,
collection_name="langchain-demo",
embedding_function=HuggingFaceEmbeddings(model_name=model_name),
engine="FaissFlat"
distance_strategy="L2",
)
query = "What did the president say about Ketanji Brown Jackson"
results = vectorstore.similarity_search(query)
有关 VDMS 包装器的更详细演练,请参阅此 Notebook