Skip to content

ru Proxy

dilyararimovna edited this page May 9, 2023 · 1 revision

Прокси

Диалоговые системы усложняются по мере развития области НЛП. Модульная архитектура позволяет использовать множество различных Модели понимания естественного языка (NLU) для аннотаций высказываний и модели генерации естественного языка (NLG) для генерации ответов, что увеличивает потребление ресурсов каждой диалоговой системой.

В Dream Platform мы используем модульную архитектуру наряду с подходом, основанным на распределении. Каждая диалоговая система созданные из представленных компонентов, которые в основном являются универсальными строительными блоками. Основной дистрибутив assistants_dists/dream использует десятки компонентов, в том числе на основе нейронных сетей (на основе NN). которые делают дистрибутив очень ресурсоемким. Другие дистрибутивы содержат меньшее количество компонентов, но все же часто используют несколько компонентов на основе NN каждый.

Поэтому для удобства пользователей мы предоставляем использование прокси. Мы сняли компоненты с основного дистрибутив assistants_dists/dream на наших собственных серверах и предоставляем вам возможность их использовать. Чтобы сохранить единообразие, прокси-компоненты поднимаются как локальные контейнеры, но исходные контейнеры которые определены в assistants_dists/dream/docker-compose.override.yml (и других файлах, таких как dev.yml) перезаписываются облегченными прокси-контейнерами в assistants_dists/dream/proxy.yml. Например, вместо оригинального контейнера на основе NN, который требует GPU для быстрого вывода, прокси-система позволяет поднимать только легкие контейнеры, которые перенаправляют ввод с вашей стороны на наши сервера и возвращает вывод из них. Недостатки использования прокси: увеличивается время отклика в зависимости от вашего интернет-соединения вы не можете видеть логи оригинальных контейнеров (поскольку журналы являются частью контейнера, а не прокси), а для внесения изменений в проксируемый компонент приходится поднимать его локально без прокси на своей стороне.

Важное примечание! Контейнеры с проксированием обычно соответствуют ветке main (последняя версия). Примечания к выпуску можно найти [здесь] (https://github.com/deeppavlov/dream/releases). Находясь на ранних стадиях, иногда нам приходится вносить кардинальные изменения. Поэтому, если вы видите, что ваши прокси-контейнеры возвращают ошибки, обновите и объедините последняя «основная» ветка из исходного репо в вашу ветку в вашей пользовательской ветке репо.