类功能
功能描述
提供基于Milvus的知识数据库,主要存储切分后的chunk信息。
函数原型
from mx_rag.storage.document_store import MilvusDocstore MilvusDocstore(client, collection_name, enable_bm25, bm25_k1, bm25_b, auto_flush)
输入参数说明
调用示例
from pymilvus import MilvusClient from mx_rag.storage.document_store import MxDocument, MilvusDocstore client = MilvusClient("https://x.x.x.x:port", user="xxx", password=getpass.getpass(), token="xxx") chunk_store = MilvusDocstore(client) text = ["示例", "文本"] metadata_list = [{} for _ in text] doc = [MxDocument(page_content=t, metadata=m, document_name="1.docx") for t, m in zip(text, metadata_list)] document_id = 1 chunk_store.add(doc, document_id) ids = chunk_store.get_all_chunk_id() document = chunk_store.search(ids[0]) print(document.page_content) print(chunk_store.full_text_search("文本", filter_dict={"document_id": [0]})) print(chunk_store.full_text_search("文本", filter_dict={"document_id": [document_id]})) chunk_store.update([0, 1], ["text1", "text2"]) print(chunk_store.delete(document_id)) chunk_store.search_by_document_id(document_id)
父主题: MilvusDocstore