""" config.py - Default configuration for YouTube SIPOC Tool """ import os # ── API Settings ────────────────────────────────────────────────────────────── OPENROUTER_API_KEY = os.environ.get("OPENROUTER_API_KEY", "") OPENROUTER_BASE_URL = "https://openrouter.ai/api/v1" OPENROUTER_MODEL = os.environ.get("OPENROUTER_MODEL", "openai/gpt-4o-mini") # ── Server Settings ─────────────────────────────────────────────────────────── API_HOST = "127.0.0.1" API_PORT = 8765 # ── Download / Bot Avoidance ────────────────────────────────────────────────── DELAY_MIN_SECONDS = 2.0 # minimum random pause between artifacts DELAY_MAX_SECONDS = 7.0 # maximum random pause between artifacts MAX_RETRIES = 3 # max retry attempts per failed artifact # ── Video Download ──────────────────────────────────────────────────────────── DEFAULT_VIDEO_RESOLUTION = "1080" # used if not specified by user AVAILABLE_RESOLUTIONS = ["best", "4320", "2160", "1440", "1080", "720", "480", "360", "240", "144"] # ── Summary ─────────────────────────────────────────────────────────────────── SUMMARY_SYSTEM_PROMPT = ( "You are a helpful assistant that creates concise, well-structured summaries of video transcripts. " "Include key points, main topics, and any actionable insights. Format with bullet points where appropriate." ) SUMMARY_MAX_TOKENS = 1024 # ── File Naming ─────────────────────────────────────────────────────────────── MAX_TITLE_LENGTH = 80 # characters - truncate long titles in filenames # ── Database ────────────────────────────────────────────────────────────────── DB_PATH = os.environ.get("BATCHTUBE_DB_PATH", os.path.join(os.path.dirname(__file__), "youtube_sipoc.db")) # ── Artifact Types ──────────────────────────────────────────────────────────── ARTIFACT_TYPES = ["title", "stats", "transcript", "summary", "thumbnail", "mp3", "mp4"]