Skip to main content

Posts

FastAPI with async

 In FastAPI , using ` async ` functions is optional, but it provides certain advantages, especially in scenarios where your application may need to handle multiple concurrent operations without blocking the execution of other tasks. The use of `async` is closely tied to asynchronous programming in Python, often referred to as asyncio. Here are some reasons why you might choose to use `async` functions in FastAPI: 1. Concurrent Operations:    - Async functions allow your application to handle multiple operations concurrently without waiting for each operation to complete before moving on to the next one.    - This can be beneficial for I/O-bound operations like making multiple API requests, database queries, or other network-related tasks. 2. Improved Performance:    - Asynchronous programming can improve the overall performance of your application, especially in scenarios where there are many I/O-bound tasks.    - Instead of waiting for one t...

Fast API with Pydentic

FastAPI  and Pydantic are often used together to build APIs in Python. FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.7+ based on standard Python type hints. Pydantic is a data validation and settings management library that plays well with FastAPI. Here's a simple example: Let's create an API using FastAPI with Pydantic for request and response models. ```python from fastapi import FastAPI from pydantic import BaseModel app = FastAPI() # Pydantic model for request class Item(BaseModel):     name: str     description: str = None     price: float     quantity: int # Pydantic model for response class ItemResponse(BaseModel):     name: str     description: str = None # Endpoint to create an item @app.post("/items/", response_model=ItemResponse) async def create_item(item: Item):     return {"name": item.name, "description": item.description} # Endpoint to read an item by...

Introduction to Django, Celery, Nginx, Redis and Docker

  Django: A High-Level Web Framework Django is a high-level web framework for building robust web applications quickly and efficiently. Written in Python, it follows the Model-View-Controller (MVC) architectural pattern and emphasizes the principle of DRY (Don't Repeat Yourself). Django provides an ORM (Object-Relational Mapping) system for database interactions, an admin interface for easy content management, and a powerful templating engine. When to Use Django: - Building web applications with complex data models. - Rapid development of scalable and maintainable web projects. - Emphasizing clean and pragmatic design. Docker: Containerization for Seamless Deployment Docker is a platform that enables developers to automate the deployment of applications inside lightweight, portable containers. Containers encapsulate the application and its dependencies, ensuring consistency across different environments. Docker simplifies the deployment process, making it easier to move application...

GPU with Tensorflow

  You might have used GPU for faster processing of your Machine Learning code with Pytorch. However, do you know that you can use that with Tensorflow as well? Here are the steps on how to enable GPU acceleration for TensorFlow to achieve faster performance: 1. Verify GPU Compatibility: Check for CUDA Support: Ensure your GPU has a compute capability of 3. 5 or higher (check NVIDIA's website). Install CUDA Toolkit and cuDNN: Download and install the appropriate CUDA Toolkit and cuDNN versions compatible with your TensorFlow version and GPU from NVIDIA's website. 2. Install GPU-Enabled TensorFlow: Use pip : If you haven't installed TensorFlow yet, use the following command to install the GPU version: Bash pip install tensorflow-gpu Upgrade Existing Installation: If you already have TensorFlow installed, upgrade it to the GPU version: Bash pip install --upgrade tensorflow-gpu 3. Verify GPU Detection: Run a TensorFlow script: Create a simple TensorFlow ...