Skip to content

Commit 0f80f16

Browse files
committed
fix query2doc few-shot inconsistency issue
1 parent 1540d51 commit 0f80f16

1 file changed

Lines changed: 6 additions & 3 deletions

File tree

querygym/methods/query2doc.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ class Query2Doc(BaseReformulator):
1414
Modes:
1515
- "zs" (zero-shot): Generate passage directly [default]
1616
- "cot" (chain-of-thought): Zero-shot with reasoning
17-
- "fs" (few-shot): Uses training examples from any dataset (dynamic)
17+
- "fs", "fewshot", or "few-shot" (few-shot): Uses training examples from any dataset (dynamic)
1818
1919
Few-Shot Config (via params or env vars):
2020
- dataset_type: "msmarco", "beir", or "generic" (uses appropriate loader)
@@ -208,15 +208,18 @@ def _format_examples(self, examples: List[Tuple[str, str]]) -> str:
208208
def reformulate(self, q: QueryItem, contexts=None) -> ReformulationResult:
209209
"""Generate pseudo-document for query using LLM."""
210210
# Get parameters
211-
mode = str(self.cfg.params.get("mode", "zs"))
211+
mode = str(self.cfg.params.get("mode", "zs")).lower()
212+
# Normalize few-shot mode variants
213+
if mode in ["fs", "fewshot", "few-shot"]:
214+
mode = "fs"
212215
temperature = float(self.cfg.llm.get("temperature", 0.7))
213216
max_tokens = int(self.cfg.llm.get("max_tokens", 256))
214217

215218
metadata = {"mode": mode}
216219

217220
try:
218221
# Select prompt based on mode
219-
if mode == "fs" or mode == "fewshot":
222+
if mode == "fs":
220223
# Few-shot: dynamic MS MARCO examples
221224
num_examples = int(self.cfg.params.get("num_examples", 4))
222225
examples = self._select_few_shot_examples(num_examples)

0 commit comments

Comments
 (0)