Skip to content

An AI powered Next.js app to chat with your PDF files and get a streamed response using Langchain and PineconeDB βœ¨πŸ€–πŸ’»πŸ—ƒοΈ

License

Notifications You must be signed in to change notification settings

ngprnk/pdf-chat-ai

Β 
Β 

Repository files navigation

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.

About

An AI powered Next.js app to chat with your PDF files and get a streamed response using Langchain and PineconeDB βœ¨πŸ€–πŸ’»πŸ—ƒοΈ

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 88.7%
  • JavaScript 6.9%
  • CSS 4.4%