medicalbot / app.py
mwitiderrick's picture
Upload 4 files
2304b58 verified
import streamlit as st
from rag_dspy import MedicalRAG
st.set_page_config(page_title="Medical QA Bot", page_icon="🩺")
st.title("🩺 Medical QA Bot")
st.write("Ask a medical question and get an answer based on retrieved medical literature.")
if "history" not in st.session_state:
st.session_state["history"] = []
rag_chain = MedicalRAG()
with st.form("chat_form"):
user_question = st.text_input("Enter your medical question:", "")
submitted = st.form_submit_button("Get Answer")
if submitted and user_question.strip():
with st.spinner("Retrieving answer..."):
result = rag_chain.forward(user_question)
answer = result.final_answer
st.session_state["history"].append((user_question, answer))
st.markdown(f"**Answer:** {answer}")
if st.session_state["history"]:
st.markdown("---")
st.markdown("### Conversation History")
for q, a in reversed(st.session_state["history"]):
st.markdown(f"**Q:** {q}")
st.markdown(f"**A:** {a}")