Jelajahi Sumber

feat(mode_workflow): 新增 fetch_existing_eval_any 跨表评估去重(评估与表无关)

刘文武 1 Minggu lalu
induk
melakukan
b91a440b33
1 mengubah file dengan 10 tambahan dan 0 penghapusan
  1. 10 0
      examples/mode_workflow/db.py

+ 10 - 0
examples/mode_workflow/db.py

@@ -958,6 +958,16 @@ def fetch_existing_eval(case_id, table="search_process"):
     return None
     return None
 
 
 
 
+def fetch_existing_eval_any(case_id):
+    """跨两张搜索表找该 case 最近一条有效评估 blob。
+    评估与表无关(统一一套),任一表评过即可复用,避免同帖在两表各评一次。无则 None。"""
+    for table in ("search_process", "search_tools"):
+        e = fetch_existing_eval(case_id, table)
+        if e:
+            return e
+    return None
+
+
 def update_post_eval(query_id, case_id, evaluation, table="search_process"):
 def update_post_eval(query_id, case_id, evaluation, table="search_process"):
     """用新的评估 blob 覆盖某 (query, case) 行的 llm_evaluation,并同步重算派生列
     """用新的评估 blob 覆盖某 (query, case) 行的 llm_evaluation,并同步重算派生列
     overall_score、knowledge_type(口径同 upsert_search_posts)。返回受影响行数。"""
     overall_score、knowledge_type(口径同 upsert_search_posts)。返回受影响行数。"""