Home
Softono

Langchain Chat With Documents

Open source MIT TypeScript
285
Stars
58
Forks
2
Issues
4
Watchers
3 years
Last Commit

 About Langchain Chat With Documents

Chat with documents (pdf, docx, txt) using ChatGPT and Langchain

Platforms

Web Self-hosted

Languages

TypeScript

Links

Need Help Installing Langchain Chat With Documents?

We provide expert installation service for this software. Our team will install, configure, and secure Langchain Chat With Documents on your server. plans start at just $30.

Langchain Chat With Documents

View on GitHub

Chat with documents using LLM

This is a Bellingcat hackathon submission

Team Members

Radu Ciocan - code

Ana State - design

Tool Description

A chat interface that allows users to upload PDF/DOCX documents and and chat with them using ChatGPT as the large language model.

https://user-images.githubusercontent.com/4984377/233852126-6828f7b6-cfc3-485c-a893-c2ce9e6b345f.mp4

Installation

  1. Make sure you ave installed Node v18 or later
  2. Download the tool's repository using the command:
git clone [email protected]:ciocan/langchain-chat-with-documents.git
  1. Move to the tool's directory and install the tool
cd langchain-chat-with-documents
npm install
  1. Copy the .env.example into .env file and add the following variables:
WEAVIATE_HOST= # do not use https:// just the domain like bellingcat-xxx.weaviate.network
WEAVIATE_API_KEY=

# cloudflare r2
CLOUDFLARE_ACCOUNT_ID=
CLOUDFLARE_SECRET_KEY=
CLOUDFLARE_SECRET_ACCESS_KEY=

# open ai key
OPENAI_API_KEY=

Weaviate is an open source vector database where the documents are vectorized and indexed. You can install it locally or use their free cloud.

Cloudflare R2 is a object storage solution compatible with AWS S3. They have a free tier of 10gb. More info

Signup for an OpenAI API key here

  1. Start the tool
npm run dev

Tech Stack

This is a T3 Stack project bootstrapped with create-t3-app.

Additional libraries:

  • Zustand - Used for state management
  • Mantine UI - Used for awesome UI components
  • LangChain - Used for interacting with the LLM model (OpenAI)

High Level Architecture

architecture