
яндекс · Москва · 29 мая
Алиса — сложный высоконагруженный сервис на базе больших языковых моделей. С каждым годом Алиса становится умнее и помогает пользователям решать всё более сложные задачи.
Каждая модель хорошо справляется с одной задачей, но обучить одну универсальную модель, которая идеально решит все задачи, очень сложно. Поэтому мы учим модели работать друг с другом, превращая их в агентов. Каждый агент специализируется на чём-то своём: один ищет информацию в интернете, другой управляет браузером, третий работает с файлами или приложениями.
Алиса состоит из множества компонентов и работает на большом семействе платформ. Мы хотим создать новый рантайм (единый и гомогенный), который будет отвечать современным требованиям и сможет поддерживать и долгие агентские задачи, и запросы, требующие мгновенного ответа.
Наша команда занимается инфраструктурой диалогового движка Алисы, её ядровой части, которая обеспечивает взаимосвязь компонентов. О том, как мы обеспечили надёжную работу агентов в Алисе, можно почитать на Хабре.
Проектирование архитектуры Алисы
Вам предстоит проектировать прозрачную и понятную архитектуру. Алиса должна работать единообразно с долгими задачами (десятки минут) и с быстрыми запросами (сотни миллисекунд), причём без лишнего оверхеда. Входные данные: файлы, картинки, голос, текст.
Разработка и поддержка высоконагруженного рантайма
Вы будете разрабатывать и поддерживать рантайм, который позволяет прокачивать и принимать систему в целом и любой её компонент (модели, тулы, агенты). Алиса должна обрабатывать десятки тысяч RPS и при этом оставаться надёжной (мы держим 9999), эффективной и масштабируемой.
Больше о бэкенде в Яндексе — в канале Yandex for Backend
* Разрабатывали распределённые системы, в которых важно управление состоянием, потоками данных и отказоустойчивостью
* Умеете проектировать высоконагруженные серверные системы с жёсткими требованиями к latency и стабильности
* Понимаете, как строятся асинхронные пайплайны с большим количеством сетевых вызовов (оркестрация LLM, тулов и внешних вызовов)
* Готовы писать на C++
* Работали с Temporal или другой системой оркестрации
* Интересуетесь LLM и представляете, как они работают