百度 VectorDB
百度 VectorDB 是一款由百度智能云精心开发和完全托管的企业级分布式数据库服务。它以其卓越的存储、检索和分析多维向量数据的能力而著称。VectorDB 的核心在于百度自研的 “Mochow” 向量数据库内核,该内核确保了高性能、高可用性和安全性,同时还具有卓越的可扩展性和用户友好性。
这款数据库服务支持多种索引类型和相似度计算方法,以满足各种用例的需求。VectorDB 的一个突出特点是它能够管理高达 100 亿的巨大向量规模,同时保持令人 впечатляющий 的查询性能,支持每秒数百万次的查询 (QPS),查询延迟仅为毫秒级。
您需要安装 langchain-community
,请使用命令 pip install -qU langchain-community
来使用此集成。
此 notebook 展示了如何使用与百度 VectorDB 相关的功能。
要运行,你应该拥有一个 数据库实例。
!pip3 install pymochow
from langchain_community.document_loaders import TextLoader
from langchain_community.embeddings.fake import FakeEmbeddings
from langchain_community.vectorstores import BaiduVectorDB
from langchain_community.vectorstores.baiduvectordb import ConnectionParams
from langchain_text_splitters import CharacterTextSplitter
loader = TextLoader("../../how_to/state_of_the_union.txt")
documents = loader.load()
text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
docs = text_splitter.split_documents(documents)
embeddings = FakeEmbeddings(size=128)
conn_params = ConnectionParams(
endpoint="http://192.168.xx.xx:xxxx", account="root", api_key="****"
)
vector_db = BaiduVectorDB.from_documents(
docs, embeddings, connection_params=conn_params, drop_old=True
)
query = "What did the president say about Ketanji Brown Jackson"
docs = vector_db.similarity_search(query)
docs[0].page_content
vector_db = BaiduVectorDB(embeddings, conn_params)
vector_db.add_texts(["Ankush went to Princeton"])
query = "Where did Ankush go to college?"
docs = vector_db.max_marginal_relevance_search(query)
docs[0].page_content