Back to Catalog

Build a Chatbot to Analyze PDF Documents Using LLM

IntermediateGuided Project

Let's create a chatbot using Flask, LangChain and LLM that that will learn the contents of the PDF documents and will answer any questions you may have. In many organizations PDF documents contain a great deal of information. To make use of this information you have to read thousands of pages. Our chatbot will be your personal assistant powered by AI that will do the reading for you in seconds and will answer questions about what it had read.

4.7 (417 Reviews)

Language

  • English

Topic

  • Artificial Intelligence

Enrollment Count

  • 2.20K

Skills You Will Learn

  • Python, Generative AI, LLM, Chatbots, Flask

Offered By

  • IBMSkillsNetwork

Estimated Effort

  • 60 min

Platform

  • SkillsNetwork

Last Update

  • May 3, 2025
About this Guided Project
In this project, you'll build a chatbot using Flask, LangChain and Large Language Model (LLM), capable of uploading and interpreting PDF documents. This could be a game-changer when you need quick access to information from extensive documents. For instance, if you're working with machinery and have thousands of pages of confidential instructions, this chatbot could provide immediate access to specific information while ensuring data privacy. Or, imagine having a specialized cookbook for a particular diet. You could quickly look up recipes based on the ingredients you have on hand.

You will also gain a deeper understanding of web application development using Flask and Python and the use of the LangChain framework in interpreting and responding to user inputs.

Here is a screenshot of the chatbot you will build: Chatbot document assistant

A Look at the Project Ahead

By completing this project, you will:
  • Understand the basics of LangChain and generative AI applications that use LLM.
  • Set up a development environment for building a chatbot using Python Flask framework.
  • Utilize LangChain to integrate the chatbot with the LLM model that gives a high level of intelligence and the ability to understand and respond to user requests.

Instructors

Sina Nazeri

Data Scientist at IBM

I am grateful to have had the opportunity to work as a Research Associate, Ph.D., and IBM Data Scientist. Through my work, I have gained experience in unraveling complex data structures to extract insights and provide valuable guidance.

Read more

Joseph Santarcangelo

Senior Data Scientist at IBM

Joseph has a Ph.D. in Electrical Engineering, his research focused on using machine learning, signal processing, and computer vision to determine how videos impact human cognition. Joseph has been working for IBM since he completed his PhD.

Read more

Contributors

Rohit Arora

Full-Stack Software Engineer

A lifelong learner who develops cool technology. Join me to gain knowledge about the breadth of software development 😎.

Read more

Talha Siddiqui

Software Developer Intern

A really passionate individual who loves to work in the realm of software development. With my passion and expertise, I promise to inspire and empower you to achieve your full potential in this exciting field. Let's learn, grow, and build amazing technology together! 🚀

Read more

Roodra Kanwar

Data Scientist at IBM

I am a data scientist by day, superhero by night. Psych! I wish I was that cool. Only the former part is true which is still pretty cool! I believe in constant learning and it is an essential part of being a productive data enthusiast. I am also pursuing my masters in computer science from Simon Fraser University specializing in Big Data. Moreover, knowledge is transfer learning (pun intended!) and what I have gained, I plan on reflecting it back to the data community.

Read more