abyss-api / server /limits.py
KyleEastwood's picture
Upload folder using huggingface_hub
cc15101 verified
Raw History Blame Contribute Delete
721 Bytes
"""Phase S -central config for rate limiting, size caps and concurrency."""
import os
# ----- SLIDING-WINDOW LIMITS: (max_requests, window_seconds) per identity -----
RATE_LIMIT_CHAT = (20, 60)
RATE_LIMIT_AGENT = (10, 60)
RATE_LIMIT_AUTH = (5, 300)
RATE_LIMIT_READ = (120, 60)
# ----- REQUEST SIZE & TOKEN CAPS -----
MAX_OUTPUT_TOKENS = 1024
MAX_MESSAGES = 50
MAX_MESSAGE_CHARS = 8000
MAX_PROMPT_CHARS = 16000
MAX_BODY_BYTES = 64 * 1024
# ----- CONCURRENCY -----
MAX_CONCURRENT_GENERATIONS = 3
GENERATION_QUE_TIMEOUT = 30
# ----- REDIS -----
REDIS_URL = os.environ.get("REDIS_URL", "redis://localhost:6379/0")
RATE_LIMIT_ENABLED = os.environ.get("RATE_LIMIT_ENABLED", "1") != "0"