Streamlit/Python Drawable Canvas - Element Selection (React JS)
With Streamlit component you can render canvas and draw. I explain how this canvas component implements object selection and passes data from React canvas to Streamlit.
View ArticleBuilding Streamlit/Python Dynamic Forms
Streamlit is great to build Web UIs for data apps. Dynamic UIs are common requirement for data apps. Data structures usually dynamic, set of attributes is changing and this requires dynamic UI. I...
View ArticleCalling JavaScript from Streamlit/Python
Streamlit is Python framework, it helps to build UI with low code approach. Code runs on server and there is no functionality, which would allow to inject client side events with JavaScript. Luckily...
View ArticleResponsive UI with Streamlit/Python
I explain how to get current UI width info in Streamlit and use this value to calculate number of columns to be generated for the form block. Streamlit is server side UI framework and it runs on Python.
View ArticleInvoice Annotation with Sparrow/Python
I explain our Streamlit component for invoice/receipt document annotation and labeling. It can be used either to create new annotations or review and edit existing ones. With this component you can add...
View ArticleDependent UI Widgets in Streamlit/Python
This video explains how to implement dependent UI widgets refresh in Streamlit/Python, when the value changes. I'm using Streamlit Empty widget as a placeholder to update selectbox with a new entry,...
View ArticleFile Upload/Download in Streamlit/Python
File upload/download is supported by Streamlit out of the box. There are a few hints to share about more effective file upload implementation. You will learn how to wrap the file upload widget with...
View ArticleBest Platform for Python Apps Deployment - Hugging Face Spaces with Docker
I walk through Hugging Face Spaces Docker SDK deployment option. I was using it to deploy our Streamlit/Python app Sparrow. So far very happy with Spaces Docker SDK - simple setup, very stable and good...
View ArticleDonut 🍩 - ChatGPT for Document AI
Donut - OCR-free Document Understanding Transformer. This ML model can process documents (images, scans) and return JSON structured info about the content. It works for different use cases: form...
View ArticleHow To Fine-tune Donut Model
Donut is an awesome Document AI model to extract data from docs. I share my experiences in fine-tuning the model, with CORD dataset, based on example from Transformers Tutorials.
View ArticlePreparing Dataset for Donut Fine-Tuning (part 1, Document AI)
I explain the dataset I will be using to fine-tune Donut model. I show how PDFs are converted to image files for further processing and OCR data extraction. In the next step, JSON data is converted to...
View ArticlePreparing Dataset for Donut Fine-Tuning (part 2, Document AI)
I explain how to group OCR results into a single entity using Sparrow annotation tool. This is useful for such fields as an address, item description - when field text is based on multiple words.
View ArticlePreparing Dataset for Donut Fine-Tuning (part 3, Document AI)
In this episode, I explain redesigned Sparrow UI for data annotation. Sparrow UI is improved with Streamlit Grid component (aggrid). I show how to group related fields generated by OCR into a single...
View ArticleStreamlit Button Group UI (Flowbite) Component
Streamlit doesn't provide an option to display multiple buttons side-by-side horizontally. I explain how to achieve this functionality using a custom Streamlit component and Flowbite button group UI.
View ArticleDocument Data Extraction - Data Mapping for Donut Model Fine-Tuning Dataset...
I explain the current status of my work related to dataset preparation for ML Donut model fine-tuning. I plan to use this model to run data extraction tasks from invoice documents. I share hints about...
View ArticleImprove OCR Results with Sparrow (running on Streamlit/Python and Ngrok)
OCR can often generate results in a different order. But to produce a dataset for data extraction ML model fine-tuning (for example - Donut), fields in all documents must be ordered correctly. Our...
View ArticleHugging Face Dataset for Donut Model Fine-Tuning (Document AI)
Hugging Face Dataset is a very convenient way to store and share data for ML model fine-tuning. In this post, I share my experience creating a dataset for fine-tuning the Donut model. I made a set of...
View ArticleHow I'm Using ChatGPT/GPT-4 as a Solo Python Developer
I'm working as a solo Python developer and using ChatGPT to speed up the development process. In this video, I explain how ChatGPT is helping me with various tasks, from code explanation to suggesting...
View ArticleDonut ML Model Fine-Tuning with Hugging Face API
I explain how Donut ML model can be fine-tuned on your own dataset by following different approaches. Either with PyTorch Lighting or Hugging Face Trainer API. I explain the pros and cons of both and...
View ArticleBuild a Structured API with FastAPI
Learn how to create a structured API using FastAPI. In this tutorial, we explore the benefits of FastAPI, its powerful code structuring capabilities, and how it connects services within Sparrow to...
View Article