Langchain-Chatchat
/
webui.py
64 строки · 1.8 Кб
1import streamlit as st2from webui_pages.utils import *3from streamlit_option_menu import option_menu4from webui_pages.dialogue.dialogue import dialogue_page, chat_box5from webui_pages.knowledge_base.knowledge_base import knowledge_base_page6import os7import sys8from configs import VERSION9from server.utils import api_address10
11
12api = ApiRequest(base_url=api_address())13
14if __name__ == "__main__":15is_lite = "lite" in sys.argv16
17st.set_page_config(18"Langchain-Chatchat WebUI",19os.path.join("img", "chatchat_icon_blue_square_v2.png"),20initial_sidebar_state="expanded",21menu_items={22'Get Help': 'https://github.com/chatchat-space/Langchain-Chatchat',23'Report a bug': "https://github.com/chatchat-space/Langchain-Chatchat/issues",24'About': f"""欢迎使用 Langchain-Chatchat WebUI {VERSION}!"""25}26)27
28pages = {29"对话": {30"icon": "chat",31"func": dialogue_page,32},33"知识库管理": {34"icon": "hdd-stack",35"func": knowledge_base_page,36},37}38
39with st.sidebar:40st.image(41os.path.join(42"img",43"logo-long-chatchat-trans-v2.png"44),45use_column_width=True46)47st.caption(48f"""<p align="right">当前版本:{VERSION}</p>""",49unsafe_allow_html=True,50)51options = list(pages)52icons = [x["icon"] for x in pages.values()]53
54default_index = 055selected_page = option_menu(56"",57options=options,58icons=icons,59# menu_icon="chat-quote",60default_index=default_index,61)62
63if selected_page in pages:64pages[selected_page]["func"](api=api, is_lite=is_lite)65