You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I maintain NECS, a dependency-light structural validator for TREC qrels/run pairs. I'm posting in Q&A (per CONTRIBUTING) because this is an interoperability question, not a QueryGym bug or feature request.
QueryGym's Pyserini example writes a six-column TREC run in retrieve.py and passes that run plus its qrels into the evaluator in evaluate.py; the reproducibility guide also documents a cheap pytrec_eval pre-check on the submitted run.txt.
Would one of you be willing to run NECS v0.3.1 once on a QueryGym-generated run.txt and its matching dl19-passage qrels, immediately before that Pyserini/pytrec_eval step, and paste the JSON result here? A clean pass is useful on its own; I'm especially interested in whether the query-set (--require-query-coverage), unjudged-document (--require-judged), or advisory-rank (--strict-ranks) diagnostics match QueryGym's expectations — or expose an intentional semantic difference worth documenting.
python -m pip install "https://github.com/Madhvansh/Neural-E-Commerce-Search/releases/download/v0.3.1/neural_ecommerce_search_madhvansh-0.3.1-py3-none-any.whl"# resolve the dl19-passage qrels to a local file (Pyserini already ships it), then# structurally preflight the run.txt your example wrote, just before evaluate.py:
QRELS=$(python -c "from pyserini.search import get_qrels_file; print(get_qrels_file('dl19-passage'))")
necs-validate --qrels "$QRELS" --run outputs/dl19_genqr/runs/run.txt --format json
NECS doesn't compute metrics or certify an experiment; it only checks structure and reports coverage/rank diagnostics before evaluation. Release and scope: https://github.com/Madhvansh/Neural-E-Commerce-Search/releases/tag/v0.3.1 — for an immutable reference to exactly this build, tag v0.3.1 resolves to commit 6fefdad10b60e71eedfcedee1491d6e043ebe670, which is also the immutable pin for the optional GitHub Action.
If this preflight isn't useful for QueryGym's workflow, that answer is helpful too — no integration change is being requested.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
I maintain NECS, a dependency-light structural validator for TREC qrels/run pairs. I'm posting in Q&A (per CONTRIBUTING) because this is an interoperability question, not a QueryGym bug or feature request.
QueryGym's Pyserini example writes a six-column TREC run in retrieve.py and passes that run plus its qrels into the evaluator in evaluate.py; the reproducibility guide also documents a cheap
pytrec_evalpre-check on the submittedrun.txt.Would one of you be willing to run NECS v0.3.1 once on a QueryGym-generated
run.txtand its matchingdl19-passageqrels, immediately before that Pyserini/pytrec_evalstep, and paste the JSON result here? A clean pass is useful on its own; I'm especially interested in whether the query-set (--require-query-coverage), unjudged-document (--require-judged), or advisory-rank (--strict-ranks) diagnostics match QueryGym's expectations — or expose an intentional semantic difference worth documenting.NECS doesn't compute metrics or certify an experiment; it only checks structure and reports coverage/rank diagnostics before evaluation. Release and scope: https://github.com/Madhvansh/Neural-E-Commerce-Search/releases/tag/v0.3.1 — for an immutable reference to exactly this build, tag
v0.3.1resolves to commit6fefdad10b60e71eedfcedee1491d6e043ebe670, which is also the immutable pin for the optional GitHub Action.If this preflight isn't useful for QueryGym's workflow, that answer is helpful too — no integration change is being requested.
All reactions