35 lines
872 B
Python
35 lines
872 B
Python
"""
|
|
streamlit web 网页上传
|
|
"""
|
|
import time
|
|
|
|
import streamlit as st
|
|
from knowledge_base import KnowledgeBaseService
|
|
|
|
# 标题
|
|
st.title("知识库更新服务")
|
|
|
|
# file_uploader
|
|
uploader_file = st.file_uploader(
|
|
"请上传txt文件",
|
|
type="txt",
|
|
accept_multiple_files=False
|
|
)
|
|
|
|
if "service" not in st.session_state:
|
|
st.session_state["service"] = KnowledgeBaseService()
|
|
|
|
if uploader_file is not None:
|
|
file_name = uploader_file.name
|
|
file_type = uploader_file.type
|
|
file_size = uploader_file.size / 1024
|
|
|
|
st.subheader(f"文件名:{file_name}")
|
|
st.write(f"格式: {file_type}, 大小: {file_size:.2f}KB")
|
|
# bytes
|
|
text = uploader_file.getvalue().decode('utf-8')
|
|
|
|
with st.spinner("载入知识库中..."):
|
|
time.sleep(1)
|
|
result = st.session_state["service"].upload_by_str(text, file_name)
|
|
st.write(result) |