mirror of
https://github.com/illian64/llm-translate.git
synced 2026-04-28 11:49:54 +00:00
* Prepare for docker, documentation. * Prepare for docker, documentation. * Prepare for docker, documentation. --------- Co-authored-by: APodoinikov <APodoynikov@detmir.ru>
46 lines
No EOL
4.1 KiB
Markdown
46 lines
No EOL
4.1 KiB
Markdown
# Плагин перевода: nllb-200 Ctranslate2
|
||
|
||
Для работы плагина необходимо загрузить модель madlad400 в формате ctransate2,
|
||
или найти оригинальную модель и сконвертировать.
|
||
После этого необходимо положить в папку model проекта (можно выбрать другой, но в дальнейшем предполагается, что использовалась эта папка).
|
||
|
||
Есть несколько моделей с разным числом параметров, чем больше параметров - тем лучше перевод.
|
||
|
||
Можно загрузить следующие модели -
|
||
[nllb-200-1.3B-ct2-float16](https://huggingface.co/JustFrederik/nllb-200-1.3B-ct2-float16/tree/main),
|
||
[nllb-200-3.3B-ct2-float16](https://huggingface.co/JustFrederik/nllb-200-3.3B-ct2-float16/tree/main)
|
||
или любые другие подходящего формата.
|
||
|
||
Шаги по загрузке и запуску модели, на примере `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** - этот параметр переопределяет глобальные параметры (подробнее [здесь](../options.md)),
|
||
и задает разбивку текста по предложениям. Очень рекомендуется разбивать именно так,
|
||
потому что при отправке нескольких предложений сразу, очень велика вероятность, что часть предложений будет потеряна моделью.
|
||
|
||
|
||
## Конвертация модели
|
||
Чтобы конвертировать модель `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` |