Add minimal requirements for podcast-only mode
This commit is contained in:
@@ -9,15 +9,12 @@ IS_PODCAST_ONLY=false
|
|||||||
|
|
||||||
if [[ "$ENABLED_FEATURES" == "podcast" ]]; then
|
if [[ "$ENABLED_FEATURES" == "podcast" ]]; then
|
||||||
IS_PODCAST_ONLY=true
|
IS_PODCAST_ONLY=true
|
||||||
echo "🔊 Podcast-only mode detected - skipping spaCy/NLTK model download"
|
echo "🔊 Podcast-only mode detected - using minimal requirements"
|
||||||
fi
|
python -m pip install --retries 10 --timeout 120 -r requirements-podcast.txt
|
||||||
|
else
|
||||||
python -m pip install --retries 10 --timeout 120 -r requirements.txt
|
echo "📦 Full mode - using all requirements"
|
||||||
|
python -m pip install --retries 10 --timeout 120 -r requirements.txt
|
||||||
# Download required NLTK and spaCy models during build phase (skip for podcast-only)
|
# Download required NLTK and spaCy models during build phase (skip for podcast-only)
|
||||||
if [[ "$IS_PODCAST_ONLY" == "false" ]]; then
|
|
||||||
python -m spacy download en_core_web_sm
|
python -m spacy download en_core_web_sm
|
||||||
python -m nltk.downloader punkt_tab stopwords averaged_perceptron_tagger
|
python -m nltk.downloader punkt_tab stopwords averaged_perceptron_tagger
|
||||||
else
|
|
||||||
echo "🔊 Skipping spaCy/NLTK download for podcast-only mode"
|
|
||||||
fi
|
fi
|
||||||
|
|||||||
57
backend/requirements-podcast.txt
Normal file
57
backend/requirements-podcast.txt
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
# Core dependencies
|
||||||
|
fastapi>=0.115.14
|
||||||
|
starlette>=0.40.0,<0.47.0
|
||||||
|
sse-starlette<3.0.0
|
||||||
|
uvicorn>=0.24.0
|
||||||
|
uvicorn[standard]>=0.24.0
|
||||||
|
gunicorn>=21.0.0
|
||||||
|
|
||||||
|
# Server utilities
|
||||||
|
python-multipart>=0.0.6
|
||||||
|
python-dotenv>=1.0.0
|
||||||
|
loguru>=0.7.2
|
||||||
|
tenacity>=8.2.3
|
||||||
|
pydantic>=2.5.2,<3.0.0
|
||||||
|
typing-extensions>=4.8.0
|
||||||
|
|
||||||
|
# Authentication
|
||||||
|
PyJWT>=2.8.0
|
||||||
|
cryptography>=41.0.0
|
||||||
|
fastapi-clerk-auth>=0.0.7
|
||||||
|
|
||||||
|
# Database
|
||||||
|
sqlalchemy>=2.0.25
|
||||||
|
|
||||||
|
# Payment
|
||||||
|
stripe>=8.0.0
|
||||||
|
|
||||||
|
# HTTP & API
|
||||||
|
httpx>=0.27.2,<0.28.0
|
||||||
|
|
||||||
|
# AI/ML (needed for podcast)
|
||||||
|
openai>=1.3.0
|
||||||
|
google-genai>=1.0.0
|
||||||
|
|
||||||
|
# TTS for podcast
|
||||||
|
gtts>=2.4.0
|
||||||
|
pyttsx3>=2.90
|
||||||
|
|
||||||
|
# Text processing
|
||||||
|
markdown>=3.5.0
|
||||||
|
|
||||||
|
# Data processing
|
||||||
|
pandas>=2.0.0
|
||||||
|
numpy>=1.24.0
|
||||||
|
|
||||||
|
# Image/audio processing
|
||||||
|
Pillow>=10.0.0
|
||||||
|
huggingface_hub>=1.1.4
|
||||||
|
|
||||||
|
# Video composition
|
||||||
|
moviepy==2.1.2
|
||||||
|
imageio>=2.31.0
|
||||||
|
imageio-ffmpeg>=0.4.9
|
||||||
|
|
||||||
|
# Testing
|
||||||
|
pytest>=7.4.0
|
||||||
|
pytest-asyncio>=0.21.0
|
||||||
Reference in New Issue
Block a user