Major changes to match HF Spaces requirements:
1. **Switch to Docker SDK** (was: streamlit)
- Updated README YAML frontmatter to use `sdk: docker`
- HF Spaces requires Docker SDK for complex multi-dependency apps
2. **Create proper Dockerfile** (was: Dockerfile.spaces)
- Renamed to `Dockerfile` (HF Spaces looks for this exact name)
- Added non-root user (UID 1000) - HF Spaces security requirement
- Use port 7860 (HF Spaces default) instead of 8000
- Simplified to only run Streamlit UI (API not needed for demo)
- Optimized layer caching with requirements.txt first
3. **Add .dockerignore**
- Exclude dev files, tests, cache, and virtual envs from image
- Reduces build time and image size
Based on successful Devon/CodePilot HF Spaces deployment pattern.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
fix: update requirements.txt with complete dependencies for HF Spaces
Add all cascade package dependencies needed for the UI to work:
- FastAPI and uvicorn for potential API integration
- Redis and Qdrant clients for caching layer
- OpenAI SDK for LLM providers
- Transformers and ML packages for routing classifier
- All UI dependencies (streamlit, plotly, pandas)
This ensures the Streamlit app can import cascade modules without
errors when deployed to Hugging Face Spaces.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Document planned improvements for streaming, retry logic, rate limiting
- Outline ML classifier training strategy
- Define success metrics and implementation order
- Fix metric card colors for better visibility (white text on purple gradient)
- Add example query buttons to chat interface for quick testing
- Add API connection status indicator (green/red) to sidebar
- Update default API endpoint to port 8889
- Improve overall accessibility and usability
These changes make the UI more intuitive and easier to use for new users.
Update README with deployment instructions and API docs
- Add pricing constants for OpenAI and local models
- Implement cost calculation per request
- Add baseline cost comparison for savings calculation
- Track dollars and percentage saved
- Add transformers, datasets for model training
- Add torch for PyTorch backend
- Add onnx, onnxruntime for production inference
- Add scikit-learn for metrics
- Add matplotlib, seaborn for visualizations