--- title: "Environment Variables" description: "Configure 01OS" --- ## ALL_LOCAL Default:`False` If `False`, we'll use OpenAI's services else we use whisper.cpp and piper local models ## WHISPER_MODEL_NAME Default: `ggml-tiny.en.bin` ## WHISPER_MODEL_URL Default: `https://huggingface.co/ggerganov/whisper.cpp/resolve/main/` ## TEACH_MODE Default: `False` Teach mode is a mode that allows you to teach 01OS new things. Disclaimer: This is a Developer Preview. ## OPENAI_API_KEY Set your OpenAI API key ## PIPER_VOICE_URL Default: `https://huggingface.co/rhasspy/piper-voices/resolve/main/en/en_US/lessac/medium/` ## PIPER_VOICE_NAME Default: `en_US-lessac-medium.onnx` For TTS, we use the `en_US-lessac-medium` voice model by default. Please change the voice URL and voice name if you wish to use another voice ## NGROK_AUTHTOKEN Set to your [Ngrok auth token](https://dashboard.ngrok.com/get-started/your-authtoken) ## SERVER_URL Default: `ws://0.0.0.0:8000/` ## SERVER_START Default:`True` This is where we'll serve the server ## CLIENT_START Default: `True` This is where the client expects the server to be. ## CLIENT_TYPE Default: `auto` Can explicitly set the client type (macos, rpi) ## CODE_RUNNER Default: `server` Control where various operations happen. Can be `client` or `server`. ## TTS_RUNNER Default: `server` If client, audio will be sent over websocket. ## STT_RUNNER Default: `client` If server, audio will be sent over websocket. ## SERVER_EXPOSE_PUBLICALLY Default: `False` Expose the server publically and display that URL. ## CAMERA_ENABLED Default: `False` ## CAMERA_DEVICE_INDEX Default: `0` Camera device selection (Typically 0 for built-in, 1 for USB) ## CAMERA_WARMUP_SECONDS Default: `0.4` Camera warmup time is a workaround for some cameras that don't immediately return a properly exposed picture when they are first turned on ## LOG_LEVEL Default: INFO Can be `INFO` or `DEBUG`