File size: 2,076 Bytes
6fc3143
 
 
 
 
e46a637
6fc3143
3768c4a
 
 
 
 
 
 
 
e46a637
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6fc3143
 
 
e46a637
 
 
 
 
 
 
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
# Our selected models, replace these with your own choices if you want to modify the models used
PROMPT_SCENE_GEN_MODEL=groq/llama-3.3-70b-versatile
PDF_SCENE_GEN_MODEL=gemini/gemini-1.5-flash
PDF_RETRY_MODEL=gemini/gemini-2.0-flash-exp #Optional, only if you want to retry the PDF generation
CODE_GEN_MODEL=openrouter/deepseek/deepseek-chat:free
CODE_GEN_FALLBACK_MODEL=openrouter/anthropic/claude-sonnet-4  # Optional fallback model

# ============================================================================
# Streamlit Deployment Mode
# ============================================================================
# DIRECT_MODE: When true, Streamlit app directly executes generation code
# without needing the FastAPI server. Perfect for Hugging Face Spaces.
# When false, it uses the API server (good for local development).
DIRECT_MODE=true

# ============================================================================
# Reflexion Agent Configuration
# ============================================================================
# The Reflexion Agent uses an Actor-Critic-Reflector loop for improved code quality.
# It generates code, critiques it for issues, and fixes problems before rendering.

# Enable/disable Reflexion Agent (default: true)
REFLEXION_ENABLED=true

# Critic model - used for code review (stronger model recommended)
# This model analyzes code for visual overlaps, API misuse, logic errors, etc.
REFLEXION_CRITIC_MODEL=openrouter/anthropic/claude-sonnet-4

# Maximum iterations for reflexion loop (default: 2)
# Each iteration: generate -> critique -> fix
REFLEXION_MAX_ITERATIONS=2

# ============================================================================
# API Keys
# ============================================================================
# Use the LiteLLM convention of naming the API keys depending on the models you choose
GROQ_API_KEY=
OPENROUTER_API_KEY=
GEMINI_API_KEY=

# Internal API key for securing endpoints (generate a random UUID)
INTERNAL_API_KEY=

# ElevenLabs API key for voiceover generation
ELEVENLABS_API_KEY=