Haseeb-001 commited on
Commit
48823b1
·
verified ·
1 Parent(s): e7ae237

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +35 -16
app.py CHANGED
@@ -2,21 +2,41 @@ from groq import Groq
2
  import streamlit as st
3
  import re
4
  from datetime import datetime
5
- # import os
6
  from typing import Generator, List, Tuple, Optional
7
  import logging
8
- # from dotenv import load_dotenv
9
 
10
  # --- Load Environment Variables ---
11
- # load_dotenv()
12
 
13
  # --- Logging Configuration ---
14
  logging.basicConfig(level=logging.INFO)
15
  logger = logging.getLogger(__name__)
16
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
17
  # --- Constants ---
18
  MODEL_CONFIG = {
19
- "model": "meta-llama/Llama-Guard-4-12B",
20
  "temperature": 0.5,
21
  "max_completion_tokens": 1024,
22
  "stream": True,
@@ -186,8 +206,17 @@ def main() -> None:
186
  try:
187
  setup_page()
188
  initialize_session_state()
 
 
 
 
 
 
 
 
 
 
189
  render_sidebar()
190
-
191
  st.title("🧠 DoctorX")
192
  st.caption("Preliminary health guidance - Always consult healthcare professionals")
193
 
@@ -206,16 +235,6 @@ def main() -> None:
206
  logger.error(f"Application error: {str(e)}")
207
  st.error("An unexpected error occurred. Please refresh the page and try again.")
208
 
209
- # --- LLM Initialization ---
210
- try:
211
- # client = Groq(api_key=os.getenv("GROQ_API_KEY"))
212
- client = Groq(api_key=GROQ_API_KEY)
213
- if not client:
214
- raise ValueError("Failed to initialize Groq client. Please check your API key.")
215
- except Exception as e:
216
- logger.error(f"Error initializing Groq client: {str(e)}")
217
- st.error("Failed to initialize AI model. Please check your API key.")
218
- st.stop()
219
-
220
  if __name__ == "__main__":
221
  main()
 
2
  import streamlit as st
3
  import re
4
  from datetime import datetime
5
+ import os
6
  from typing import Generator, List, Tuple, Optional
7
  import logging
8
+ from dotenv import load_dotenv
9
 
10
  # --- Load Environment Variables ---
11
+ load_dotenv()
12
 
13
  # --- Logging Configuration ---
14
  logging.basicConfig(level=logging.INFO)
15
  logger = logging.getLogger(__name__)
16
 
17
+ # --- API Key Management ---
18
+ def get_api_key() -> Optional[str]:
19
+ """Get API key from environment or user input."""
20
+ api_key = os.getenv("GROQ_API_KEY")
21
+
22
+ if not api_key:
23
+ st.sidebar.markdown("## 🔑 API Configuration")
24
+ api_key = st.sidebar.text_input(
25
+ "Enter your Groq API Key:",
26
+ type="password",
27
+ help="Get your API key from https://console.groq.com",
28
+ key="groq_api_key"
29
+ )
30
+ if api_key:
31
+ st.sidebar.success("API Key set successfully!")
32
+ else:
33
+ st.sidebar.warning("Please enter your Groq API Key to continue")
34
+
35
+ return api_key
36
+
37
  # --- Constants ---
38
  MODEL_CONFIG = {
39
+ "model": "meta-llama/llama-4-scout-17b-16e-instruct",
40
  "temperature": 0.5,
41
  "max_completion_tokens": 1024,
42
  "stream": True,
 
206
  try:
207
  setup_page()
208
  initialize_session_state()
209
+
210
+ # Get API key
211
+ api_key = get_api_key()
212
+ if not api_key:
213
+ st.stop()
214
+
215
+ # Initialize Groq client
216
+ global client
217
+ client = Groq(api_key=api_key)
218
+
219
  render_sidebar()
 
220
  st.title("🧠 DoctorX")
221
  st.caption("Preliminary health guidance - Always consult healthcare professionals")
222
 
 
235
  logger.error(f"Application error: {str(e)}")
236
  st.error("An unexpected error occurred. Please refresh the page and try again.")
237
 
238
+ # Remove the global client initialization
 
 
 
 
 
 
 
 
 
 
239
  if __name__ == "__main__":
240
  main()