automatically init vector store info to database when run api.py & webui.py
This commit is contained in:
parent
f5024245a7
commit
9ed91f0e8a
|
|
@ -104,6 +104,11 @@ def create_app():
|
||||||
tags=["Knowledge Base Management"],
|
tags=["Knowledge Base Management"],
|
||||||
summary="根据content中文档重建向量库,流式输出处理进度。"
|
summary="根据content中文档重建向量库,流式输出处理进度。"
|
||||||
)(recreate_vector_store)
|
)(recreate_vector_store)
|
||||||
|
|
||||||
|
# init local vector store info to database
|
||||||
|
from webui_pages.utils import init_vs_database
|
||||||
|
init_vs_database()
|
||||||
|
|
||||||
return app
|
return app
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
27
webui.py
27
webui.py
|
|
@ -13,34 +13,15 @@ from webui_pages import *
|
||||||
api = ApiRequest(base_url="http://127.0.0.1:7861", no_remote_api=False)
|
api = ApiRequest(base_url="http://127.0.0.1:7861", no_remote_api=False)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
st.set_page_config("langchain-chatglm WebUI", layout="wide")
|
# init local vector store info to database
|
||||||
|
init_vs_database()
|
||||||
|
|
||||||
|
st.set_page_config("langchain-chatglm WebUI")
|
||||||
|
|
||||||
if not chat_box.chat_inited:
|
if not chat_box.chat_inited:
|
||||||
st.toast(f"欢迎使用 [`Langchain-Chatglm`](https://github.com/chatchat-space/langchain-chatglm) ! \n\n当前使用模型`{LLM_MODEL}`, 您可以开始提问了.")
|
st.toast(f"欢迎使用 [`Langchain-Chatglm`](https://github.com/chatchat-space/langchain-chatglm) ! \n\n当前使用模型`{LLM_MODEL}`, 您可以开始提问了.")
|
||||||
st.toast(" ")
|
st.toast(" ")
|
||||||
|
|
||||||
# pages = {"对话1": {"icon": "chat",
|
|
||||||
# "func": dialogue_page,
|
|
||||||
# },
|
|
||||||
# "对话2": {"icon": "chat",
|
|
||||||
# "func": dialogue_page,
|
|
||||||
# },
|
|
||||||
# "对话3": {"icon": "chat",
|
|
||||||
# "func": dialogue_page,
|
|
||||||
# },
|
|
||||||
# "新建对话": {"icon": "plus-circle",
|
|
||||||
# "func": dialogue_page,
|
|
||||||
# },
|
|
||||||
# "---": {"icon": None,
|
|
||||||
# "func": None},
|
|
||||||
# "知识库管理": {"icon": "database-fill-gear",
|
|
||||||
# "func": knowledge_base_page,
|
|
||||||
# },
|
|
||||||
# "模型配置": {"icon": "gear",
|
|
||||||
# "func": model_config_page,
|
|
||||||
# }
|
|
||||||
# }
|
|
||||||
|
|
||||||
pages = {"对话": {"icon": "chat",
|
pages = {"对话": {"icon": "chat",
|
||||||
"func": dialogue_page,
|
"func": dialogue_page,
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -614,11 +614,38 @@ def get_kb_doc_details(api: ApiRequest, kb: str) -> pd.DataFrame:
|
||||||
return df
|
return df
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
def init_vs_database(recreate_vs: bool = False):
|
||||||
|
'''
|
||||||
|
init local vector store info to database
|
||||||
|
'''
|
||||||
from server.db.base import Base, engine
|
from server.db.base import Base, engine
|
||||||
|
from server.db.repository.knowledge_base_repository import add_kb_to_db, kb_exists
|
||||||
|
from server.db.repository.knowledge_file_repository import add_doc_to_db
|
||||||
|
from server.knowledge_base.utils import KnowledgeFile
|
||||||
|
|
||||||
Base.metadata.create_all(bind=engine)
|
Base.metadata.create_all(bind=engine)
|
||||||
|
|
||||||
|
if recreate_vs:
|
||||||
|
api = ApiRequest(no_remote_api=True)
|
||||||
|
for kb in list_kbs_from_folder():
|
||||||
|
for t in api.recreate_vector_store(kb):
|
||||||
|
print(t)
|
||||||
|
else: # add vs info to db only
|
||||||
|
for kb in list_kbs_from_folder():
|
||||||
|
if not kb_exists(kb):
|
||||||
|
add_kb_to_db(kb, "faiss", EMBEDDING_MODEL)
|
||||||
|
for doc in list_docs_from_folder(kb):
|
||||||
|
try:
|
||||||
|
kb_file = KnowledgeFile(doc, kb)
|
||||||
|
add_doc_to_db(kb_file)
|
||||||
|
except Exception as e:
|
||||||
|
print(e)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
api = ApiRequest(no_remote_api=True)
|
api = ApiRequest(no_remote_api=True)
|
||||||
|
# init vector store database
|
||||||
|
init_vs_database()
|
||||||
|
|
||||||
# print(api.chat_fastchat(
|
# print(api.chat_fastchat(
|
||||||
# messages=[{"role": "user", "content": "hello"}]
|
# messages=[{"role": "user", "content": "hello"}]
|
||||||
|
|
@ -637,8 +664,3 @@ if __name__ == "__main__":
|
||||||
# print(t)
|
# print(t)
|
||||||
|
|
||||||
# print(api.list_knowledge_bases())
|
# print(api.list_knowledge_bases())
|
||||||
|
|
||||||
# recreate all vector store
|
|
||||||
for kb in list_kbs_from_folder():
|
|
||||||
for t in api.recreate_vector_store(kb):
|
|
||||||
print(t)
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue