import os import streamlit as st from knowledge_manager import KnowledgeManager st.set_page_config( page_title="Sirraya xBrain - LangChain QA Assistant", layout="centered", page_icon="🧠", initial_sidebar_state="expanded", ) st.title("🧠 Sirraya xBrain — Intelligent QA Assistant") if "km" not in st.session_state: with st.spinner("Initializing knowledge base and LLM..."): try: st.session_state.km = KnowledgeManager() st.success("✅ Knowledge engine initialized successfully!") st.info(st.session_state.km.get_knowledge_summary()) except Exception as e: st.error(f"❌ Failed to initialize system: {e}") st.session_state.km = None if st.session_state.km is None: st.warning("Knowledge base not loaded or failed to initialize.") st.stop() question = st.text_input("Ask a question about the knowledge base:", "") if question: with st.spinner("Generating answer..."): answer, sources = st.session_state.km.query(question) st.markdown("### Answer:") st.write(answer) if sources: with st.expander("📚 Source documents"): for i, src in enumerate(sources, 1): st.write(f"Source {i}:") st.write(src)