百度向量数据库
百度 VectorDB 是一款由百度智能云精心打造的全托管、企业级分布式数据库服务。它以存储、检索和分析多维向量数据的能力著称。VectorDB 的核心是百度自主研发的“Mochow”向量数据库内核,确保了高性能、高可用性和安全性,以及出色的可扩展性和易用性。
该数据库服务支持多种索引类型和相似性计算方法,满足各种用例需求。VectorDB 的一个突出特点是它能够管理高达 100 亿的向量规模,同时保持出色的查询性能,支持每秒数百万次查询 (QPS),查询延迟仅为毫秒级。
您需要使用 `pip install -qU langchain-community` 安装 `langchain-community` 才能使用此集成。
此笔记本展示了如何使用与百度 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