@@ -177,7 +177,14 @@ def main():
177177 st .session_state ["openai" ]["model_name" ] = st .selectbox ("Model name" , model_options_openai , index = model_options_openai .index (st .session_state ["openai" ]["model_name" ]))
178178 st .session_state ["openai" ]["temperature" ] = st .slider ("Temperature" , min_value = 0.0 , max_value = 2.0 , value = st .session_state ["openai" ]["temperature" ], step = 0.1 )
179179 st .session_state ["openai" ]["max_tokens" ] = st .slider ("Maximum Tokens" , min_value = 1 , max_value = 4096 , value = st .session_state ["openai" ]["max_tokens" ], step = 1 )
180- api_key = st .text_input ("API Key" , value = "" , key = "api_key" , type = "password" )
180+
181+ # Check if the API key is in App secrets.
182+ if st .secrets ["OPENAI_API_KEY" ]:
183+ api_key = st .secrets ["OPENAI_API_KEY" ]
184+ logger .info ("Gemini AI API key is initialized from App secrets." )
185+ else :
186+ api_key = st .text_input ("API Key" , value = "" , key = "api_key" , type = "password" )
187+
181188 st .session_state .proxy_api = st .text_input ("Proxy API" , value = "" ,placeholder = "http://myproxy-api.replit.co/" )
182189 st .session_state .openai_langchain = OpenAILangChain (st .session_state .code_language , st .session_state ["openai" ]["temperature" ], st .session_state ["openai" ]["max_tokens" ], st .session_state ["openai" ]["model_name" ], api_key )
183190 st .toast ("Open AI initialized successfully." , icon = "✅" )
@@ -257,8 +264,14 @@ def main():
257264 st .session_state ["palm" ]["model_name" ] = st .selectbox ("Model name" , model_options_palm , index = model_options_palm .index (st .session_state ["palm" ]["model_name" ]))
258265 st .session_state ["palm" ]["temperature" ] = st .slider ("Temperature" , min_value = 0.0 , max_value = 1.0 , value = st .session_state ["palm" ]["temperature" ], step = 0.1 )
259266 st .session_state ["palm" ]["max_tokens" ] = st .slider ("Maximum Tokens" , min_value = 1 , max_value = 8196 , value = st .session_state ["palm" ]["max_tokens" ], step = 1 )
260- # Add password option for getting API key
261- api_key = st .text_input ("API Key" , type = "password" )
267+
268+ # Check if the API key is in App secrets.
269+ if st .secrets ["PALM_API_KEY" ]:
270+ api_key = st .secrets ["PALM_API_KEY" ]
271+ logger .info ("Gemini AI API key is initialized from App secrets." )
272+ else :
273+ # Add password option for getting API key
274+ api_key = st .text_input ("API Key" , type = "password" )
262275 try :
263276 st .session_state .palm_langchain = PalmAI (api_key , model = st .session_state ["palm" ]["model_name" ], temperature = st .session_state ["palm" ]["temperature" ], max_output_tokens = st .session_state ["palm" ]["max_tokens" ])
264277 except Exception as exception :
@@ -278,8 +291,15 @@ def main():
278291 st .session_state ["gemini" ]["model_name" ] = st .selectbox ("Model name" , model_options_gemini , index = model_options_gemini .index (st .session_state ["gemini" ]["model_name" ]))
279292 st .session_state ["gemini" ]["temperature" ] = st .slider ("Temperature" , min_value = 0.0 , max_value = 1.0 , value = st .session_state ["gemini" ]["temperature" ], step = 0.1 )
280293 st .session_state ["gemini" ]["max_tokens" ] = st .slider ("Maximum Tokens" , min_value = 1 , max_value = 8196 , value = st .session_state ["gemini" ]["max_tokens" ], step = 1 )
281- # Add password option for getting API key
282- api_key = st .text_input ("API Key" , type = "password" )
294+
295+ # Check if the API key is in App secrets.
296+ if st .secrets ["GEMINI_API_KEY" ]:
297+ api_key = st .secrets ["GEMINI_API_KEY" ]
298+ logger .info ("Gemini AI API key is initialized from App secrets." )
299+ else :
300+ # Add password option for getting API key
301+ api_key = st .text_input ("API Key" , type = "password" )
302+ logger .info ("Gemini AI API key is initialized from user input." )
283303 try :
284304 st .session_state .gemini_langchain = GeminiAI (api_key , model = st .session_state ["gemini" ]["model_name" ], temperature = st .session_state ["gemini" ]["temperature" ], max_output_tokens = st .session_state ["gemini" ]["max_tokens" ])
285305 except Exception as exception :
0 commit comments