Spaces:
Sleeping
Sleeping
Create config.py
Browse files
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"---------------------")
|