diff --git a/atlasbot/engine/answerer.py b/atlasbot/engine/answerer.py index 91ed684..e557f7a 100644 --- a/atlasbot/engine/answerer.py +++ b/atlasbot/engine/answerer.py @@ -1005,6 +1005,8 @@ def _metric_candidate_lines(lines: list[str], keywords: list[str] | None, limit: candidates: list[str] = [] for line in lines: line_lower = line.lower() + if line_lower.startswith("lexicon_") or line_lower.startswith("units:"): + continue if prefer_node and "pod_" in line_lower: continue if "hottest:" in line_lower: diff --git a/atlasbot/llm/prompts.py b/atlasbot/llm/prompts.py index f5a2fb8..590c915 100644 --- a/atlasbot/llm/prompts.py +++ b/atlasbot/llm/prompts.py @@ -218,6 +218,7 @@ FACT_SELECT_PROMPT = ( "If the question asks for highest/hottest and Candidates include a line starting with 'hottest:', you must include that line. " "If the question mentions nodes and a 'hottest:' line exists, prefer node-level facts over pod-level lines. " "Avoid pod_* lines unless the question explicitly mentions pods. " + "Exclude lexicon/definition lines; choose lines with concrete numeric values. " "Return JSON with field: lines (list of strings). If none apply, return {{\"lines\": []}}." )