SchemaRouter сократил токены в RAG-агентах почти в 9 раз, ускорив ответы в 2,7 раза
Исследователи представили SchemaRouter, лёгкий маршрутизирующий слой для гетерогенных агентных RAG-систем (retrieval-augmented generation), которые одновременно опрашивают внешние API, внутренние базы данных, векторные и графовые хранилища. Авторы указывают, что два стандартных подхода к выбору инструментов, показывать ИИ-агенту описания всех доступных инструментов целиком или отбирать их только по векторному сходству, приводят к двум дорогостоящим сбоям: избыточной выборке (over-fetching), которая раздувает объём передаваемых данных, расход токенов и задержку, и недостаточной выборке (under-fetching), когда из ответа выпадают поля, нужные для ответа на запрос.
SchemaRouter представляет инструменты, эндпоинты, параметры, поля ответов, доменные понятия, единицы измерения, происхождение данных (provenance) и политики лицензирования в виде единого графа схемы. Получив запрос, система строит исполняемый план: какие инструменты вызвать и какие именно поля из них извлечь. Небольшая LLM извлекает из запроса намерение, понятия и ограничения по источникам, а сам выбор полей детерминирован, он идёт по графу через проекцию по группе намерения и сопоставление понятий с полями через слой синонимов (alias layer).
На бенчмарке из 110 запросов по материаловедению SchemaRouter показал точность ответов 0,71, это в пределах перекрывающихся доверительных интервалов с методом «выкачать всё» (fetch-everything) и выше показателя 0,66 у метода «показать всё в промпте» (prompt-all), хотя интервалы этих двух методов тоже пересекаются. При этом SchemaRouter тратит 227 токенов контекста на запрос против 2 066 токенов у fetch-everything (почти в 9 раз меньше) и обеспечивает в 2,7 раза меньшую сквозную задержку, чем prompt-all. Система также показала лучший среди сравниваемых методов показатель точного выбора инструмента (tool-exact rate), 0,93, и валидность параметров 1,0. Указание источника и лицензии SchemaRouter обосновывает в 62% ответов, против примерно 0% у всех базовых методов.
Отдельно авторы обнаружили контринтуитивный эффект: если минимизировать число выбираемых полей, точность ответов падает до 0,56 при незначительной экономии токенов, тогда как проекция, сохраняющая полноту (recall-preserving projection), возвращает точность к максимуму.
Ключевые факты
- SchemaRouter, маршрутизирующий слой для агентных RAG-систем: представляет инструменты, поля, единицы измерения, происхождение данных и лицензии в виде графа схемы и строит исполняемый план запроса.
- На бенчмарке из 110 запросов по материаловедению точность ответов SchemaRouter, 0,71, что не уступает fetch-everything и превышает 0,66 у prompt-all (интервалы обоих методов пересекаются).
- SchemaRouter тратит 227 токенов контекста на запрос против 2 066 у fetch-everything (почти в 9 раз меньше) и даёт в 2,7 раза меньшую сквозную задержку, чем prompt-all.
- Точный выбор инструмента (tool-exact rate), 0,93, валидность параметров, 1,0; источник и лицензия обоснованы в 62% ответов против примерно 0% у базовых методов.
- Минимизация числа выбираемых полей контрпродуктивна: точность падает до 0,56 при незначительной экономии токенов, тогда как проекция с сохранением полноты возвращает точность к максимуму.
Почему это важно
Агентные RAG-системы всё чаще опрашивают сразу много разнородных источников, внешние API, базы данных, векторные и графовые хранилища. Показывать модели описания всех инструментов целиком или отбирать их только по векторному сходству, оба подхода дорого обходятся: либо система тянет лишние данные и раздувает токены и задержку, либо теряет нужные для ответа поля. SchemaRouter решает это детерминированным выбором полей через граф схемы вместо перебора модели, и делает это с кратным снижением расхода токенов и задержки при сопоставимой точности.
Кому это важно
Разработчикам агентных RAG-систем, которые подключают ИИ-агента сразу к нескольким гетерогенным источникам данных, особенно там, где важны низкая задержка, экономия токенов и прослеживаемость происхождения и лицензии данных в ответе, как в бенчмарке по материаловедению.
Как это применить
SchemaRouter встраивается как маршрутизирующий слой перед вызовом инструментов: небольшая LLM извлекает из запроса намерение, понятия и ограничения по источникам, а конкретные поля для извлечения выбираются детерминированно по графу схемы через проекцию по группе намерения и сопоставление понятий с полями. Авторы отмечают, что такой подход масштабируется независимо от размера схемы источников данных.
Можно ли доверять
Работа опубликована как препринт на arXiv; в тексте не указаны ни авторы, ни организация, ни модель, использованная как «небольшая LLM» для извлечения намерения. Результаты получены на одном бенчмарке из 110 запросов в узком домене материаловедения, а по точности ответов доверительные интервалы SchemaRouter и метода fetch-everything пересекаются, то есть статистически надёжного превосходства именно в точности пока не показано, выигрыш в первую очередь в эффективности (токены, задержка) и в обоснованности источника.
Риски и подводные камни
Бенчмарк узкий и однодоменный (материаловедение, 110 запросов), поэтому перенос результатов на другие предметные области не проверен. Метод чувствителен к настройке: наивная минимизация числа выбираемых полей снижает точность до 0,56 почти без экономии токенов, и нужна именно проекция с сохранением полноты, чтобы вернуть точность к максимуму. В тексте также не раскрыто, какая именно модель используется для извлечения намерения, что затрудняет оценку воспроизводимости и стоимости этого шага.