config.py 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. from dotenv import load_dotenv, find_dotenv
  2. from pymongo import MongoClient
  3. from constants import ERROR_MESSAGES
  4. from secrets import token_bytes
  5. from base64 import b64encode
  6. import os
  7. load_dotenv(find_dotenv("../.env"))
  8. ####################################
  9. # ENV (dev,test,prod)
  10. ####################################
  11. ENV = os.environ.get("ENV", "dev")
  12. ####################################
  13. # OLLAMA_API_BASE_URL
  14. ####################################
  15. OLLAMA_API_BASE_URL = os.environ.get(
  16. "OLLAMA_API_BASE_URL", "http://localhost:11434/api"
  17. )
  18. if ENV == "prod":
  19. if OLLAMA_API_BASE_URL == "/ollama/api":
  20. OLLAMA_API_BASE_URL = "http://host.docker.internal:11434/api"
  21. ####################################
  22. # WEBUI_VERSION
  23. ####################################
  24. WEBUI_VERSION = os.environ.get("WEBUI_VERSION", "v1.0.0-alpha.33")
  25. ####################################
  26. # WEBUI_AUTH
  27. ####################################
  28. WEBUI_AUTH = True if os.environ.get("WEBUI_AUTH", "FALSE") == "TRUE" else False
  29. ####################################
  30. # WEBUI_DB
  31. ####################################
  32. WEBUI_DB_URL = os.environ.get("WEBUI_DB_URL", "mongodb://root:root@localhost:27017/")
  33. if WEBUI_AUTH and WEBUI_DB_URL == "":
  34. raise ValueError(ERROR_MESSAGES.ENV_VAR_NOT_FOUND)
  35. DB_CLIENT = MongoClient(f"{WEBUI_DB_URL}?authSource=admin")
  36. DB = DB_CLIENT["ollama-webui"]
  37. ####################################
  38. # WEBUI_JWT_SECRET_KEY
  39. ####################################
  40. WEBUI_JWT_SECRET_KEY = os.environ.get("WEBUI_JWT_SECRET_KEY", "t0p-s3cr3t")
  41. if WEBUI_AUTH and WEBUI_JWT_SECRET_KEY == "":
  42. raise ValueError(ERROR_MESSAGES.ENV_VAR_NOT_FOUND)