# Плагин перевода: LM Studio Для работы плагина необходимо загрузить и запустить [LM Studio](https://github.com/LostRuins/koboldcpp), загрузить модель, которая будет использоваться для перевода, настроить параметры модели и открыть модель. ## Параметры плагина * **custom_url** - адрес и порт, где запущен KoboldCpp. Если он запущен на том же компьютере, что сервис и не изменялся порт (вкладка Network в настройках KoboldCpp), ничего менять не нужно. * **prompt** - инструкция для модели для перевода текста. В общем виде, инструкция определяет, что модель является переводчиком, и просит перевести текст с одного языка на другой. Подробнее описано [здесь](../faq.md), в пункте **Как составить prompt для модели**. * **prompt_no_think_postfix** - добавляет в запрос постфикс `/no_think`, чтобы выключить режим размышления модели. * **prompt_postfix** - добавляет в запрос указанный в параметре постфикс. Например, если нужно выключить режим размышления, но постфикс `/no_think`, который добавляет параметр `prompt_no_think_postfix` не подходит, так как используется другое ключевое слово. * группа параметров **special_prompt_for_model** - можно указать особую инструкцию по переводу для специфичной модели. Формат `"имя_модели_в_нижнем_регистре": "Специальная инструкция для перевода"`. Имя модели выводится в логах при старте плагина в таком формате: `Success init translation plugin: 'lm_studio'. Model: nemo_12b_gguf`. Имя модели - `nemo_12b_gguf`, обязательно в нижнем регистре. * группа параметров **use_library** - параметры, включающую интеграцию с LM Studio через библиотеку, а не через REST - дает больше возможностей. * * enabled - включен или выключен режим работы с использованием библиотеки * * model - если здесь указана модель, и в LM studio в момент старта приложения не будет эта модель загружена - приложение загрузит модель с указанными ниже параметрами. Имя модели можно узнать в LM studio, вкладка моделей, столбец `LLM`. * * model_context_length - длина контекста при загрузке модели. Большой контекст позволяет работать с текстами большего размера, но расходует память. * группа параметров **parallel_processing** - параметры, позволяющие выполнять параллельный перевод на нескольких видеокартах * * enabled - включена или выключена параллельная обработка. Более подробно - в этом документе, в разделе _Как работает параллельная обработка на нескольких видеокартах_. Кроме этого параметра должен быть включен параметр `use_library.enabled` и указана модель в `use_library.model`. * * enabled_gpu_numbers - номера видеокарт в системе, на которых будет происходить обработка. Номер и имя видеокарты указывается при старте приложения в логе, вида `INFO GPU #0: NVIDIA GeForce RTX 4090`. `0` - указываемый в параметре номер. * опциональная группа параметров **text_processing_params** * опциональная группа параметров **text_split_params** * опциональная группа параметров **translation_params** Про опциональные группы более подробно - [здесь](../options.md), в разделах **Настройки core** и **Переопределение групп параметров в настройках плагинов переводов**. * опциональная группа параметров **text_processing_params** * опциональная группа параметров **text_split_params** * опциональная группа параметров **translation_params** Про опциональные группы более подробно - [здесь](../options.md), в разделах **Настройки core** и **Переопределение групп параметров в настройках плагинов переводов**. ### Как работает параллельная обработка на нескольких видеокартах **Имеет смысл включать только при наличии в системе более одной видеокарты!** Кроме этого параметра должен быть включен параметр `use_library.enabled` и указана модель в `use_library.model`. Предположим, что указаны параметры модели `"use_library"."model": "model_name"` и устройства в `enabled_gpu_numbers: [0, 1]`. Тогда приложение при старте проверит, загружены ли в LM Studio модели `model_name--parallel-gpu#0` и `model_name--parallel-gpu#1`, если не загружены - попытается загрузить. Параметры загрузки указаны так, чтобы каждая модель приоритетна была загружена на соответсвующую видеокарту. Очень желательно, чтобы модели и их контекст полностью помещались в памяти видеокарты.