laichai commited on
Commit
a4bd0c0
·
verified ·
1 Parent(s): 195826f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +27 -17
app.py CHANGED
@@ -571,6 +571,9 @@ Example: "Here's the setup: [IMAGE: double slit experiment diagram]"
571
  # -----------------------------------------------------------------------------
572
  # 6. SIDEBAR CONFIGURATION
573
  # -----------------------------------------------------------------------------
 
 
 
574
  with st.sidebar:
575
  # Header
576
  col1, col2 = st.columns([1, 3])
@@ -606,7 +609,7 @@ with st.sidebar:
606
 
607
  enable_voice = st.toggle("🗣️ Text-to-Speech", value=False)
608
 
609
- #st.divider()
610
 
611
  # Image Analysis Settings
612
  st.header("🖼️ Image Analysis")
@@ -618,39 +621,46 @@ with st.sidebar:
618
  help="Choose image analysis service"
619
  )
620
 
621
- # Initialize variables
622
  hf_token = None
623
  together_key = None
624
  openrouter_key = None
625
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
626
  if image_analysis_mode == "Hugging Face":
627
- if hasattr(st, 'secrets') and "HF_TOKEN" in st.secrets:
628
- hf_token = st.secrets["HF_TOKEN"]
629
- st.success("✓ Hugging Face Token configured")
630
- elif "HF_TOKEN" in os.environ:
631
- hf_token = os.environ["HF_TOKEN"]
632
  st.success("✓ Hugging Face Token configured")
633
  else:
634
  st.warning("Add HF_TOKEN to secrets")
635
  st.info("Get token: huggingface.co/settings/tokens")
636
 
637
  elif image_analysis_mode == "Together.ai":
638
- if hasattr(st, 'secrets') and "TOGETHER_API_KEY" in st.secrets:
639
- together_key = st.secrets["TOGETHER_API_KEY"]
640
- st.success("✓ Together.ai API configured")
641
- elif "TOGETHER_API_KEY" in os.environ:
642
- together_key = os.environ["TOGETHER_API_KEY"]
643
  st.success("✓ Together.ai API configured")
644
  else:
645
  st.warning("Add TOGETHER_API_KEY to secrets")
646
  st.info("Get key: together.ai (free credits available)")
647
 
648
  elif image_analysis_mode == "OpenRouter":
649
- if hasattr(st, 'secrets') and "OPENROUTER_API_KEY" in st.secrets:
650
- openrouter_key = st.secrets["OPENROUTER_API_KEY"]
651
- st.success("✓ OpenRouter API configured")
652
- elif "OPENROUTER_API_KEY" in os.environ:
653
- openrouter_key = os.environ["OPENROUTER_API_KEY"]
654
  st.success("✓ OpenRouter API configured")
655
  else:
656
  st.warning("Add OPENROUTER_API_KEY to secrets")
 
571
  # -----------------------------------------------------------------------------
572
  # 6. SIDEBAR CONFIGURATION
573
  # -----------------------------------------------------------------------------
574
+ # -----------------------------------------------------------------------------
575
+ # 6. SIDEBAR CONFIGURATION
576
+ # -----------------------------------------------------------------------------
577
  with st.sidebar:
578
  # Header
579
  col1, col2 = st.columns([1, 3])
 
609
 
610
  enable_voice = st.toggle("🗣️ Text-to-Speech", value=False)
611
 
612
+ st.divider()
613
 
614
  # Image Analysis Settings
615
  st.header("🖼️ Image Analysis")
 
621
  help="Choose image analysis service"
622
  )
623
 
624
+ # Initialize variables - FIXED SECRETS CHECKING
625
  hf_token = None
626
  together_key = None
627
  openrouter_key = None
628
 
629
+ # Safe secrets checking function
630
+ def get_secret(key, default=None):
631
+ """Safely get a secret from st.secrets or environment."""
632
+ try:
633
+ # First try st.secrets (Hugging Face Spaces)
634
+ if hasattr(st, 'secrets'):
635
+ # Check if secrets is loaded and has the key
636
+ secrets_dict = dict(st.secrets)
637
+ if key in secrets_dict:
638
+ return secrets_dict[key]
639
+ except:
640
+ pass
641
+
642
+ # Fallback to environment variables
643
+ return os.environ.get(key, default)
644
+
645
  if image_analysis_mode == "Hugging Face":
646
+ hf_token = get_secret("HF_TOKEN")
647
+ if hf_token:
 
 
 
648
  st.success("✓ Hugging Face Token configured")
649
  else:
650
  st.warning("Add HF_TOKEN to secrets")
651
  st.info("Get token: huggingface.co/settings/tokens")
652
 
653
  elif image_analysis_mode == "Together.ai":
654
+ together_key = get_secret("TOGETHER_API_KEY")
655
+ if together_key:
 
 
 
656
  st.success("✓ Together.ai API configured")
657
  else:
658
  st.warning("Add TOGETHER_API_KEY to secrets")
659
  st.info("Get key: together.ai (free credits available)")
660
 
661
  elif image_analysis_mode == "OpenRouter":
662
+ openrouter_key = get_secret("OPENROUTER_API_KEY")
663
+ if openrouter_key:
 
 
 
664
  st.success("✓ OpenRouter API configured")
665
  else:
666
  st.warning("Add OPENROUTER_API_KEY to secrets")