Search
Write a publication
Pull to refresh
87
0
Рудак Алексей @Aliaksei_Rudak

Основатель компании Lingvanex (www.lingvanex.com)

Send message

Как мы построили свой инструмент для работы с LLM

Level of difficultyEasy
Reading time9 min
Views3K

Привет, Habr! Меня зовут Алексей Рудак, и я основатель компании Lingvanex — компании, которая уже 7 лет делает решения для машинного перевода и распознавания речи.

В этой статье я бы хотел рассказать про наш инструмент для тренировки языковых моделей, который шесть лет назад родился из простого набора скриптов. Но постепенно усложняяcь, он стал включать в себя функции разметки данных, фильтрации датасетов, генерации данных и тестирования. В какой-то момент инструмент стал настолько функциональный, что я решил сделать ему красивый UI и назвать его - Data Studio.

Итак, что же такое Data Studio ?

Data Studio — это инструмент для работы с задачами обработки естественного языка (NLP), который мы используем в основном для улучшения качества перевода текста.

С помощью Data Studio можно обучать модели перевода, настраивать различные параметры для этих тренировок, токенизировать данные, фильтровать их по различным параметрам, собирать метрики, создавать данные для обучения, тестирования и валидации и многое другое.

Общий процесс создания языковой модели для перевода выглядит так:

1) Предобработка данных: этап подготовки данных перед обучением модели.

2) Фильтрация с использованием структурных и семантических фильтров.

3) Сбор общего набора данных: удаление избыточности, равномерное распределение тем и длин, сортировка.

4) Тегирование для классификации данных.

5) Загрузка общего набора данных в Data Studio для проверки.

6) Создание данных для валидации и тестирования модели.

7) Обучение модели.

Читать далее

Переводчик документов

Level of difficultyEasy
Reading time5 min
Views1.4K

Привет, Habr! Меня зовут Алексей Рудак, и я основатель компании Lingvanex — команды, которая уже почти десять лет прокладывает путь в мире машинного перевода и распознавания речи. За это время мы достигли определенных результатов: наш API умеет мгновенно переводить тексты на более чем 100 языков, используя языковые модели с 500 миллионами параметров, оптимизированные специально под задачу быстрого и качественного перевода. 

Сегодня я поделюсь тем, как мы смогли удовлетворить еще одну ключевую потребность пользователей и расскажу, почему наше решение для перевода документов может стать важным инструментом в вашей работе с языками..

Читать далее

Вычисление функции потерь и градиентов в AI переводчике

Level of difficultyMedium
Reading time10 min
Views792

Привет, Хабр!

Меня зовут Алексей Рудак, я основатель компании Lingvanex, которая разрабатывает решения в области машинного перевода и транскрипции речи. Продолжаю цикл статей о том, как устроен переводчик на нейронных сетях изнутри. И сейчас хочу рассказать про работу функции потерь. Для тренировки модели используется opensource фреймворк OpenNMT-tf.

Статья предоставляет всесторонний обзор вычисления функции потерь в машинном обучении, особенно в контексте моделей последовательностей. Она начинается с подробного описания того, как матрица логитов, генерируемая после преобразований в декодере, обрабатывается через функцию cross_entropy_sequence_loss. Эта функция играет ключевую роль в измерении расхождения между предсказанными выводами и фактическими метками. В статье описаны шаги, включая преобразование логитов в подходящий формат, применение сглаживания меток для создания сглаженных меток и вычисление кросс-энтропийных потерь с использованием softmax. Каждый этап подробно объясняется, чтобы было понятно, как каждый компонент вносит вклад в общую оценку потерь.

Кроме вычисления потерь, статья рассматривает механизм выравнивания, используемый для улучшения работы модели. Описано, как значение потерь корректируется на основе направляемого выравнивания, что позволяет модели лучше учитывать взаимосвязи между исходными и целевыми последовательностями. Также подробно рассматривается процесс вычисления и применения градиентов, иллюстрируя, как оптимизатор обновляет веса модели для минимизации потерь.

Читать далее

Транскрипция речи. Офлайн и без ограничений

Level of difficultyEasy
Reading time4 min
Views2.8K

Привет, Хабр!

Меня зовут Алексей Рудак, я основатель компании Lingvanex. Более 8 лет мы делаем перевод и распознавание речи удобными, быстрыми и безопасными.

Сегодня расскажу, как мы прокачали нашу транскрипцию речи, и почему это может пригодиться вам. Наш продукт Lingvanex Speech Recognition уже сейчас даёт результат уровня Whisper Large v3, а по ряду задач — даже превосходит его:

Читать далее

Оптимизация нейронных сетей для AI — переводчика

Level of difficultyMedium
Reading time6 min
Views1.2K

Всем привет! Меня зовут Алексей Рудак, и я – основатель компании Lingvanex, которая уже 8 лет занимается решениями в области машинного перевода и транскрипции речи. 

В этой статье рассматриваются несколько подходов, которые помогают повысить эффективность и качество языковых моделей для перевода. В качестве основы для тренировки моделей мы используем OpenNMT-tf.

Мы поговорим о методах, которые способствуют постепенной настройке параметров модели, что может привести к более стабильным процессам обучения. Эти техники позволяют тонко настроить процесс обновления весов модели, что улучшает сходимость и в конечном итоге дает лучшие результаты.

Кроме того, в статье обсуждаются стратегии управления темпами обучения, которые играют ключевую роль в том, насколько быстро модель обучается. Понимание того, как правильно корректировать темп обучения с течением времени, может существенно повлиять на динамику обучения и сделать модели более быстрыми и точными.

Наконец, мы затронем важность управления контрольными точками, что позволяет эффективнее использовать обученные модели, усредняя веса из нескольких сессий обучения. Это помогает снизить риск переобучения и обеспечивает сохранение лучших характеристик модели, приобретенных в процессе обучения.

Читать далее

API для перевода на 100+ языков

Level of difficultyEasy
Reading time4 min
Views1.5K

Всем привет! Меня зовут Алексей Рудак, и я – основатель компании Lingvanex, которая уже 8 лет занимается решениями в области машинного перевода и транскрипции речи. 

За последний год мы сильно переработали наше API переводчика, сделав его максимально удобным и быстрым для интеграции. Формат запроса теперь совпадает с  Google, поэтому переход на наше API занимает в районе 5 минут. Более того, сильно выросло качество перевода. Наши языковые модели включают в районе 500 млн параметров и оптимизированы только на одну задачу - перевод.

Наша ближайшая цель - сделать сделать лучший перевод на популярных языковых парах и постепенно мы к ней движемся. Каждые 2 недели выходит апдейт, который повышает качество перевода. Почему две недели ? Это среднее время одной тренировки языковой модели. Всего у нас 240 языковых моделей размером от 120 до 560 mb, которые можно развернуть локально даже на слабых игровых видеокартах типа RTX 3060.

Ниже для примера представлены результаты тестов качества для перевода с английского на арабский язык. Сейчас перевод на арабский больше всего интересен наши клиентам, которые ходят зайти на этот рынок. Стоит отдельно отметить результаты тестов  на датасетах (NTRex-128, Flores-101, WMT24++) так как это наиболее распространенные виды тестов среди ученых и бизнеса. Зеленым цветом выделены числа, где у нас лучше качество, чем у конкурентов, красным - где хуже. В колонке Lingvanex качество сравнивается между нашей новой и предыдущей моделью.

Читать далее

Исследование: заменит ли AI писателей?

Level of difficultyEasy
Reading time7 min
Views1K

Занимаясь компьютерной лингвистикой в Lingvanex и организовывая поэтические вечера в Варшаве, я задумался: а что, если люди и AI будут выступать по очереди? Сначала генерируем стихи или шутки, затем озвучиваем их с помощью сервисов. Или создаём музыку через Suno на основе сгенерированных стихов и потом слушаем. Насколько качественно AI умеет сочинять? Может ли он конкурировать с человеком?

Я решил провести небольшое творческое исследование и поделиться его результатами в этой статье. Буду тестировать не только генерацию текстов, но и преобразование стиля. Для всех экспериментов использую ChatGPT-4o.

Читать далее

Как мы тестировали суперкомпьютер DGX-H100 и что из этого вышло

Level of difficultyEasy
Reading time7 min
Views2.3K

Всем привет! Меня зовут Алексей Рудак, и я – основатель компании Lingvanex, которая уже 7 лет занимается решениями в области машинного перевода и транскрипции речи. 

Время с момента моей первой статьи на Хабре прошло незаметно. Это были годы амбиций, упорства и стремления сделать лучший в мире переводчик, не имея в своем распоряжении тех ресурсов, которые доступны крупным корпорациям. Мне всегда казалось, что небольшие инженерные команды при правильном руководстве, мотивации и ограниченном финансировании, могут быстро создавать решения мирового уровня, порой буквально «из песка и палок». По крайней мере среди моих знакомых было несколько таких случаев, которые сделали их миллионерами. А что будет, если им дать еще суперкомпьютеры? А если дать им размеченные датасеты ? В этой статье я бы хотел порассуждать на эту тему, тем более нашей команде подвернулся интересный случай, о котором я хотел рассказать.

Три месяца назад на мой email пришло предложение с возможностью бесплатного теста вычислительной станции от Nvidia DGX-H100. Одна из компаний продавала эти системы и искала потенциальных покупателей из числа тех, кто тренирует большие языковые модели, – а это как раз мы. Это было предложение, от которого нельзя было отказаться. Все наши предыдущие сервера не шли в какое-либо сравнение с той производительностью, которая оказалась в наших руках. 

Диапазон цены на DGX-H100 составляет от 250 до 350 тыс долларов. Ее заявленная производительность на fp8 составляет около 32 петафлопс (petaFlops). Мы тренируем наши модели для переводчика на fp16 и получаем около 16 petaFlops под задачи. Но что это означает для нас? Для этого стоит вернуться в 2017 год…

Читать далее

Большое тестирование видеокарт для машинного обучения

Level of difficultyEasy
Reading time8 min
Views12K

Всем привет! Меня зовут Алексей Рудак и я основатель компании Lingvanex, которая занимается решениями в области машинного перевода и транскрипции речи. Для нашей работы мы постоянно тренируем языковые модели. Наша команда использует десятки разных видеокарт, выбранных под разные задачи: где-то нужна мощная станция DGX, а где-то достаточно старой игровой карты типа RTX 2080Ti.  Выбор оптимальной конфигурации GPU сэкономит вам не только время на тренировку, но и деньги.

Интересно то, что в интернете довольно мало статей с тестами GPU именно для скорости тренировки языковых моделей. В основном встречаются только тесты inference. Когда вышел новый чип H100, в отчете NVidia было указано, что при тренировке он быстрее A100 до девяти раз, но для наших задач новая карта оказалась всего на 90% быстрее старой. Для сравнения: у наших облачных провайдеров разница в цене между этими GPU составляла 2 раза, поэтому переходить на новый H100 для экономии денег смысла не было.

В дополнение к этому мы брали на тест станцию DGX, которая состоит из 8 видеокарт A100 80GB и стоит 10 тысяч долларов в месяц. После теста стало ясно что соотношение цена / производительность этой станции нас полностью не устраивает и за эти деньги мы можем взять 66 x RTX 3090, которые в сумме принесут гораздо больше пользы.

Наши языковые модели для перевода имеют до 500 миллионов параметров (в среднем от 100 млн до 300 млн). Возможно, если значительно увеличить кол-во параметров, то соотношение цена / производительность от DGX станет лучше. На данный момент мы не тренируем большие языковые модели, которые могут переводить сразу между всеми языками во всех вариациях, а применяем отдельные языковые модели под каждую языковую пару, например англо-немецкую. Каждая из таких моделей занимает от 120 до 300 Mb.

Читать далее

Переводчик ChatGPT против моего: кто кого?

Level of difficultyEasy
Reading time4 min
Views5.7K

Я видел много статей и восхищенных отзывов, в которых переводчик ChatGPT не уступает по качеству DeepL и Google, а иногда их даже превосходит. Как основателю компании Lingvanex, которая уже 6 лет занимается разработкой собственных решений по переводу, мне стало интересно насколько все это правда, а также насколько наше решение сопоставимо с ChatGPT. Нужно ли мне бояться такого сильного конкурента?

Для сравнения качества перевода мы подготовили тестовые датасеты на семи языковых парах:

Читать далее

Как я потратил 1 000 000$, чтобы сделать свой переводчик. Часть 3

Level of difficultyEasy
Reading time9 min
Views11K

Неделю назад исполнилось 6 лет, как я открыл фирму, чтобы заниматься машинным переводом. За это время многое произошло. Сейчас в команде 40 человек, 120 серверов и более миллиона пользователей. Но так было не всегда. Помню те времена, когда нас было двое. Мы сидели в маленькой комнате без вентиляции, и каждый час нужно было открывать окна, чтобы совсем не задохнуться. Мы были полны надежд, идей и большого желания создать переводчик, который сможет конкурировать с Google.

В 2017 году у нас был прототип под Linux, который уже что‑то переводил. Под iOS собрать тоже удалось. А вот с Windows оказалось не все так просто. Клиенты хотели установку под эту ОС, и нужно было действовать. Для этого пришлось бы перекомпилировать много библиотек с кучей зависимостей, но у меня не было такого опыта. Когда я пошёл на сайты фриланса и разместил несколько объявлений, откликнулось всего нескольких заявок. Cтало ясно, что задача не такая простая, какой кажется.

В интернете было много предложений от аутсорс компаний о разработке проектов любой сложности. Так как я по образованию инженер‑программист, то заявление о любой сложности вызывало удивление, но в то же время и интерес. Было решено попробовать! Cо стороны всё выглядело серьёзно, общение велось от имени юридического лица. Наша компания хочет заказать разработку, но сначала требуется получить оценку того, как долго эта задача будет решаться.

Стоит отметить, что компании, с которыми я говорил, были разными по размеру. Одна из них — известный бренд и лидер в Восточной Европе. Я написал менеджеру по продажам, и со мной обещали связаться. В течение недели я не получил ответа, написал им еще раз, и мне еще раз ответили, что точно со мной свяжутся. Не связались. Ну и ладно!

Читать далее

Потратил 1 000 000 $, чтобы сделать свой переводчик. Продолжение истории

Reading time7 min
Views9.8K

Начало этой истории тут:

https://habr.com/ru/post/492524/

 Вступление

После первой статьи мне написало несколько сотен человек. Надеюсь, ответил всем. В основном были вопросы, как заработать на мобильных приложениях, как уйти из найма в свой бизнес и т.д. Через год несколько человек сказали, что их жизнь очень изменилась в лучшую сторону. Значит, советы помогли и время было потрачено c пользой.

Если выделить самый главный совет, то он будет следующий:

Читать далее

Как я заработал 1 000 000 $ без опыта и связей, а потом потратил их, чтобы сделать свой переводчик

Reading time20 min
Views137K

Как все начиналось


Эта история началась 15 лет назад. Работая программистом в столице, я накапливал деньги и увольнялся, чтобы потом создавать собственные проекты. Для экономии средств уезжал домой, в небольшой родной город, где работал над сайтом для студентов, программой для торговли, играми для мобильных телефонов. Но из-за отсутствия опыта ведения бизнеса это не приносило дохода, и вскоре проекты закрывались. Приходилось снова ехать в столицу и устраиваться на работу. Эта история повторилась несколько раз.

Когда у меня в очередной раз закончились деньги, наступил кризис. Я не смог найти работу, ситуация стала критической. Пришло время посмотреть на все вещи трезвым взглядом. Нужно было честно признаться себе, что я не знаю, какие ниши выбрать для бизнеса. Создавать проекты, которые просто нравятся, — путь в никуда.
Читать дальше →

Information

Rating
1,875-th
Location
Warszawa, Польша
Registered
Activity

Specialization

Chief Executive Officer (CEO)
Lead
Git
English
Software development
Database
OOP
C++