Skip to content

alejandrosoares/WebChat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WebChat

WebChat is a chat bot that extracts and cleans the content of a website, allowing you to interact with it through a conversational interface.

Features

  • Ensemble retriever: combines keyword and semantic search to retrieve the source documents.
  • Maximum Marginal Relevance: re-ranks source documents maximizing the diversity and reducing redundancy.
  • Reorder: places the most relevant documents earlier in the context to avoid the lost-in-the-middle problem.

Installation

  1. Set the following environment variables in an .env file in project directory:
OPENAI_API_KEY
WEBSITE_NAME
WEBSITE_URL
WEBSITE_DESCRIPTION
  1. Create a virtual environment and install dependencies:
pip install -r requirements.txt
  1. Ingest the website content:
python src/ingest
  1. Run the streamlit web app:
streamlit run src/app.py

Screenshot and demo video

Chat Screenshot

Demo Video

References

  1. LangChain Documentation: https://docs.langchain.com/

  2. Streamlit Documentation: https://docs.streamlit.io/

  3. Platzi LangChain Course for Document Management and Retrieval: https://platzi.com/cursos/langchain-documents/

About

A chatbot that answers questions about website content. Built using Python and LangChain.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages