"Build ColBERT indexes, load existing indexes, run single-query and
Scanned 9/8/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill indexing-and-search --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Indexing And Search?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-indexing-and-search)More formats (shields.io, HTML) on the badges page.
---
name: indexing-and-search
description: "Build ColBERT indexes, load existing indexes, run single-query and
batch retrieval, tune search hyperparameters, and save rankings safely."
disable-model-invocation: true
metadata:
disco-role: operating
license: MIT
---
# ColBERT Indexing and Search
Use this sub-skill when the task is to turn a TSV passage collection into a ColBERT index, open an existing ColBERT index, retrieve top-k passages for one query or many queries, tune retrieval speed/quality settings, validate collection/query/ranking inputs, or diagnose index path and ranking-output issues.
## Route the task
- For public imports, verified signatures, path resolution, return shapes, overwrite modes, and CPU/GPU behavior, read `references/api-reference.md`.
- For copy-editable indexing, existing-index loading, single-query search, batch search, ranking save, `index_root`, mmap, and tuning workflows, read `references/index-search-workflows.md`.
- For checkpoint, optional dependency, backend, TSV/config, API misuse, overwrite, `qid_to_pids`, and output-location failures, read `references/troubleshooting.md`.
- For deterministic preflight checks of user-provided collection, query, and ranking TSV files before expensive ColBERT runs, use `scripts/validate_colbert_inputs.py`.
- For an editable minimal script that exposes `index`, `search`, and `search-all` subcommands with public ColBERT APIs, adapt `scripts/minimal_index_search_template.py`.
## Core boundaries
- Cover `Indexer`, `Searcher`, `Run`, `RunConfig`, `ColBERTConfig`, `Collection`, `Queries`, `Ranking`, `index_root`, overwrite/reuse/resume, `load_index_with_mmap`, and `ncells`/`ndocs` search tuning.
- Keep training, distillation, triples, and checkpoint training workflows in `../training-and-distillation/`.
- Keep TSV/qrels/evaluation details beyond basic indexing/search I/O in `../data-and-evaluation/`.
- Keep mutable add/remove/persist index serving workflows in `../index-updates-and-serving/`.
- Keep tokenizer internals, checkpoint architecture, and model compatibility analysis in `../modeling-and-tokenization/`.
## Fast starting point
1. Validate TSV shapes before expensive work: `python scripts/validate_colbert_inputs.py --collection collection.tsv --queries queries.tsv`.
2. Index with explicit `checkpoint`, `root`, `experiment`, `index_name`, and overwrite policy.
3. Search by reusing the same `root`, `experiment`, and `index_name`, or pass explicit `index_root` when the index is outside the default layout.
4. Save batch results with `Ranking.save(...)`; use an absolute output path or print the returned path because relative paths are resolved by the active `Run` context.
## Verified package facts
- Distribution: `colbert-ai` 0.2.22; import package: `colbert`.
- Verified imports include `colbert`, `colbert.infra`, `colbert.data`, `colbert.modeling.checkpoint`, `utility`, and `baleen`.
- CPU import inspection works, but practical indexing and training usually require CUDA/GPU; CPU search is possible and mmap search is CPU-only.
- Important signatures: `Indexer(checkpoint, config=None, verbose=3)`, `Searcher(index, checkpoint=None, collection=None, config=None, index_root=None, verbose=3)`, `Collection(path=None, data=None)`, `Queries(path=None, data=None)`, and `Ranking(path=None, data=None, metrics=None, provenance=None)`.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!