CoolFace
Apppublic

MAkmalC/AI_Power_distribution_risk_analysis_App_v2

sourceHugging Facemitupdated 7mo agoView on Hugging Face
0likes
app.py45 linesDownload Raw Back to root
1import streamlit as st2from rag.document_loader import load_pdf_documents3from rag.vector_store import build_vector_store4from rag.query_engine import build_rag_chain5 6st.set_page_config(page_title="PRIS – IEEE Risk Intelligence", layout="wide")7 8st.title("⚡ PRIS – Power Risk Intelligence System")9 10@st.cache_resource11def initialize_rag():12    docs = load_pdf_documents("knowledge_base/standards/C57.91-1995.pdf")13    vector_store = build_vector_store(docs)14    rag_chain = build_rag_chain(vector_store)15    return rag_chain16 17rag = initialize_rag()18 19user_query = st.text_input("Ask a question based on IEEE standards:")20 21if user_query:22    response = rag(user_query)23    st.subheader("🤖 AI Assistant (IEEE-aware)")24 25    if not st.session_state.get("kb_loaded", False):26        st.warning("Upload IEEE PDFs and build the knowledge base first.")27    else:28        # Persistent input29        user_query = st.text_input(30            "Enter your question",31            key="user_query",32            placeholder="e.g. What is the IEEE C57.91 hot-spot temperature limit?",33        )34 35        # Output placeholder (ALWAYS visible)36        response_container = st.empty()37 38        if user_query:39            with st.spinner("Thinking..."):40                try:41                    answer = st.session_state.rag_engine.ask(user_query)42                    response_container.markdown("### ✅ Answer")43                    response_container.write(answer)44                except Exception as e:45                    response_container.error(f"Error: {e}")