* Prepare for docker, documentation. * Prepare for docker, documentation. * Prepare for docker, documentation. --------- Co-authored-by: APodoinikov <APodoynikov@detmir.ru>
4.1 KiB
Плагин перевода: nllb-200 Ctranslate2
Для работы плагина необходимо загрузить модель madlad400 в формате ctransate2, или найти оригинальную модель и сконвертировать. После этого необходимо положить в папку model проекта (можно выбрать другой, но в дальнейшем предполагается, что использовалась эта папка).
Есть несколько моделей с разным числом параметров, чем больше параметров - тем лучше перевод.
Можно загрузить следующие модели - nllb-200-1.3B-ct2-float16, nllb-200-3.3B-ct2-float16 или любые другие подходящего формата.
Шаги по загрузке и запуску модели, на примере nllb-200-3.3B-ct2-float16:
- Перейти в папку
modelsсервиса. - Создать папку с именем модели -
nllb-200-3.3B-ct2-float16. - Загрузить в эту папку все файлы по ссылке - https://huggingface.co/JustFrederik/nllb-200-3.3B-ct2-float16/tree/main.
- Указать параметры модели model и tokenizer в настройках плагина -
models/nllb-200-3.3B-ct2-float16.
Параметры плагина
-
compute_type - точность загруженных данных для перевода. По умолчанию -
bfloat16- самый лучший вариант, но требует много памяти видеокарты. Можно указать, например,int8_bfloat16- это потребует в 2 раза меньше памяти. Модуль будет загружена в оперативную память, сделан перерасчет, и после этого результат загружен в память видеокарты. -
cuda -
true- использовать видеокарту (быстрее),false- использовать cpu (медленнее). -
cuda_device_index - если в системе несколько видеокарт, можно выбрать ту, в которую будет загружена модель. Номер и имя видеокарты указывается при старте приложения в логе, вида
INFO GPU #0: NVIDIA GeForce RTX 4090.0- указываемый в параметре номер. -
max_batch_size - объединение запросов для ускорения обработки. Повышение параметра ускоряет процесс, но требует больше памяти.
-
model - путь к модели.
models/model-nameговорит о том, что модельmodel-nameнаходится в папкеmodelsпроекта. -
text_split_params - этот параметр переопределяет глобальные параметры (подробнее здесь), и задает разбивку текста по предложениям. Очень рекомендуется разбивать именно так, потому что при отправке нескольких предложений сразу, очень велика вероятность, что часть предложений будет потеряна моделью.
Конвертация модели
Чтобы конвертировать модель facebook/nllb-200-3.3B, нужно установить скрипт конвертации ct2-transformers-converter
и выполнить в консоли примерно такой запрос:
ct2-transformers-converter --model facebook/nllb-200-3.3B --quantization bfloat16 --output_dir nllb-200-3.3B-ct2-bfloat16