/pdf-chat-ai

An AI powered Next.js app to chat with your PDF files and get a streamed response using Langchain and PineconeDB ✨🤖💻🗃️

Primary LanguageTypeScriptMIT LicenseMIT

PDF-CHAT AI ✨🤖💻🗃️

An AI-powered PDF chat built with Next.js 13, Langchain, and PineconeDB

👷🏾‍♂️ Want to Learn How to Build It?

Subscribe to my YouTube Channel for an upcoming video tutorial!

Demo.mp4

Architecture

Screenshot 2023-08-14 at 12 11 05

👩‍🚀 Description

Built with:

  • ✅ Next.js 13
  • ✅ Shadcn-ui
  • ✅ Langchain TypeScript integration
  • ✅ PineconeDB as the knowledge store
  • ✅ Dark Mode with persistent theme-switching

🗃️ Pre-requisites

  • Create a free account and get an OPEN_AI key from platform.openai.com
  • Create a free account and get access to PineconeDB
  • And populate your .env file with the required information.

💬 Good to know

  • The PineconeDB index creation happens when we run npm run prepare:data, but its better to create it manually if you dont want the command to fail.
  • If the command fails, then give sometime for pinecone index to get initialized and try to run the command again, it should work eventually.

🧞 Commands

All commands are run from the root of the project, from a terminal:

Command Action
npm install Installs dependencies
npm run prepare:data Splits your PDF file under the /docs folder into chunks, embeds them, uploads them to Pinecone
npm run dev Starts the local dev server at localhost:3000

🚸 Roadmap

  • Add sources to the streamed chat bubble

👏🏽 Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.