Welcome to Day 16 of the 30 Days of AI Coding Challenge 🚀
Do you want AI to answer questions from your own documents?
Before AI can understand data from your documents… it needs clean text.
Today, we build the first and most important step of RAG.
🧠 We will learn today
Today, we’re building a Batch Document Text Extractor.
In simple words:
Upload multiple files at once
Extract raw text from them
Save that text into Snowflake
Supported files: TXT, Markdown (MD), PDF
👉 This is how real AI systems start working with documents.
🔥Why RAG:
RAG stands for Retrieval-Augmented Generation. It enhances LLM responses by fetching relevant, up-to-date data from external data sources to generating accurate response.
But before retrieval…
Before embeddings…
Before smart answers…
👉 AI needs clean text.
Bad input = bad answers
Clean text = powerful RAG
Today’s app prepares your data the right way.
🛠 Prerequisites
Completed Days 1–15 of the challenge (If not, check the earlier videos and complete them first.)
• 30 Days of AI Coding Challenge 🚀 | Build A...
Timecodes
0:00 - Introduction
0:26 - What you will Learn today
0:59 - What is RAG (Retrieval-Augmented Generation)
1:30 - RAG in Detail
3:04 - Role of Clean text in RAG
3:21 - Why AI Coding Challenge
3:33 - Demo of the LLM Model Comparison Tool
6:55 - Code walkthrough of LLM Model Comparison Tool
7:11 - Database Configuration
7:30 - Batch File Upload using st.file_uploader
8:10 - Process & Progress Tracking
8:53 - Replace Table mode in Snowflake
9:23 - Extract text from files for RAG
10:44 - Save data to Snowflake Table
12:03 - Query save data from snowflake table
13:13 - Outcome of Day 16 of AI Coding Challenge
13:39 - What you will learn tomorrow
👉 Resources
Day 16 challenge guide:
https://30daysofai.streamlit.app/?day=16
Agentic RAG Simply Explained
• Agentic RAG Simply Explained
st.file_uploader : Display a file uploader widget.
https://docs.streamlit.io/develop/api...
pypdf: It is a free and open source pure-python PDF library capable of splitting, merging, cropping, and transforming the pages of PDF files.
https://pypdf.readthedocs.io/en/stable/
Official challenge announcement:
https://discuss.streamlit.io/t/the-30...
Code reference (all days):
https://github.com/sudeepkumar10x/30D...
---
💼🧑💻 Join Our Data Engineering Community
Get exclusive learning resources, updates, and discussions.
👉 https://chat.whatsapp.com/FBv72iezg9M...
👉 Upload your own documents
💬 Comment “DONE” once you finish Day 16
📹 Tomorrow, we’ll start with Chunking 🔥
#30DaysOfAI #Streamlit #Snowflake #AICoding #DataEngineering #SudeepKumar10x #AIChallenge #ChatBot #LLM #LLMComparison #LLMModels #RAG #DataExtraction #Document