Epsilla
Epsilla 是一个开源向量数据库,它利用先进的并行图遍历技术进行向量索引。Epsilla 在 GPL-3.0 许可下获得许可。
您需要安装 langchain-community
,使用 pip install -qU langchain-community
才能使用此集成
此笔记本展示了如何使用与 Epsilla
向量数据库相关的功能。
作为先决条件,您需要有一个正在运行的 Epsilla 向量数据库(例如,通过我们的 docker 镜像),并安装 pyepsilla
包。查看完整文档,请访问 文档。
!pip/pip3 install pyepsilla
我们想要使用 OpenAIEmbeddings,所以我们必须获取 OpenAI API 密钥。
import getpass
import os
if "OPENAI_API_KEY" not in os.environ:
os.environ["OPENAI_API_KEY"] = getpass.getpass("OpenAI API Key:")
OpenAI API 密钥:········
from langchain_community.vectorstores import Epsilla
from langchain_openai import OpenAIEmbeddings
API 参考:Epsilla | OpenAIEmbeddings
from langchain_community.document_loaders import TextLoader
from langchain_text_splitters import CharacterTextSplitter
loader = TextLoader("../../how_to/state_of_the_union.txt")
documents = loader.load()
documents = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0).split_documents(
documents
)
embeddings = OpenAIEmbeddings()
API 参考:TextLoader | CharacterTextSplitter
Epsilla vectordb 正在运行,默认主机为 "localhost",端口为 "8888"。我们有自定义的数据库路径、数据库名称和集合名称,而不是默认的。
from pyepsilla import vectordb
client = vectordb.Client()
vector_store = Epsilla.from_documents(
documents,
embeddings,
client,
db_path="/tmp/mypath",
db_name="MyDB",
collection_name="MyCollection",
)
query = "What did the president say about Ketanji Brown Jackson"
docs = vector_store.similarity_search(query)
print(docs[0].page_content)
在一个又一个州,新的法律已经被通过,不仅是为了压制投票,而且是为了颠覆整个选举。
我们不能让这种情况发生。
今晚。我呼吁参议院:通过《自由投票法案》。通过《约翰·刘易斯投票权法案》。在您执行这些操作的同时,通过《披露法案》,以便美国人可以知道是谁在资助我们的选举。
今晚,我想表彰一位将一生奉献给国家的人:斯蒂芬·布雷耶大法官——一位陆军退伍军人、宪法学者,以及即将退休的美国最高法院大法官。布雷耶大法官,感谢您的服务。
总统最重要的宪法责任之一是提名某人担任美国最高法院法官。
而我在 4 天前就做了这件事,当时我提名了巡回上诉法院法官 Ketanji Brown Jackson。我们国家最顶尖的法律人才之一,她将延续布雷耶大法官的卓越遗产。