LLM Apps in Production (RAG + Vector DB + Caching) · Урок

Индексация, фильтрация и гибридный поиск

Ускоряйте и повышайте точность векторного поиска в больших масштабах: изучайте типы индексов, сочетайте фильтры метаданных с оценкой сходства и объединяйте поиск по ключевым словам с векторным поиском.

Урок 4 из 413 шагов

«Индексация, фильтрация и гибридный поиск» — бесплатный урок LLM Apps in Production (RAG + Vector DB + Caching) на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения LLM Apps in Production (RAG + Vector DB + Caching), и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс LLM Apps in Production (RAG + Vector DB + Caching) содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

The Scale Problem

Comparing a query against millions of vectors one by one is too slow for production. Vector databases use indexes to find near neighbors quickly without scanning everything.

Approximate Nearest Neighbors

Most vector indexes are approximate (ANN): they trade a tiny bit of accuracy for huge speed gains. For RAG, near-perfect recall at fast speed is a great deal.

HNSW Indexes

HNSW (Hierarchical Navigable Small World) is a popular graph-based index. It navigates layers of connections to reach neighbors fast, balancing speed and accuracy via tunable parameters.

IVF Indexes

IVF clusters vectors into cells; a query only searches the closest cells. The nprobe parameter trades recall for speed by controlling how many cells to check.

Metadata Filtering

Pure similarity can return the wrong scope — old versions, other tenants. Storing metadata with each vector lets you filter results to the right subset.

results = store.similarity_search(
    query,
    k=4,
    filter={'tenant': 'acme', 'lang': 'en'}
)

Pre vs Post Filtering

Filters apply two ways:

  • Pre-filter: restrict candidates before the ANN search (more correct)
  • Post-filter: search, then drop non-matches (may return too few)

Prefer pre-filtering when the DB supports it.

Where Vector Search Struggles

Vectors capture meaning but can miss exact terms — product codes, names, acronyms. A query for SKU-9F may semantically match nothing useful.

Hybrid search fixes this.

What Is Hybrid Search?

Hybrid search runs both keyword (e.g. BM25) and vector search, then merges the results. You get semantic understanding plus exact-term precision.

Combining Scores with RRF

Reciprocal Rank Fusion merges the two ranked lists by rewarding items ranked high in either, without needing comparable score scales.

def rrf(ranks, k=60):
    return sum(1 / (k + r) for r in ranks)

Tuning the Balance

Many databases let you weight keyword vs vector contributions (alpha). Term-heavy domains lean keyword; conceptual queries lean vector. Tune on your test set.

results = store.similarity_search(query, k=4, alpha=0.5)

Operational Tips

For healthy vector search at scale:

  • Rebuild or update indexes as data grows
  • Keep embeddings and index dimensions consistent
  • Benchmark recall and latency together

Quick Check

Test your vector database knowledge.

Recap

You learned to scale and sharpen vector search:

  • ANN indexes like HNSW and IVF make search fast
  • Metadata filters scope results; prefer pre-filtering
  • Hybrid search blends keyword and vector retrieval
  • Fuse rankings with RRF and tune the balance
  • Maintain indexes and benchmark recall vs latency

These techniques keep retrieval both fast and accurate in production.

Можно начать бесплатно

Изучай LLM Apps in Production (RAG + Vector DB + Caching) с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
12
Уроки
48

Часто задаваемые вопросы

Урок «Индексация, фильтрация и гибридный поиск» бесплатный?

Да — полный текст урока «Индексация, фильтрация и гибридный поиск» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс LLM Apps in Production (RAG + Vector DB + Caching), подпишись на CoddyKit PRO. Курс LLM Apps in Production (RAG + Vector DB + Caching) содержит 4 уроков всего.

Чему я научусь в уроке «Индексация, фильтрация и гибридный поиск»?

Ускоряйте и повышайте точность векторного поиска в больших масштабах: изучайте типы индексов, сочетайте фильтры метаданных с оценкой сходства и объединяйте поиск по ключевым словам с векторным поиско… Ты практикуешь LLM Apps in Production (RAG + Vector DB + Caching) с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать LLM Apps in Production (RAG + Vector DB + Caching)?

Предыдущий опыт не требуется. LLM Apps in Production (RAG + Vector DB + Caching) на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Индексация, фильтрация и гибридный поиск»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке LLM Apps in Production (RAG + Vector DB + Caching)?

Да. Каждый урок LLM Apps in Production (RAG + Vector DB + Caching) включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Необходимость векторных баз данных
  2. Векторные представления и поиск сходства
  3. Интеграция с векторной базой данных
  4. Индексация, фильтрация и гибридный поиск
← Назад к LLM Apps in Production (RAG + Vector DB + Caching)