-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
93 lines (82 loc) · 4.19 KB
/
Copy path.env.example
File metadata and controls
93 lines (82 loc) · 4.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# ── AI Model (required) ──────────────────────────────────────────────
# Which model to use for text/chat/summaries.
# Examples: gpt-4o, claude-sonnet-4-6, gemini-3-flash, llama-4-scout, minimax-m2.7, kimi-latest
# See ENVREADME.md for the full list of supported models.
TEXT_AI_MODEL=
TEXT_AI_API_KEY=
# ── Audio Transcription (optional) ───────────────────────────────────
# Cloud transcription model. Leave blank to use local Whisper.
# Examples: whisper-1, deepgram/nova-3, deepgram/nova-2
AUDIO_AI_MODEL=
AUDIO_AI_API_KEY=
# ── Provider-Specific API Keys (auto-set by TEXT_AI_API_KEY) ─────────
# You normally do NOT need to set these manually.
# TEXT_AI_API_KEY is auto-mapped to the correct provider key based on
# your TEXT_AI_MODEL. Only set these if you need to override or use
# multiple providers at the same time.
OPENAI_API_KEY=
ANTHROPIC_API_KEY=
GEMINI_API_KEY=
TOGETHER_AI_API_KEY=
DEEPGRAM_API_KEY=
MOONSHOT_API_KEY=
# ── Music Fingerprinting (optional) ──────────────────────────────────
MUSIC_ACOUSTID_API_KEY=
# ── YouTube (optional) ───────────────────────────────────────────────
YOUTUBE_DATA_API_KEY=
# ── Legacy MiniMax (backward compatibility) ──────────────────────────
# These are only needed if you do NOT set TEXT_AI_MODEL above.
# If TEXT_AI_MODEL is set, these are ignored (except MINIMAX_API_URL
# which is still needed when using a MiniMax model).
MINIMAX_API_KEY=
MINIMAX_API_URL=
MINIMAX_MODEL=
MINIMAX_VISION_MODEL=
# ── Local Whisper settings ───────────────────────────────────────────
WHISPER_MODEL=base
LOCAL_TRANSCRIBE_MAX_MINUTES=15
# ── Website behavior ─────────────────────────────────────────────────
MAX_CONCURRENT_JOBS=3
DOWNLOADS_DIR=Download Audio File For AI
MAX_FILE_SIZE_MB=200
# ── Website server ───────────────────────────────────────────────────
WEBAPP_HOST=127.0.0.1
WEBAPP_PORT=8000
WEBAPP_DB_PATH=./.webapp/webapp.sqlite
# ── Vision settings ──────────────────────────────────────────────────
ENABLE_LOCAL_VISION=true
VISION_CAPTION_MODEL=Salesforce/blip-image-captioning-base
VISION_OBJECT_MODEL=facebook/detr-resnet-50
# ── Music detection settings ─────────────────────────────────────────
ENABLE_MUSIC_DETECTION=true
MUSIC_ANALYSIS_SAMPLE_SECONDS=90
MUSIC_ACOUSTID_ENABLED=false
MUSIC_ACOUSTID_TIMEOUT_SECONDS=20
MUSIC_FPCALC_BINARY=fpcalc
MUSIC_ESSENTIA_ENABLED=true
MUSIC_MIRFLEX_ENABLED=false
MUSIC_MIRFLEX_REPO_PATH=
# ── YouTube auth (optional) ──────────────────────────────────────────
YOUTUBE_COOKIE_MODE_ENABLED=false
YOUTUBE_COOKIES_FROM_BROWSER=
YOUTUBE_COOKIES_BROWSER_PROFILE=
YOUTUBE_COOKIES_FILE=
YOUTUBE_REQUIRE_BROWSER_PROFILE_FOR_COOKIES=true
YOUTUBE_TRANSCRIPT_API_TIMEOUT_SECONDS=5
YOUTUBE_YTDLP_TIMEOUT_SECONDS=10
YOUTUBE_DOWNSUB_ENABLED=true
YOUTUBE_DOWNSUB_TIMEOUT_SECONDS=45
YOUTUBE_SAVESUBS_ENABLED=true
YOUTUBE_SAVESUBS_TIMEOUT_SECONDS=45
YOUTUBE_TRANSCRIPT_SITE_HEADLESS=true
YOUTUBE_TRANSCRIPT_SITE_BROWSER_CHANNEL=chrome
YOUTUBE_MIN_REQUEST_INTERVAL_SECONDS=8
YOUTUBE_SLEEP_INTERVAL_SECONDS=5
YOUTUBE_MAX_SLEEP_INTERVAL_SECONDS=15
YOUTUBE_AUTH_GATE_COOLDOWN_MINUTES=30
YOUTUBE_AUTH_GATE_GLOBAL_THRESHOLD=3
YOUTUBE_AUTH_GATE_GLOBAL_COOLDOWN_MINUTES=180
YOUTUBE_RESULT_CACHE_MINUTES=180
YOUTUBE_TRANSCRIPT_WINDOW_SECONDS=150
VIDEO_SCAN_BASE_INTERVAL_SECONDS=3
VIDEO_SCAN_MAX_INTERVAL_SECONDS=25