rsrini7 commited on
Commit
b7b55f2
·
1 Parent(s): efd4c34

warning removed and resued streamlit session

Browse files
Files changed (1) hide show
  1. app.py +4 -9
app.py CHANGED
@@ -196,17 +196,13 @@ with st.sidebar:
196
  ).split(' ')[0]
197
 
198
  # --- Automatically fetch API key from .env if available ---
199
- # Extract provider code from model string, e.g. '[or]...' -> 'or'
200
  provider_match = re.match(r'\[(.*?)\]', llm_provider_to_use)
201
  selected_provider = provider_match.group(1) if provider_match else llm_provider_to_use
202
  env_key_name = PROVIDER_ENV_KEYS.get(selected_provider)
203
  default_api_key = os.getenv(env_key_name, "") if env_key_name else ""
204
 
205
- # --- Session state sync workaround for Streamlit widget key issues ---
206
- # Only set st.session_state['api_key_input'] if not already set by user
207
- if default_api_key and (
208
- 'api_key_input' not in st.session_state or not st.session_state['api_key_input']
209
- ):
210
  st.session_state['api_key_input'] = default_api_key
211
 
212
  api_key_token = st.text_input(
@@ -214,10 +210,9 @@ with st.sidebar:
214
  '3: Paste your API key/access token:\n\n'
215
  '*Mandatory* for all providers.'
216
  ),
217
- value=default_api_key,
218
- type='password',
219
  key='api_key_input',
220
- disabled=bool(default_api_key), # disable input if key is present
 
221
  )
222
 
223
  # Additional configs for Azure OpenAI
 
196
  ).split(' ')[0]
197
 
198
  # --- Automatically fetch API key from .env if available ---
 
199
  provider_match = re.match(r'\[(.*?)\]', llm_provider_to_use)
200
  selected_provider = provider_match.group(1) if provider_match else llm_provider_to_use
201
  env_key_name = PROVIDER_ENV_KEYS.get(selected_provider)
202
  default_api_key = os.getenv(env_key_name, "") if env_key_name else ""
203
 
204
+ # Always sync session state to env value if needed (auto-fill on provider change)
205
+ if default_api_key and st.session_state.get('api_key_input', None) != default_api_key:
 
 
 
206
  st.session_state['api_key_input'] = default_api_key
207
 
208
  api_key_token = st.text_input(
 
210
  '3: Paste your API key/access token:\n\n'
211
  '*Mandatory* for all providers.'
212
  ),
 
 
213
  key='api_key_input',
214
+ type='password',
215
+ disabled=bool(default_api_key),
216
  )
217
 
218
  # Additional configs for Azure OpenAI