davidshtian / Bedrock-ChatBot-with-LangChain-and-Streamlit

A simple and clear example for implement a chatbot with Bedrock (Claude and Mistral) + LangChain + Streamlit.
68 stars 26 forks source link

Enhanced RAG Feature #8

Closed madtank closed 4 months ago

madtank commented 4 months ago

Overview

This PR introduces significant enhancements to the Retrieval-Augmented Generation (RAG) feature in our AI model. The enhancements allow users to upload their own documents and index them either locally or on a server, enabling robust and persistent document management.

Key Changes

1.  Enhanced RAG Feature:
•   Users can now upload their documents and have them indexed persistently at the chosen location.
•   The indexed documents do not need to be re-uploaded or re-indexed, enhancing the system’s efficiency.
•   Users can continually add more documents to the existing index, making the system increasingly robust and knowledgeable over time.
2.  Usage Instructions:
•   To use the enhanced RAG feature, select RAG from the Options dropdown in the chatbot interface, and follow the prompts to upload and index your documents.
3.  Updated README:
•   Added a new section for the Enhanced RAG feature.
•   Detailed the process for indexing and searching documents.
•   Included images to guide users on indexing and searching using RAG.
•   Clarified the steps to use the bedrock_indexer.py script for indexing documents.

Files Changed

•   README.md:
•   Added a new section for the Enhanced RAG feature.
•   Detailed the process for indexing and searching documents.
•   Included visual aids for better understanding.
•   bedrock/bedrock_chatbot.py: Updated the chatbot to integrate the enhanced RAG feature.
•   bedrock/bedrock_embedder.py: Adjusted to support the new document indexing process.
•   images/index_files_RAG.png: Added image for visual aid in the README.
•   images/search_RAG.png: Added image for visual aid in the README.
davidshtian commented 4 months ago

Impressive updates! Thanks a lot~