Skip to main content
Open In ColabOpen on GitHub

AwaDB

AwaDB is an AI Native database for the search and storage of embedding vectors used by LLM Applications.

您需要使用 pip install -qU langchain-community 安装 langchain-community 才能使用此集成

本笔记本展示了如何使用与AwaDB相关的功能。

%pip install --upgrade --quiet  awadb
from langchain_community.document_loaders import TextLoader
from langchain_community.vectorstores import AwaDB
from langchain_text_splitters import CharacterTextSplitter
loader = TextLoader("../../how_to/state_of_the_union.txt")
documents = loader.load()
text_splitter = CharacterTextSplitter(chunk_size=100, chunk_overlap=0)
docs = text_splitter.split_documents(documents)
db = AwaDB.from_documents(docs)
query = "What did the president say about Ketanji Brown Jackson"
docs = db.similarity_search(query)
print(docs[0].page_content)
And I did that 4 days ago, when I nominated Circuit Court of Appeals Judge Ketanji Brown Jackson. One of our nation’s top legal minds, who will continue Justice Breyer’s legacy of excellence.

带分数的相似性搜索

返回的距离分数介于 0 到 1 之间。0 表示不相似,1 表示最相似。

docs = db.similarity_search_with_score(query)
print(docs[0])
(Document(page_content='And I did that 4 days ago, when I nominated Circuit Court of Appeals Judge Ketanji Brown Jackson. One of our nation’s top legal minds, who will continue Justice Breyer’s legacy of excellence.', metadata={'source': '../../how_to/state_of_the_union.txt'}), 0.561813814013747)

恢复之前创建并添加数据的表

AwaDB 会自动持久化已添加的文档数据。

如果您能恢复之前创建并添加的表,只需按如下操作即可:

import awadb

awadb_client = awadb.Client()
ret = awadb_client.Load("langchain_awadb")
if ret:
print("awadb load table success")
else:
print("awadb load table failed")

awadb 加载表成功