{"id":27046751,"url":"https://github.com/a-tommarvoloriddle/chat-with-pdf","last_synced_at":"2026-05-08T03:46:27.922Z","repository":{"id":286175737,"uuid":"960602116","full_name":"A-TomMarvoloRiddle/Chat-with-PDF","owner":"A-TomMarvoloRiddle","description":"This is a streamlit application that allows users to upload PDF files, it extract text from them \u0026 then ask questions about the content of the PDFs. It uses NLP \u0026 ML techniques to provide answers to the user's questions.","archived":false,"fork":false,"pushed_at":"2025-04-04T19:17:54.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-04T19:45:34.324Z","etag":null,"topics":["ai","anthropic-api","anthropic-claude","langchain","machine-learning","natural-language-processing","nlp","pdf-reader","python","streamlit","streamlit-webapp"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/A-TomMarvoloRiddle.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-04-04T18:07:21.000Z","updated_at":"2025-04-04T19:17:57.000Z","dependencies_parsed_at":"2025-04-04T19:46:34.688Z","dependency_job_id":null,"html_url":"https://github.com/A-TomMarvoloRiddle/Chat-with-PDF","commit_stats":null,"previous_names":["a-tommarvoloriddle/chat-with-pdf"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/A-TomMarvoloRiddle%2FChat-with-PDF","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/A-TomMarvoloRiddle%2FChat-with-PDF/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/A-TomMarvoloRiddle%2FChat-with-PDF/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/A-TomMarvoloRiddle%2FChat-with-PDF/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/A-TomMarvoloRiddle","download_url":"https://codeload.github.com/A-TomMarvoloRiddle/Chat-with-PDF/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248088260,"owners_count":21045671,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","anthropic-api","anthropic-claude","langchain","machine-learning","natural-language-processing","nlp","pdf-reader","python","streamlit","streamlit-webapp"],"created_at":"2025-04-05T06:17:49.741Z","updated_at":"2025-10-17T18:12:13.373Z","avatar_url":"https://github.com/A-TomMarvoloRiddle.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PDF Chatbot 📄🤖  \n\nThis is a **PDF-based chatbot** built using **Streamlit**, **PyPDF2**, and **Claude Sonnet API**. It enables users to upload **PDF files**, extract text, and ask questions about the content using **Natural Language Processing (NLP) and Machine Learning (ML)**.  \n\n## Features 🚀  \n\n✔ **Upload Multiple PDFs**: Users can upload multiple PDFs to extract text.  \n✔ **Text Extraction**: The chatbot reads text from PDFs using PyPDF2.  \n✔ **Text Chunking**: Large text is split into smaller, manageable chunks.  \n✔ **Vector Store with FAISS**: Stores text chunks efficiently for retrieval.  \n✔ **Conversational AI**: Uses **Claude Sonnet API** to process and answer user queries.  \n✔ **Interactive UI**: Built with **Streamlit** for an easy-to-use web interface.  \n\n## Technologies Used 🛠  \n\n- **Python** 🐍  \n- **Streamlit** (Web UI)  \n- **PyPDF2** (PDF text extraction)  \n- **FAISS** (Vector store for efficient text retrieval)  \n- **LangChain** (NLP \u0026 ML framework)  \n- **Claude Sonnet API** (AI-based conversation model)  \n- **OpenAI \u0026 Anthropic APIs** (LLM integration)  \n\n## How It Works 🤖  \n\n1️⃣ **User uploads PDF files** → The chatbot extracts text.  \n2️⃣ **Text is split into chunks** → Helps in better query matching.  \n3️⃣ **FAISS stores the text** → Creates an efficient vector-based storage.  \n4️⃣ **User asks a question** → The bot retrieves relevant text from PDFs.  \n5️⃣ **Claude Sonnet API processes the query** → AI generates the response.  \n6️⃣ **Answer is displayed** in the chat interface.  \n\n## Usage Instructions 📝  \n\n- Run the chatbot using **Streamlit**.  \n- Upload PDFs via the **sidebar menu**.  \n- Click **\"Submit \u0026 Process\"** to extract and store text.  \n- Ask questions in the input field, and the chatbot will **provide accurate answers**.  \n\n## Screenshots 🖼  \n![image](https://github.com/user-attachments/assets/dfa9e926-24ce-4c9d-a3ff-d89109d5d679)\n \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fa-tommarvoloriddle%2Fchat-with-pdf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fa-tommarvoloriddle%2Fchat-with-pdf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fa-tommarvoloriddle%2Fchat-with-pdf/lists"}