from environs import Env env = Env() env.read_env() DEBUG = env.bool("DEBUG", default=True) TIDB_DATABASE = env.str("TIDB_DATABASE", default="test") TIDB_HOST = env.str("TIDB_HOST", default="localhost") TIDB_USER = env.str("TIDB_USER", default="root") TIDB_PASSWORD = env.str("TIDB_PASSWORD", default="") TIDB_PORT = env.int("TIDB_PORT", default=4000) OPENAI_API_KEY = env.str("OPENAI_API_KEY", default="") OPENAI_EMBEDDING_MODEL = env.str( "OPENAI_EMBEDDING_MODEL", default="text-embedding-3-small" ) SENTRY_DSN = env.str("SENTRY_DSN", default="") CELERY_BROKER_URL = env.str("CELERY_BROKER_URL", default="redis://127.0.0.1:6379/1") CELERY_RESULT_BACKEND = env.str( "CELERY_RESULT_BACKEND", default="redis://127.0.0.1:6379/1" ) ENABLE_API_KEY = env.bool("ENABLE_API_KEY", default=False) TIDB_AI_CHAT_ENDPOINT = env.str( "TIDB_AI_CHAT_ENDPOINT", default="https://tidb.ai/api/v1/chats" ) TIDB_AI_API_KEY = env.str("TIDB_AI_API_KEY", default="") # Since we are using post-filter when searching relationships to enable vector index, # we need to specify a top-k factor to adjust the top-k for post-filtering. RELATIONSHIP_POST_FILTER_TOP_K_FACTOR = env.int( "RELATIONSHIP_SEARCH_POST_FILTER_TOP_K_FACTOR", default=10 ) GOOGLE_API_KEY = env.str("GOOGLE_API_KEY", default="") GRAPH_EXTRACT_LLM_PROVIDER = env.str( "GRAPH_EXTRACT_LLM_PROVIDER", default="openai" ).lower()