rajux75 commited on
Commit
4f2ccf0
·
verified ·
1 Parent(s): 8171bf7

Create config.py

Browse files
Files changed (1) hide show
  1. config.py +33 -0
config.py ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # config.py
2
+ import os
3
+ from dotenv import load_dotenv
4
+ import torch
5
+
6
+ load_dotenv() # Load variables from .env file for local development
7
+
8
+ # Model Configuration
9
+ TEXT_MODEL_NAME = os.getenv("TEXT_MODEL_NAME", "google/flan-t5-base")
10
+ IMAGE_MODEL_NAME = os.getenv("IMAGE_MODEL_NAME", "runwayml/stable-diffusion-v1-5")
11
+ VIDEO_MODEL_NAME = os.getenv("VIDEO_MODEL_NAME", "zeroscope_v2_576w")
12
+
13
+ # API Security
14
+ ALLOWED_API_KEYS_STR = os.getenv("ALLOWED_API_KEYS", "")
15
+ ALLOWED_API_KEYS = set(ALLOWED_API_KEYS_STR.split(',')) if ALLOWED_API_KEYS_STR else set()
16
+
17
+ # Inference Device
18
+ DEVICE = "cuda" if torch.cuda.is_available() else "cpu"
19
+ # For Spaces free tier CPU or basic T4 GPU, FP16 might be beneficial if GPU is available
20
+ DTYPE = torch.float16 if DEVICE == "cuda" else torch.float32
21
+
22
+ # Rate Limiting (Example: 10 requests per minute)
23
+ RATE_LIMIT = "10/minute"
24
+
25
+ print(f"--- Configuration ---")
26
+ print(f"Text Model: {TEXT_MODEL_NAME}")
27
+ print(f"Image Model: {IMAGE_MODEL_NAME}")
28
+ print(f"Video Model: {VIDEO_MODEL_NAME}")
29
+ print(f"Device: {DEVICE}")
30
+ print(f"Dtype: {DTYPE}")
31
+ print(f"API Keys Loaded: {'Yes' if ALLOWED_API_KEYS else 'No (WARNING: Open Access!)'}")
32
+ print(f"Rate Limit: {RATE_LIMIT}")
33
+ print(f"---------------------")