MCPcopy Create free account
hub / github.com/danielmiessler/Fabric / load_configuration

Function load_configuration

scripts/python_ui/streamlit.py:214–268  ·  view source on GitHub ↗

Load environment variables and initialize configuration.

()

Source from the content-addressed store, hash-verified

212
213
214def load_configuration() -> bool:
215 """Load environment variables and initialize configuration."""
216 logger.info("Loading configuration")
217 try:
218 env_path = os.path.expanduser("~/.config/fabric/.env")
219 logger.debug(f"Looking for .env file at: {env_path}")
220
221 if not os.path.exists(env_path):
222 logger.error(f"Configuration file not found at {env_path}")
223 st.error(f"Configuration file not found at {env_path}")
224 return False
225
226 load_dotenv(dotenv_path=env_path)
227 logger.debug("Environment variables loaded")
228
229 with st.spinner("Loading providers and models..."):
230 providers = get_configured_providers()
231
232 if not providers:
233 logger.error("No providers configured")
234 st.error("No providers configured. Please run 'fabric --setup' first.")
235 return False
236
237 default_vendor = os.getenv("DEFAULT_VENDOR")
238 default_model = os.getenv("DEFAULT_MODEL")
239 context_length = os.getenv("DEFAULT_MODEL_CONTEXT_LENGTH", "2048")
240
241 logger.debug(
242 f"Default configuration - Vendor: {default_vendor}, Model: {default_model}"
243 )
244
245 if not default_vendor or default_vendor not in providers:
246 default_vendor = next(iter(providers))
247 default_model = (
248 providers[default_vendor][0] if providers[default_vendor] else None
249 )
250 logger.info(
251 f"Using fallback configuration - Vendor: {default_vendor}, Model: {default_model}"
252 )
253
254 st.session_state.config = {
255 "vendor": default_vendor,
256 "model": default_model,
257 "context_length": context_length,
258 }
259 st.session_state.vendors = providers
260 st.session_state.config_loaded = True
261
262 logger.info("Configuration loaded successfully")
263 return True
264
265 except Exception as e:
266 logger.error(f"Configuration error: {str(e)}", exc_info=True)
267 st.error(f"Configuration error: {str(e)}")
268 return False
269
270
271def load_models_and_providers() -> None:

Callers 1

mainFunction · 0.85

Calls 1

get_configured_providersFunction · 0.85

Tested by

no test coverage detected