INNER CODE UNIT · Python
sidebar
mfmezger/conversational-agent-langchain · frontend/assistant.py:126
def sidebar() -> None:
"""Create the sidebar for document ingestion."""
with st.sidebar:
st.header("Document Ingestion")
collection_name = st.text_input("Collection Name", value="default")
file_ending = st.selectbox("Document Type", options=[".pdf", ".txt"])
uploaded_files = st.file_uploader("Choose files", type=["pdf"] if file_ending == ".pdf" else ["txt"], accept_multiple_files=True)
if st.button("Upload & Embed"):
if uploaded_files:
with st.spinner("Uploading and embedding documents..."):
try:
files = [("files", (file.name, file, file.type)) for file in uploaded_files]
# Run async upload
response = asyncio.run(client.upload_documents(files=files, collection_name=collection_name, file_ending=file_ending))
response.raise_for_status()