NumPy allowed · plain Python earns 10 bonus points
Cosine-like similarity scores ranked before context assembly
Implement Corrective RAG's real three-way relevance grading, deciding whether to proceed with retrieved documents, fall back to a web search, or blend both.
Implement grade_relevance_action(relevance_scores, relevant_threshold, irrelevant_threshold). Take best = max(relevance_scores). If best >= relevant_threshold, return 'use_retrieved'. If best < irrelevant_threshold, return 'web_search'. Otherwise return 'blend'.
grade_relevance_action(relevance_scores: list[float], relevant_threshold: float, irrelevant_threshold: float) -> str