2023-11-15 00:28:51 +00:00
|
|
|
from dotenv import load_dotenv, find_dotenv
|
2023-11-19 00:47:12 +00:00
|
|
|
from pymongo import MongoClient
|
2023-11-21 00:22:43 +00:00
|
|
|
from constants import ERROR_MESSAGES
|
2023-11-19 00:47:12 +00:00
|
|
|
|
|
|
|
from secrets import token_bytes
|
|
|
|
from base64 import b64encode
|
|
|
|
import os
|
2023-11-15 00:28:51 +00:00
|
|
|
|
2023-12-05 07:17:51 +00:00
|
|
|
load_dotenv(find_dotenv("../.env"))
|
2023-11-15 00:28:51 +00:00
|
|
|
|
2023-11-19 00:47:12 +00:00
|
|
|
####################################
|
|
|
|
# ENV (dev,test,prod)
|
|
|
|
####################################
|
|
|
|
|
2023-11-15 00:28:51 +00:00
|
|
|
ENV = os.environ.get("ENV", "dev")
|
|
|
|
|
2023-11-19 00:47:12 +00:00
|
|
|
####################################
|
|
|
|
# OLLAMA_API_BASE_URL
|
|
|
|
####################################
|
|
|
|
|
2023-11-15 00:28:51 +00:00
|
|
|
OLLAMA_API_BASE_URL = os.environ.get(
|
|
|
|
"OLLAMA_API_BASE_URL", "http://localhost:11434/api"
|
|
|
|
)
|
|
|
|
|
|
|
|
if ENV == "prod":
|
|
|
|
if OLLAMA_API_BASE_URL == "/ollama/api":
|
|
|
|
OLLAMA_API_BASE_URL = "http://host.docker.internal:11434/api"
|
2023-11-19 00:47:12 +00:00
|
|
|
|
|
|
|
####################################
|
2023-11-19 08:41:29 +00:00
|
|
|
# WEBUI_VERSION
|
2023-11-19 00:47:12 +00:00
|
|
|
####################################
|
|
|
|
|
2023-12-14 23:39:46 +00:00
|
|
|
WEBUI_VERSION = os.environ.get("WEBUI_VERSION", "v1.0.0-alpha.33")
|
2023-11-19 00:47:12 +00:00
|
|
|
|
|
|
|
####################################
|
2023-11-19 08:41:29 +00:00
|
|
|
# WEBUI_AUTH
|
2023-11-19 00:47:12 +00:00
|
|
|
####################################
|
|
|
|
|
2023-11-21 00:22:43 +00:00
|
|
|
|
2023-12-05 07:17:51 +00:00
|
|
|
WEBUI_AUTH = True if os.environ.get("WEBUI_AUTH", "FALSE") == "TRUE" else False
|
2023-11-19 00:47:12 +00:00
|
|
|
|
|
|
|
|
2023-11-21 00:22:43 +00:00
|
|
|
####################################
|
|
|
|
# WEBUI_DB
|
|
|
|
####################################
|
|
|
|
|
|
|
|
|
|
|
|
WEBUI_DB_URL = os.environ.get("WEBUI_DB_URL", "mongodb://root:root@localhost:27017/")
|
2023-11-19 00:47:12 +00:00
|
|
|
|
2023-11-21 00:22:43 +00:00
|
|
|
if WEBUI_AUTH and WEBUI_DB_URL == "":
|
|
|
|
raise ValueError(ERROR_MESSAGES.ENV_VAR_NOT_FOUND)
|
2023-11-19 00:47:12 +00:00
|
|
|
|
|
|
|
|
2023-11-21 00:22:43 +00:00
|
|
|
DB_CLIENT = MongoClient(f"{WEBUI_DB_URL}?authSource=admin")
|
|
|
|
DB = DB_CLIENT["ollama-webui"]
|
|
|
|
|
|
|
|
|
|
|
|
####################################
|
|
|
|
# WEBUI_JWT_SECRET_KEY
|
|
|
|
####################################
|
|
|
|
|
|
|
|
WEBUI_JWT_SECRET_KEY = os.environ.get("WEBUI_JWT_SECRET_KEY", "t0p-s3cr3t")
|
2023-11-19 00:47:12 +00:00
|
|
|
|
2023-11-21 00:22:43 +00:00
|
|
|
if WEBUI_AUTH and WEBUI_JWT_SECRET_KEY == "":
|
|
|
|
raise ValueError(ERROR_MESSAGES.ENV_VAR_NOT_FOUND)
|