L’interface est localisée ; les présentations et documents des Skills sont traduits automatiquement par IA dans votre langue. Le code, les commandes, chemins et termes techniques restent en version originale, et le document de l’auteur fait foi.
Explorer les Skills
Données et recherche · SKILL.md

splade

splade

Route SPLADE sparse retrieval tasks across Hydra pipelines, HF training/reranking, model/data APIs, and export/pruning/evaluation workflows.

Independent GitHub snapshot · Automated classification · Original documentation governs

Documentation de la Skill

GitHub

name: splade description: "Route SPLADE sparse retrieval tasks across Hydra pipelines, HF training/reranking, model/data APIs, and export/pruning/evaluation workflows." disable-model-invocation: true metadata: disco-role: operating license: NOASSERTION

SPLADE Repo Skill

Use this skill when a user asks about the SPLADE Python repository: sparse lexical retrieval with masked-language-model expansion, classic Hydra train/index/retrieve workflows, HuggingFace Trainer variants, reranking, Anserini export, static pruning, BEIR/PISA evaluation planning, or SPLADE data/API troubleshooting.

First Decision

  • Choose sub-skills/hydra-pipelines/SKILL.md for classic python -m splade.* workflows: all, train, index, retrieve, evaluate, flops, and create_anserini command construction.
  • Choose sub-skills/hf-training-reranking/SKILL.md for python -m splade.hf_train, python -m splade.hf_train_reranker, python -m splade.rerank, multiple hard negatives, dense/DPR variants, and reranker workflows.
  • Choose sub-skills/model-data-api/SKILL.md for programmatic model/data/index APIs, SPLADE representation behavior, toy-data validation, and no-download API inspection.
  • Choose sub-skills/pruning-export-evaluation/SKILL.md for Anserini export files, static pruning helpers, BEIR/PISA planning, Pyserini/Java/PISA prerequisites, and evaluation dependency troubleshooting.

Public Install Baseline

  • For a local SPLADE checkout, install the package with python -m pip install -e . from the checkout root.
  • For a fresh public install, use python -m pip install git+https://github.com/naver/splade.git and then add workflow-specific dependencies such as PyTorch, Hydra/OmegaConf, pytrec-eval, Pyserini, Java, or PISA only when the selected route needs them.
  • Prefer Python 3.8 or 3.9-era ML environments for historical SPLADE compatibility; newer environments may need Hydra/OmegaConf adjustments described in references/troubleshooting.md.

Core Package Facts

  • Distribution metadata uses package name SPLADE and import package splade; the repo version is 2.1.
  • The installed metadata declares transformers==4.18.0 and omegaconf==2.1.2, but current source uses some Hydra decorators with version_base="1.2"; see references/troubleshooting.md before diagnosing Hydra import errors.
  • Classic training/index/retrieval relies on Hydra config files under conf/ and typically needs config.checkpoint_dir, config.index_dir, and config.out_dir overrides because defaults leave them as ???.
  • Evaluation and reranking paths import pytrec_eval; full metric execution may require building pytrec-eval and external trec_eval sources.
  • Realistic training, indexing, BEIR, Anserini, and PISA runs may require GPUs, large model/data downloads, Java/Pyserini, PISA binaries, or long runtimes; do not launch them unless the user approves those costs.

Safe Starting Checks

  • Validate that SPLADE imports before deeper work: python -c "import splade; print('ok')".
  • Inspect command templates instead of running jobs: python sub-skills/hydra-pipelines/scripts/splade_hydra_command_builder.py --help.
  • Inspect HF command templates: python sub-skills/hf-training-reranking/scripts/splade_hf_command_builder.py --help.
  • Validate small SPLADE-style fixtures: python sub-skills/model-data-api/scripts/validate_splade_toy_data.py <dataset-root>.
  • Prune self-contained Anserini-style JSONL fixtures with sub-skills/pruning-export-evaluation/scripts/prune_doc_index.py or prune_quantile.py.

Shared References

  • Read references/repo-provenance.md to check the source commit, dirty state, version, and evidence baseline before deciding whether this skill is stale.
  • Read references/troubleshooting.md for cross-cutting install/import, Hydra/OmegaConf, optional dependency, data/download, and hardware failures.
  • Read references/repo-routing-metadata.json only when updating DisCo routing metadata.

Routing Patterns

User asks forRead
"Run SPLADE on toy data", "train/index/retrieve", "Hydra override", "checkpoint config missing"sub-skills/hydra-pipelines/SKILL.md
"HF Trainer", "hard negatives", "DPR/dense", "rerank a run", "RankT5/monoT5"sub-skills/hf-training-reranking/SKILL.md
"What are the model signatures?", "validate raw.tsv/qrels", "content_id KeyError", "offline inference API"sub-skills/model-data-api/SKILL.md
"create Anserini docs", "prune SPLADE index", "BEIR", "PISA", "pyserini/trec_eval"sub-skills/pruning-export-evaluation/SKILL.md

Workflow Guardrails

  • Do not point users to original repo docs, notebooks, shell scripts, or source files as runtime dependencies; use this skill's bundled references and scripts.
  • Command-builder scripts print commands only; review placeholders and resource requirements before running generated commands.
  • Treat native SPLADE examples/tests as verification candidates, not automatic runtime steps.
  • Prefer safe --help, schema validation, and tiny-fixture checks before GPU training, downloads, BEIR, Anserini, or PISA execution.
Skills enregistrées