Готовых бенчмарков эмбеддингов под русскую судебную практику не существовало — поэтому практикующий юрист и разработчик телеграм-бота IP Agent собрал его самостоятельно. Корпус — 858 актов Суда по интеллектуальным правам плюс четвёртая часть ГК РФ. Задача бота — находить релевантную судебную практику и давать прогноз компенсации по делам об интеллектуальной собственности. Под неё и проводился тест.

RAG (Retrieval-Augmented Generation) — архитектура, при которой языковая модель не «вспоминает» ответ из обучения, а сначала ищет релевантные документы в базе, а затем формулирует ответ на их основе. Качество поиска здесь критично: если эмбеддинг плохо понимает юридический текст, модель будет опираться на нерелевантные дела. Эмбеддинг — это числовое представление текста в многомерном пространстве; близкие по смыслу тексты получают близкие векторы. Реранкер — второй слой фильтрации: он берёт топ кандидатов от эмбеддинга и пересортировывает их точнее, но медленнее.

ЭмбеддингТипГруппа по качествуСтоимость индексации корпуса
OpenAI text-embedding-3-largeAPIТоп-3 (лидеры)$2,84
Voyage voyage-3APIТоп-3 (лидеры)$0,63
deepvk/USER2-baseЛокальная, бесплатнаяТоп-3 (лидеры)$0
GigaEmbeddingsAPIСредняя группа
Cohere embed-v4APIСредняя группа
e5-smallЛокальная, бесплатнаяСредняя группа$0
Yandex EmbeddingsAPIНиже топ-3

В тест вошли семь эмбеддингов: коммерческие OpenAI text-embedding-3-large, Voyage voyage-3, Cohere embed-v4, GigaEmbeddings от Сбера, Yandex Embeddings — и локальные бесплатные e5-small и deepvk/USER2-base. Четыре реранкера: mmarco-mMiniLMv2 (обучен на английском MS MARCO), bge-reranker-v2-m3 (568 млн параметров, мультиязычный), jina-reranker-v3 (0,6 млрд параметров, листвайз-архитектура) и mxbai-rerank-base-v2 на базе Qwen-2.5. Пайплайн единый: эмбеддинг возвращает топ-30 кандидатов по косинусному сходству, реранкер пересортировывает, до пользователя доходит топ-5.

USER2-base работает локально и бесплатно, тогда как индексация корпуса на OpenAI обошлась в $2,84, на Voyage — $0,63.

Разметка — 30 вопросов разной сложности, от типовых (компенсация за контрафакт на маркетплейсе) до специфичных (патентные споры, доменные конфликты, авторское право в соцсетях). Каждая пара «вопрос — дело» получила оценку 0, 1 или 2. Пул из 2751 пары формировался из топ-20 каждой из семи моделей с дедупликацией — это важно: разметка проводилась до реранкинга, иначе неразмеченные дела автоматически считались нулями и метрики сырой выдачи систематически занижались бы. Разметку выполнял NotebookLM (Gemini под капотом) — по 30 отдельных блокнотов с индивидуальным промтом. Около 80 пар автор проверил вручную и счёл согласие приемлемым. Основная метрика — nDCG@5: учитывает и релевантность, и порядок выдачи, нормирована на идеальный случай.

Главный результат: OpenAI text-embedding-3-large, Voyage voyage-3 и deepvk/USER2-base образуют статистически неотличимую тройку лидеров. На 30 вопросах разница между ними попадает в доверительный интервал — однозначного победителя нет. USER2-base при этом работает локально и не требует оплаты API: индексация того же корпуса на OpenAI обошлась в $2,84, на Voyage — $0,63. Для пет-проектов и решений, где важны санкционные риски или конфиденциальность данных, это принципиальное отличие.

Орacle-анализ показал эффект гибридного поиска: только OpenAI покрывает 33% «идеальных» дел (оценка 2) в пуле топ-20 кандидатов, гибрид OpenAI + USER2-base — уже 49%. Прирост в 16 процентных пунктов объясняется просто: модели с разной архитектурой по-разному «понимают» текст и находят разные дела, закрывая слепые пятна друг друга. Автор оговаривается, что oracle-анализ меряет лишь попадание в корзину кандидатов, а не финальное качество топ-5 — для полноценной оценки гибрида нужен Reciprocal Rank Fusion с подсчётом nDCG, этот тест ещё не проводился.

По реранкерам картина неоднородная. На сильных эмбеддингах прирост от реранкера в пределах погрешности. На слабых — Yandex Embeddings и Cohere — хороший реранкер даёт +9–12 пунктов nDCG. Из четырёх протестированных рабочими оказались jina-reranker-v3 и bge-reranker-v2-m3. Mxbai-rerank-base-v2 на этом корпусе значимо ухудшил результаты на большинстве эмбеддингов — несмотря на современную базу Qwen-2.5. Mmarco нейтрален: обучен на английском, на русском юридическом тексте не помогает, но и не вредит.

В итоге в бот поставлена связка USER2-base + jina-reranker-v3. Запасной вариант при ограничениях по железу — bge-reranker-v2-m3. Общий вывод теста: на узкоспециализированном русскоязычном корпусе позиции в общих бенчмарках (например, ruMTEB от Сбера) не гарантируют результата — архитектуры по-разному работают с юридической логикой близости текстов.