Spaces:
Runtime error
Runtime error
| """Utilities for Streamlit UI components and helpers.""" | |
| from pathlib import Path | |
| import streamlit as st | |
| def initialize_session_state() -> None: | |
| """Initialize Streamlit session state with default values.""" | |
| if "user_profile" not in st.session_state: | |
| st.session_state.user_profile = None | |
| if "config" not in st.session_state: | |
| # Load all available options as defaults | |
| root = Path(__file__).resolve().parents[2] # Go up to project root | |
| cancer_dir = root / "configs" / "knowledge_base" / "cancer_modules" | |
| all_cancer_modules = sorted([p.stem for p in cancer_dir.glob("*.yaml")]) | |
| protocol_dir = root / "configs" / "knowledge_base" / "dx_protocols" | |
| all_dx_protocols = sorted([p.stem for p in protocol_dir.glob("*.yaml")]) | |
| model_dir = root / "configs" / "model" | |
| model_options = sorted([p.stem for p in model_dir.glob("*.yaml")]) | |
| if model_options: | |
| default_model = ( | |
| "gemini_2.5_pro" | |
| if ("gemini_2.5_pro" in model_options) | |
| else model_options[0] | |
| ) | |
| else: | |
| default_model = None | |
| st.session_state.config = { | |
| "model": default_model, | |
| "cancer_modules": all_cancer_modules, | |
| "dx_protocols": all_dx_protocols, | |
| } | |
| if "assessment" not in st.session_state: | |
| st.session_state.assessment = None | |
| if "conversation_manager" not in st.session_state: | |
| st.session_state.conversation_manager = None | |