Andrej Baranovskij Blog
Blog about Oracle, Full Stack, Machine Learning and Cloud
Monday, June 5, 2023
ChatGPT/GPT-4 for Receipt OCR Data Analysis
I show how ChatGPT works with array data generated from OCR engine by extracting text from the receipt document. ChatGPT can parse and understand the data. What is great about it - GPT-4 model automatically maps key/value pairs without any additional metadata. For example, it matches the receipt item and item price. I'm using PaddleOCR to construct OCR input for ChatGPT.
Monday, May 29, 2023
Document AI: How To Convert Colab ML Notebook Into FastAPI App
I explain how I converted Donut ML model fine-tuning code implemented as Colab notebook into API running as FastAPI app. I share several hints how to simplify code refactoring efforts.
Labels:
Hugging Face,
Machine Learning,
Python
Monday, May 22, 2023
Speeding Up FastAPI App with Background Tasks
FastAPI runs background tasks in a parallel thread, which prevents blocking app endpoints when a long task executes. I explain it in this video and show the benefit of running time-consuming operations in background tasks.
Labels:
FastAPI,
Machine Learning,
Python
Monday, May 15, 2023
Optimizing FastAPI for Concurrent Users when Running Hugging Face ML Models
To serve multiple concurrent users accessing FastAPI endpoint running Hugging Face API, you must start the FastAPI app with several workers. It will ensure current user requests will not be blocked if another request is already running. I show and describe it in this video.
Labels:
FastAPI,
Hugging Face,
Python
Monday, May 8, 2023
Optimizing ML Model Loading Time Using LRU Cache in FastAPI
Are you facing challenges with the time it takes to load large ML models in your backend API? This video presents a practical solution: utilizing LRU cache with properly annotated functions. Implementing this approach will make your model cached in memory, eliminating the need for disk reads on subsequent calls. Enhance the efficiency and performance of your ML workflow by incorporating LRU cache techniques. Join us to learn more about this valuable strategy!
Monday, April 24, 2023
Efficient Document Data Extraction with Sparrow UI: Streamlit, FastAPI, and Hugging Face's Donut ML
In this easy-to-follow video, I show you how I built Sparrow UI, a tool for pulling data from documents using Streamlit. With Sparrow UI, you can upload a document and quickly run a data extraction task.
I'll walk you through how the system works, using a FastAPI app on the backend to run a fine-tuned Donut ML model from Hugging Face. I'll also explain the code that sends POST requests from the Streamlit app, including how it sends files and text to the FastAPI endpoint. This way, you'll get a JSON response with the extracted info from your document.
Labels:
Machine Learning,
Sparrow
Monday, April 17, 2023
Deploying FastAPI Applications to Hugging Face Spaces
In this video, I demonstrate how to deploy a FastAPI backend API to Hugging Face Spaces using Docker. I cover creating a Dockerfile, setting up secrets for FastAPI, and deploying the application on the platform.
Labels:
FastAPI,
Hugging Face,
Python
Subscribe to:
Posts (Atom)