[](https://github.com/pre-commit/pre-commit)
[](https://experimaestro-ir.readthedocs.io/en/latest/?badge=latest)
[](https://badge.fury.io/py/experimaestro-ir)
# Information Retrieval for experimaestro
Information Retrieval module for [experimaestro](https://experimaestro-python.readthedocs.io/)
The full documentation can be read at [IR@experimaestro](https://experimaestro-ir.readthedocs.io/).
You can find experiments built on top of XPMIR on the [xpmir github workspace](https://github.com/orgs/xpmir/repositories).
Finally, you can find the [roadmap](https://github.com/experimaestro/experimaestro-ir/issues/9).
## Install
Base experimaestro-IR can be installed with `pip install xpmir`.
Functionalities can be added by installing optional dependencies:
- `pip install xpmir[neural]` to install neural-IR packages (torch, etc.)
- `pip install xpmir[anserini]` to install Anserini related packages
For the development version, you can:
- If you just want the development version: install with `pip install git+https://github.com/experimaestro/experimaestro-ir.git`
- If you want to edit the code: clone and then do a `pip install -e .` within the directory
## What's inside?
- Collection management (using datamaestro)
- Interface for the [IR datasets library](https://ir-datasets.com/)
- Splitting IR datasets
- Shuffling training triplets
- Representation
- Word Embeddings
- HuggingFace transformers
- Indices
- dense: [FAISS](https://github.com/facebookresearch/faiss) interface
- sparse: [xpmir-rust library](https://github.com/experimaestro/experimaestro-ir-rust)
- Standard Indexing and Retrieval
- Anserini
- Learning to Rank
- Pointwise
- Pairwise
- Distillation
- Neural IR
- Cross-Encoder
- Splade
- DRMM
- ColBERT
- Paper reproduction:
- *MonoBERT* (Passage Re-ranking with BERT. Rodrigo Nogueira and Kyunghyun Cho. 2019)
- (alpha) *DuoBERT* (Multi-Stage Document Ranking with BERT. Rodrigo Nogueira, Wei Yang, Kyunghyun Cho, Jimmy Lin. 2019)
- (beta) *Splade v2* (SPLADE v2: Sparse Lexical and Expansion Model for Information Retrieval, Thibault Formal, Carlos Lassance, Benjamin Piwowarski, and Stéphane Clinchant. SIGIR 2021)
- (planned) ANCE
- Pre-trained models
- [HuggingFace](https://huggingface.co) [integration](https://experimaestro-ir.readthedocs.io/en/latest/pretrained.html) (direct, through the Sentence Transformers library)
## Thanks
Some parts of the code have been adapted from [OpenNIR](https://github.com/Georgetown-IR-Lab/OpenNIR)
Raw data
{
"_id": null,
"home_page": null,
"name": "experimaestro-ir",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "neural information retrieval, information retrieval, experiments",
"author": null,
"author_email": "Benjamin Piwowarski <benjamin@piwowarski.fr>",
"download_url": "https://files.pythonhosted.org/packages/53/85/51e6334a2d6e7ecd7451da4ed19fd24744cbde1b19cbc5103a56620cdcf3/experimaestro_ir-1.4.0.tar.gz",
"platform": null,
"description": "[](https://github.com/pre-commit/pre-commit)\n[](https://experimaestro-ir.readthedocs.io/en/latest/?badge=latest)\n[](https://badge.fury.io/py/experimaestro-ir)\n\n# Information Retrieval for experimaestro\n\nInformation Retrieval module for [experimaestro](https://experimaestro-python.readthedocs.io/)\n\nThe full documentation can be read at [IR@experimaestro](https://experimaestro-ir.readthedocs.io/).\n\nYou can find experiments built on top of XPMIR on the [xpmir github workspace](https://github.com/orgs/xpmir/repositories).\n\nFinally, you can find the [roadmap](https://github.com/experimaestro/experimaestro-ir/issues/9).\n\n## Install\n\nBase experimaestro-IR can be installed with `pip install xpmir`.\nFunctionalities can be added by installing optional dependencies:\n\n- `pip install xpmir[neural]` to install neural-IR packages (torch, etc.)\n- `pip install xpmir[anserini]` to install Anserini related packages\n\nFor the development version, you can:\n\n- If you just want the development version: install with `pip install git+https://github.com/experimaestro/experimaestro-ir.git`\n- If you want to edit the code: clone and then do a `pip install -e .` within the directory\n\n## What's inside?\n\n- Collection management (using datamaestro)\n - Interface for the [IR datasets library](https://ir-datasets.com/)\n - Splitting IR datasets\n - Shuffling training triplets\n- Representation\n - Word Embeddings\n - HuggingFace transformers\n- Indices\n - dense: [FAISS](https://github.com/facebookresearch/faiss) interface\n - sparse: [xpmir-rust library](https://github.com/experimaestro/experimaestro-ir-rust)\n- Standard Indexing and Retrieval\n - Anserini\n- Learning to Rank\n - Pointwise\n - Pairwise\n - Distillation\n- Neural IR\n - Cross-Encoder\n - Splade\n - DRMM\n - ColBERT\n- Paper reproduction:\n - *MonoBERT* (Passage Re-ranking with BERT. Rodrigo Nogueira and Kyunghyun Cho. 2019)\n - (alpha) *DuoBERT* (Multi-Stage Document Ranking with BERT. Rodrigo Nogueira, Wei Yang, Kyunghyun Cho, Jimmy Lin. 2019)\n - (beta) *Splade v2* (SPLADE v2: Sparse Lexical and Expansion Model for Information Retrieval, Thibault Formal, Carlos Lassance, Benjamin Piwowarski, and St\u00e9phane Clinchant. SIGIR 2021)\n - (planned) ANCE\n- Pre-trained models\n - [HuggingFace](https://huggingface.co) [integration](https://experimaestro-ir.readthedocs.io/en/latest/pretrained.html) (direct, through the Sentence Transformers library)\n\n## Thanks\n\nSome parts of the code have been adapted from [OpenNIR](https://github.com/Georgetown-IR-Lab/OpenNIR)\n",
"bugtrack_url": null,
"license": "GPL-3",
"summary": "Experimaestro common module for IR experiments",
"version": "1.4.0",
"project_urls": {
"documentation": "https://experimaestro-ir.readthedocs.io/en/latest/",
"homepage": "https://github.com/bpiwowar/experimaestro-ir",
"repository": "https://github.com/bpiwowar/experimaestro-ir"
},
"split_keywords": [
"neural information retrieval",
" information retrieval",
" experiments"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "cddf5412ef711796fd10c52dcf3e5499e2d8ce03c1dd279f24ae28b56088d1b2",
"md5": "6513085bd726af572f36de0e5de7efbc",
"sha256": "e7210553dbfec17fc4760b2dc6be99aeb220c871e436fc851032013525d789bd"
},
"downloads": -1,
"filename": "experimaestro_ir-1.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6513085bd726af572f36de0e5de7efbc",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 196499,
"upload_time": "2025-07-28T09:47:45",
"upload_time_iso_8601": "2025-07-28T09:47:45.487357Z",
"url": "https://files.pythonhosted.org/packages/cd/df/5412ef711796fd10c52dcf3e5499e2d8ce03c1dd279f24ae28b56088d1b2/experimaestro_ir-1.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "538551e6334a2d6e7ecd7451da4ed19fd24744cbde1b19cbc5103a56620cdcf3",
"md5": "4e65776399c9e943242f67872f696058",
"sha256": "d34538a5a0d12ee54f0581c71a7eda91ccd50f26a2b76cf08184d0bfd88bc36d"
},
"downloads": -1,
"filename": "experimaestro_ir-1.4.0.tar.gz",
"has_sig": false,
"md5_digest": "4e65776399c9e943242f67872f696058",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 165992,
"upload_time": "2025-07-28T09:47:47",
"upload_time_iso_8601": "2025-07-28T09:47:47.036476Z",
"url": "https://files.pythonhosted.org/packages/53/85/51e6334a2d6e7ecd7451da4ed19fd24744cbde1b19cbc5103a56620cdcf3/experimaestro_ir-1.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-28 09:47:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "bpiwowar",
"github_project": "experimaestro-ir",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "experimaestro",
"specs": [
[
">=",
"1.7.1"
]
]
},
{
"name": "datamaestro",
"specs": [
[
">=",
"1.0.1"
]
]
},
{
"name": "datamaestro_text",
"specs": [
[
">=",
"2025.7.28"
]
]
},
{
"name": "ir_datasets",
"specs": []
},
{
"name": "docstring_parser",
"specs": []
},
{
"name": "impact-index",
"specs": [
[
"==",
"0.27.*"
]
]
},
{
"name": "omegaconf",
"specs": [
[
">=",
"2.2"
]
]
},
{
"name": "attrs",
"specs": []
},
{
"name": "ir-measures",
"specs": [
[
">=",
"0.3.3"
]
]
},
{
"name": "toma",
"specs": []
},
{
"name": "pytorch-lightning",
"specs": []
}
],
"tox": true,
"lcname": "experimaestro-ir"
}