Search platform · EBS Lan STATUS: PROD

Search 2.0

EBS Lan search platform: hybrid BM25 and vector search, subject-area classifier, spell checker, video search. All ML components are CPU-only.

SOURCE: MANUAL README

Search 2.0 is a search platform built from several production services, responsible for searching the catalog of books, journals, tables of contents, and article pages of the EBS Lan (Russian academic e-library platform).

Components

  • The main search API on a hybrid of BM25 and vector search, with a custom coefficient system and boosts by relevance and year of publication.
  • Separate services for the subject-area classifier and author detector, a query vectorizer with caching, spell checking, and search over educational video.

An engineering constraint as a feature

All ML components are designed CPU-only — lazy model initialization, strict resource limits, no GPU dependency. Semantic search that fits the budget is part of the architecture too.

Alongside the platform runs the Books Keywords Generator — an internal production service that auto-generates keywords for books from their tables of contents: two-stage LLM generation (generation → validation by a separate prompt), dynamic context-length management, structured JSON logs in Elasticsearch.

Stack: Python · FastAPI · Elasticsearch · Redis · sentence-transformers · vLLM · MySQL · Nginx · Docker