Этот репозиторий облегчает обучение языковой модели на уровне символов или слов исключительно на основе сообщений чата WhatsApp. После обучения модели можно начать синтетический разговор с обученными в чат-группе WhatsApp.
assets/input/chat.txt
— это просто заполнитель, который нужно заменить фактическим корпусом сообщений чата. |-- assets
| |-- input
| | |-- chat.txt
| |-- output
| | |-- contacts.txt
| | |-- vocab.txt
| | |-- train.pt
| | |-- valid.pt
| |-- models
| | |--model.pt
|-- src
| |-- chat.py
| |-- model.py
| |-- preprocess.py
| |-- train.py
| |-- utils.py
|-- config.py
|-- run.py
assets/input/chat.txt:
входной файл должен представлять собой экспортированный чат WhatsApp (без мультимедиа).assets/output/:
закодированные данные обучения/проверки и обученная модель будут записаны в эту локализацию.assets/models/model.pt:
Обученный объект модели pytorch.src/preprocess.py:
преобразует сообщения чата в закодированные тензоры PyTorch. Данные разделены на обучающий и проверочный наборы.src/model.py:
определяет класс языковой модели.src/train.py:
содержит код для обучения языковой модели.src/chat.py:
содержит функцию для диалогового взаимодействия с моделью.src/utils.py:
другие полезные служебные функции.run.py:
основной скрипт с анализатором аргументов для вызова любого из трех действий («предварительная обработка», «обучение», «чат»).config.py:
записываются параметры предварительной обработки и обучения модели. git clone https://github.com/bernhard-pfann/lad-gpt.git
cd lad-gpt
pip install -r requirements.txt
Чтобы полностью использовать этот проект, вам понадобится файл .txt, содержащий сообщения из чата WhatsApp. Вот шаги для экспорта группового чата WhatsApp в файл .txt:
Получив файл .txt, поместите его в каталог assets/input
, chat.txt
называетсяchat.txt. Тогда вы готовы к работе!
Как только входные данные будут готовы, чаты необходимо закодировать в числовые тензоры. Закодированные данные также делятся на обучающий и проверочный наборы:
python run.py preprocess
Обучить языковую модель с нуля и исключительно на основе закодированных данных чата. Установите --update
, если вы хотите продолжить обучение уже существующей модели.
python run.py train --update
Чтобы инициализировать чат с обученной моделью:
python run.py chat