Этот проект представляет собой систему разговорного поиска генерации (RAG), которая позволяет пользователям загружать PDF-файлы, извлекать контент и задавать вопросы о загруженном контенте. Система отслеживает историю чата и контекстуализирует пользовательские вопросы на основе прошлого разговора, чтобы предоставить соответствующие ответы.
Приложение построено с помощью streamlit для пользовательского интерфейса, интегрирует GROQ для LLM (языковая модель) и Chroma в качестве хранилища вектора для обработки документов и поиска. Разговорной поток поддерживается с историей чата, чтобы обеспечить государственное количество вопросов.
HuggingFaceEmbeddings для создания встроенных документов и получения соответствующего контента. Чтобы запустить этот проект, вам нужно следующее:
Клонировать репозиторий:
git clone https://github.com/yourusername/conversational-rag-with-pdf.git
cd conversational-rag-with-pdfСоздайте виртуальную среду:
python3 -m venv venv
source venv/bin/activate # On Windows, use `venvScriptsactivate`Установите требуемые зависимости:
pip install -r requirements.txtНастройка переменных среды:
Создайте файл .env в корневом каталоге и добавьте свои клавиши API:
touch .env Внутри файла .env добавьте следующее:
HF_TOKEN=your_huggingface_token
GROQ_API_KEY=your_groq_api_keyЗапустите приложение:
streamlit run utils.pyКогда вы запустите приложение, вам сначала нужно будет ввести ключ API Groq. Это необходимо для выполнения языкового моделирования и ответа на вопросы.
Нажмите кнопку «Выберите файл PDF» , чтобы загрузить один или несколько файлов PDF. Содержание от PDF -файлов будет обработан и разделен на куски для эффективного поиска.
После загрузки PDF -файлов вы можете задать вопросы, связанные с содержанием загруженных файлов. Помощник ответит на основе контекста, предоставленного PDFS и предыдущей истории чата.
Система отслеживает историю разговора. Вы можете просмотреть историю сеанса, и помощник использует эту историю, чтобы ответить на последующие вопросы в контексте.
Gemma2-9b-It .Если вы столкнетесь с такими проблемами, как ошибки ключей API или проблемы с загрузкой файлов, убедитесь, что:
pip install -r requirements.txt .