arrow_back
Intro
Readme
Resources
Fast API Notes
Course Intro
Introduction to APIs
1.0 - Introduction to APIs
1.1 - Understanding APIs
1.2 - Types of APIs
1.3 - API Protocols
1.4 - Working of API
1.5 - API Components
1.6 - API Lifecycle
1.7 - API Authentication & Authorization
Introduction to FastAPI
2.0 - Introduction to FastAPI
2.1 - About FastAPI
2.2 - Key Features of FastAPI
2.3 - Architecture of FastAPI
2.4 - Installing FastAPI
2.5 - First App using FastAPI
2.6 - Comparative Analysis
Building APIs using FastAPI
3 - Building APIs using FastAPI
3.1 - Creating APIs
3.2 - CRUD Operations
3.3 - Handling Validations and Errors
3.4 - Asynchronous Programming
Database Integration
4 - Database Integration
4.1 - Database Basics
4.2 - SQLAlchemy Basics
4.3 - CRUD App Project Structure
4.3.1 - database.py
4.3.2 - models.py
4.3.3 - schemas.py
4.3.4 - crud.py
4.3.5 - main.py
Machine Learning Integration
5 - Machine Learning Integration
5.1 - Model Serialization
5.2 - Serialization with Pickle and Joblib
5.3 - Serialization with Keras
5.4 - Pickle vs Joblib
5.5 - Input and Output Schemas (theory)
5.6 - Input and Output Schemas (schemas.py)
5.7 - Serving ML Models (theory)
5.8 - Serving ML Models (train.py)
5.9 - Serving ML Models (predict.py)
5.10 - Serving ML Models (main.py)
5.11 - Handling Batch Predictions
Advanced FastAPI Concepts
6 - Advanced FastAPI Concepts
6.1 - Middlewares
6.2 - Built-in Middlewares
6.3 - Custom Middlewares
6.4 - Dependency Injection
6.4.1 - Database Connections
6.4.2 - Configuration Management
6.4.3 - User Authentication
6.5 - JWT Authentication
6.5.1 - auth.py
6.5.2 - models.py
6.5.3 - utils.py
6.5.4 - main.py
6.5.5 - Workflow
6.6 - Managing API Keys
6.6.1 - API Keys with Headers
6.6.2 - API Keys with .env file
6.7 - Best Practices
Testing and Debugging
7 - Testing and Debugging
7.1 - Importance of Testing APIs
7.2 - Types of Tests
7.2.1 - Unit Tests (theory)
7.2.2 - Unit Tests (code)
7.2.3 - Integration Testing
7.2.4 - End-to-End Testing
7.3 - Mock ML Models
7.3.1 - Mock ML Demo
7.4 - Common API Errors
7.5 - Debugging Techniques
7.5.1 - Logging
7.5.2 - Exception Handling
7.5.3 - CURL & Configurations
7.5.4 - Summary
Performance Optimization and Monitoring
8.1 - Caching & its Importance
8.1.1 - Caching Use Cases
8.1.2 - Types of Caching
8.1.3 - Key Considerations for Caching
8.1.4 - Common Tools for Caching
8.2 - Caching with Redis
8.2.1 - Redis Data Structures
8.2.2 - Redis Use Cases
8.2.3 - Redis Setup
8.3 - Redis with FastAPI
8.3.1 - Caching ML Predictions
8.3.2 - Caching DB Queries
8.3.3 - Caching External API Call
8.4 - Profiling FastAPI Apps
8.4.1 - Profiling with TIME
8.4.2 - Profiling with cProfile
8.4.3 - Profiling with line-profiler
8.5 - Benchmarking APIs
8.5.1 - Advantages of Benchmarking
8.5.2 - Metrics for Benchmarking
8.5.3 - Tools for Benchmarking
8.5.4 - Locust Demo
8.5.5 - Benchmarking Best Practices
8.6 - Monitoring APIs
8.6.1 - Prometheus
8.6.2 - Prometheus with FastAPI
8.6.3 - FastAPI with Prometheus & Docker
8.6.4 - Grafana
8.6.5 - FastAPI with Grafana, Prometheus & Docker
Capstone Project
9.1 - Project File Structure
9.2 - Project Setup with GitHub
9.3 - Configurations and Security
9.4 - Auth & Dependencies
9.5.1 - ML Integration with Caching pt1
9.5.2 - ML Integration with Caching pt2
9.5.3 - ML Integration with Caching pt3
9.6 - Middlewares and API
9.7 - Monitoring & Containerization
9.8 - Running the Project Locally
9.9 - Project Deployment over Render using Redis
9.10 - Important Note for Deployment
Feedback
Feedback Form
Preview - FastAPI for Machine Learning
Discuss (
0
)
navigate_before
Previous
Next
navigate_next