Реклама

Маршрутизатор языковых моделей изнутри. От вектора задачи до судьи и обучения на отзывах

#Маршрутизатор #Раннее #FAIRouter #Читать
Маршрутизатор языковых моделей изнутри. От вектора задачи до судьи и обучения на отзывах

Раннее мы описывали библиотеку FAIRouter для маршрутизации запроса к оптимальному исполнителю. В текущей редакции поддерживаются только LLM, но класс исполнителей планируем расширять также на инструменты и агентов. Но тема того какая математика стоит за всем этим осталась не до конца раскрыта. Читать далее

Ранее мы рассказывали о библиотеке FAIRouter, которая направляет запрос к наиболее подходящему исполнителю. Пока исполнителями могут быть только языковые модели (LLM), но в дальнейшем мы планируем добавить инструменты и агентов. В той статье вопрос о том, как именно маршрутизатор решает, кому отдать задачу, был затронут лишь вскользь. Поэтому было принято решение посвятить математике отдельную статью и разобрать ее по шагам: от признаков задачи до обучения на отзывах.

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

Общая логика системы приведена на рисунке 2.

Задача приходит в виде текста на естественном языке. Сначала из нее извлекается спецификация, т.е. описание того, каким должен быть ответ: объем, структура, стиль, язык и так далее. После чего строится векторное представление задачи, и этот вектор передается всем объектам маршрутизации. Каждый объект возвращает логит, т.е. ненормированную оценку того, насколько хорошо он справится с задачей. Из них отбираются K лучших, по их оценкам с помощью функции softmax с температурой строится распределение вероятностей, и исполнитель выбирается случайно по этому распределению. Выбор сохраняется, для того чтобы после отзыва пользователя или автоматического критика можно…