MPT-30B — это мощная модель с открытым исходным кодом, обученная с длиной контекста 8 КБ и превосходящая оригинальную GPT-3. Объявление
Используя квантованную версию MPT-30B, вы можете общаться со своими документами конфиденциально на своем компьютере без подключения к Интернету.
Минимальные системные характеристики: 32 ГБ оперативной памяти и python 3.10
.
pip install poetry
git clone {insert github repo url}
poetry install
.env.example
в .env
cp .env.example .env
python download_model.py
или посетите здесь и загрузите файл. Затем создайте папку models
в корневом каталоге и поместите туда файл.
По умолчанию это репозиторий — папка source_documents
для хранения документов, которые будут загружены. Вы можете заменить документы там своими собственными.
Поддерживаемые расширения документов включают:
.csv
: CSV,.docx
: документ Word,.doc
: документ Word,.eml
: электронная почта,.epub
: EPub,.html
: HTML-файл,.md
: уценка,.pdf
: формат переносимого документа (PDF),.pptx
: документ PowerPoint,.txt
: текстовый файл (UTF-8),Затем запустите этот скрипт для приема
python ingest.py
Вывод должен выглядеть так:
Creating new vectorstore
Loading documents from source_documents
Loading new documents: 100% | ██████████████████████ | 1/1 [00: 01< 00:00, 1.73s/it]
Loaded 1 new documents from source_documents
Split into 90 chunks of text (max. 500 tokens each)
Creating embeddings. May take some minutes...
Using embedded DuckDB with persistence: data will be stored in: db
Ingestion complete ! You can now run question_answer_docs.py to query your documents
Будет создана папка db
, содержащая локальное хранилище векторов. На один документ уйдет 20-30 секунд, в зависимости от размера документа. Вы можете принять столько документов, сколько захотите, и все они будут накапливаться в локальной базе данных внедрений. Если вы хотите начать с пустой базы данных, удалите папку db
.
Примечание. Во время процесса приема данные не покидают вашу локальную среду. Вы можете выполнить импорт без подключения к Интернету, за исключением первого запуска сценария импорта, когда модель внедрения загружается.
Запустите эти скрипты, чтобы задать вопрос и получить ответ из ваших документов:
Сначала загрузите командную строку:
poetry run python question_answer_docs.py `
или
make qa
Во-вторых, подождите, пока в командной строке появится запрос « Enter a question:
ввод». Введите свой вопрос и нажмите Enter.
Введите exit
чтобы завершить сценарий.
Примечание. В зависимости от памяти вашего компьютера, запроса на подсказку и количества фрагментов, возвращенных из исходных документов, модели может потребоваться от 40 до 300 секунд, чтобы ответить на ваш запрос.
Вы можете использовать этого чат-бота без подключения к Интернету.
[Необязательно] Запустите простой чат-бот
Если вы не хотите общаться со своими документами и предпочитаете просто взаимодействовать с чат-ботом MPT-30b, вы можете пропустить этап приема и просто запустить сценарий чат-бота.
poetry run python chat.py `
или
make chat
Благодарность abacaj за исходный шаблон здесь. Благодарность imartinez за логику приема PrivateGPT и руководство по документации здесь. Благодарность TheBloke за модель MPT-30B GGML здесь.