From 172996d68e1f0263e7b4e1f2bff7a5fa336c4d0f Mon Sep 17 00:00:00 2001 From: luotao02 Date: Thu, 21 May 2026 10:10:05 +0800 Subject: [PATCH] Agent: fix success count logic in extraction scripts to match actual log markers - analyze_extraction_log.sh: - Success count: change from '[CPU X] OK' to 'Graph extracted to' (actual marker in code) - Success model list: also extract from 'Graph extracted to' - Update comments to reflect actual log marker format - check_extraction_progress.sh: - Success count: change from 'Successfully extracted' to 'Graph extracted to' - Total attempts condition: sync to match new marker The main success log output is 'INFO - Graph extracted to: ...', not 'Successfully extracted' or '[CPU X] OK'. Old logic missed most success records. Example (batch7_safe_run_no_llm.log): - Old logic: 283 successes - New logic: 4,691 successes --- graph_net/agent/scripts/analyze_extraction_log.sh | 15 ++++++++------- .../agent/scripts/check_extraction_progress.sh | 5 +++-- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/graph_net/agent/scripts/analyze_extraction_log.sh b/graph_net/agent/scripts/analyze_extraction_log.sh index e88d5aeaf..7553efc34 100644 --- a/graph_net/agent/scripts/analyze_extraction_log.sh +++ b/graph_net/agent/scripts/analyze_extraction_log.sh @@ -76,13 +76,13 @@ echo "" # 1. 总体统计 echo "--- 一、总体统计 ---" # 使用日志中实际的标记格式统计: -# 成功: [CPU X] OK model_name 或 [GPU X] OK model_name -# 失败: [CPU X] FAIL model_name 或 [GPU X] FAIL model_name -# 注:同时支持 CPU-only 模式和 GPU 模式的日志 +# 成功: "Graph extracted to:"(主要成功路径) +# 失败: "Extraction failed for" +# 注:部分旧日志可能用 "Successfully extracted",但当前代码主要输出 "Graph extracted to" # 部分日志含二进制数据,用 grep -a 强制按文本处理 TOTAL=$(grep -ac "Starting extraction for model:" "$LOG_FILE" 2>/dev/null || echo 0) -SUCCESS=$(grep -aoE '\[(CPU|GPU) [0-9]+\] OK [^ ]+' "$LOG_FILE" 2>/dev/null | wc -l | tr -d ' ') -FAILED=$(grep -aoE '\[(CPU|GPU) [0-9]+\] FAIL [^ ]+' "$LOG_FILE" 2>/dev/null | wc -l | tr -d ' ') +SUCCESS=$(grep -ac "Graph extracted to" "$LOG_FILE" 2>/dev/null || echo 0) +FAILED=$(grep -ac "Extraction failed for" "$LOG_FILE" 2>/dev/null || echo 0) PROGRESS_LINES=$(grep -c "PROGRESS" "$LOG_FILE" 2>/dev/null || echo 0) echo "总尝试数: $TOTAL" @@ -217,8 +217,9 @@ SUCCESS_LIST="/tmp/${BASE_NAME}_success.txt" grep "Starting extraction for model:" "$LOG_FILE" 2>/dev/null | \ sed 's/.*Starting extraction for model: //' > "$PROCESSED" -grep -aoE '\[(CPU|GPU) [0-9]+\] OK [^ ]+' "$LOG_FILE" 2>/dev/null | \ - awk '{print $NF}' | sort -u > "$SUCCESS_LIST" +grep -a "Graph extracted to" "$LOG_FILE" 2>/dev/null | \ + sed 's/.*Graph extracted to: .*\//\//' | \ + sed 's/.*samples\///' | sort -u > "$SUCCESS_LIST" echo "已处理模型列表: $PROCESSED ($(wc -l < "$PROCESSED" 2>/dev/null || echo 0) 个)" echo "成功模型列表: $SUCCESS_LIST ($(wc -l < "$SUCCESS_LIST" 2>/dev/null || echo 0) 个)" diff --git a/graph_net/agent/scripts/check_extraction_progress.sh b/graph_net/agent/scripts/check_extraction_progress.sh index fbf1e21b5..05ac0de3d 100644 --- a/graph_net/agent/scripts/check_extraction_progress.sh +++ b/graph_net/agent/scripts/check_extraction_progress.sh @@ -137,8 +137,9 @@ echo "" echo "====== 统计汇总 ======" # 从日志统计 -TOTAL_IN_LOG=$(grep -cE "Starting extraction for|Successfully extracted|Extraction failed for" "$LOG_FILE" 2>/dev/null || echo 0) -SUCCESS_IN_LOG=$(grep -c "Successfully extracted" "$LOG_FILE" 2>/dev/null || echo 0) +# 注:日志中成功的主要标记是 "Graph extracted to"(而非 "Successfully extracted") +TOTAL_IN_LOG=$(grep -cE "Starting extraction for|Graph extracted to|Extraction failed for" "$LOG_FILE" 2>/dev/null || echo 0) +SUCCESS_IN_LOG=$(grep -c "Graph extracted to" "$LOG_FILE" 2>/dev/null || echo 0) FAILED_IN_LOG=$(grep -c "Extraction failed for" "$LOG_FILE" 2>/dev/null || echo 0) # 从 PROGRESS 行提取进度