import streamlit as st from utils.api import upload_pdfs def render_upload_panel() -> None: st.markdown("### Documents") files = st.file_uploader( "Upload medical PDFs", type=["pdf"], accept_multiple_files=True, label_visibility="collapsed", help="PDFs are chunked, embedded, and stored in the knowledge base.", ) if files: st.caption(f"{len(files)} file(s) selected") if st.button("Process & Index", disabled=not files, use_container_width=True): with st.spinner(f"Embedding {len(files)} document(s)…"): try: result = upload_pdfs(files) chunks = result.get("chunks_indexed", "?") st.success(f"Indexed {chunks} chunks from {len(files)} file(s)") except Exception as exc: st.error(f"Upload failed: {exc}")