Термин RAG, retrieval и векторный поиск Средний

Top k

Параметр retrieval, который задает, сколько самых близких результатов вернуть из поиска или векторной базы.

top-k k ближайших результатов количество результатов retrieval retrieval k k results top k chunks число найденных chunks количество документов в поиске
Top k — это число результатов, которые retrieval возвращает из поиска. В RAG-системе top k часто означает: взять k самых близких chunks из векторной базы и передать их дальше в контекст модели, reranker или финальный ответ.

Если top k слишком маленький, система может не найти нужный фрагмент, даже если он есть в базе знаний. Если top k слишком большой, в контекст попадает шум: похожие, но лишние chunks, старые документы, дубли и противоречивые куски. Это ухудшает ответ, увеличивает стоимость и может повышать риск галлюцинаций.

Top k нельзя выбирать “на глаз” один раз навсегда. Его подбирают на тестовом наборе вопросов: смотрят, находится ли нужный источник, сколько мусора попадает в контекст, хватает ли context window и как меняется качество ответа после reranking.

На практике top k часто работает вместе с другими настройками: similarity threshold, metadata filters, hybrid search, reranker, chunk size, overlap и ограничением общего контекстного бюджета. Поэтому хорошая RAG-настройка — это баланс recall, precision, скорости и стоимости.

Примеры

  • Если top k = 3, RAG берет три самых похожих chunk из векторной базы и передает их модели.
  • Для короткой FAQ-базы top k = 3 может быть достаточно, а для большой базы договоров иногда нужно top k = 10 или reranker.
  • При top k = 20 модель получает много лишних фрагментов, начинает путаться и цитирует не тот документ.
  • Команда увеличила top k с 5 до 12, а затем добавила reranker, чтобы не потерять нужный фрагмент и убрать шум перед ответом.
  • Для запроса с фильтром по клиенту top k считается только внутри документов этого клиента, а не по всей базе.

Где используется

  • Настроить качество поиска в RAG-системе.
  • Подобрать баланс между полнотой поиска и шумом в контексте.
  • Проверить, почему агент не нашел нужный документ.
  • Снизить стоимость и размер контекста за счет меньшего числа chunks.
  • Улучшить ответы через связку top k, reranker и metadata filters.
  • Сравнить качество retrieval на eval-наборе вопросов.
  • Настроить внутренний поиск по базе знаний, договорам или документации.

Связанные термины

Частые вопросы

Что такое top k простыми словами?

Это сколько результатов поиск должен вернуть. Например, top k = 5 означает: взять пять самых похожих фрагментов из базы и передать их дальше.

Какой top k выбрать для RAG?

Универсального числа нет. Часто начинают с 3-8, затем проверяют на реальных вопросах: найден ли нужный источник, не слишком ли много шума и помещается ли контекст в модель.

Что будет, если top k слишком маленький?

RAG может пропустить нужный chunk. Тогда модель ответит неполно, скажет “не знаю” или начнет опираться на менее подходящий источник.

Что будет, если top k слишком большой?

В контекст попадет много лишних фрагментов. Ответ может стать хуже, дороже и длиннее, а модель может смешать данные из разных документов.

Top k и similarity threshold — это одно и то же?

Нет. Top k задает количество результатов, а similarity threshold задает минимальную похожесть. Их часто используют вместе: сначала найти кандидатов, затем отфильтровать слабые совпадения.

Где читать дальше

Статьи по теме

Инструменты

Связанные инструменты