Компания ED-Tech QA помощник
Этот проект является помощником по вопросам QA (ответа на вопросы), предназначенным для компании ED-Tech. Он использует векторные базы данных, современные языковые модели и пользовательские встроенные документы, чтобы предоставить точные ответы на запросы пользователей на основе предварительно определенной базы знаний.
Оглавление
- Функции
- Установка
- Использование
- Структура проекта
- Будущие улучшения
- Внося
- Лицензия
Функции
- Векторная база данных : использует FAISS для эффективного поиска сходства по всей базе знаний.
- Пользовательские встраивания : питание от Huggingfaceembeddings с использованием модели Transermers/All-Minilm-L6-V2.
- Большая языковая модель (LLM) : интегрирует модель Groq Llama3 (Llama3-8B-8192) для создания ответов на контекст.
- CSV Loader : загружает часто задаваемые вопросы или другие структурированные данные из файлов CSV, чтобы заполнить базу знаний.
- Интерфейс Streamlit : простой и интерактивный пользовательский интерфейс для задания вопросов и получения ответов.
Установка
- Клонировать репозиторий:
git clone https : // github . com / shaadclt / Ed - Tech - Company - QA - Assistant . git
cd Ed - Tech - Company - QA - Assistant
- Настройте виртуальную среду:
python - m venv venv
source venv / bin / activate # On Windows, use `venvScriptsactivate`
- Установить зависимости:
pip install - r requirements . txt
- Переменные среды: создайте файл .env в корне проекта и добавьте свой клавиша API Groq:
GROQ_API_KEY = your_groq_api_key_here
Использование
- Запустите приложение Streamlit
Создайте базу знаний: чтобы создать базу знаний из файла CSV, нажмите кнопку «Создать базу знаний».
Задайте вопрос: введите вопрос в интерфейсе Streamlit, и помощник предоставит контекстуально точный ответ на основе загруженной базы знаний.
Структура проекта
- langchain_helper.py : содержит логику для загрузки данных, создания векторной базы данных и генерации ответов.
- main.py : файл приложения Streamlit.
- faqs.csv : образец файла CSV, используемый для заполнения базы знаний.
- Требования.txt : перечисляет все необходимые пакеты Python.
- .env : хранит переменные среды, такие как клавиши API (не включенные в репозиторий по соображениям безопасности).
Будущие улучшения
- Разверните базу знаний: добавьте больше документов или источников данных.
- Модели с тонкой настройкой: отрегулируйте встроенные или LLM для более точных ответов.
- Усовершенствованный пользовательский интерфейс: улучшить интерфейс потока с помощью дополнительных функций, таких как фильтрация ответов или механизмы обратной связи.
Внося
Не стесняйтесь раскошелиться на этот репозиторий, создавать филиал функций и отправлять запрос на вытягивание для любых улучшений или исправлений ошибок.
Лицензия
Этот проект лицензирован по лицензии MIT. Смотрите файл лицензии для получения подробной информации.