@@ -303,6 +303,13 @@ jobs:
303303 - name : Update README (main only)
304304 run : |
305305 ACCURACY=$(sed 's/%//g' accuracy_value.txt)
306+ CURRENT_ACCURACY=$(sed -nE 's/.*<!--ACCURACY_PLACEHOLDER-->Accuracy: ([0-9]+(\.[0-9]+)?)% \(updated: [0-9-]+\)<!--END_ACCURACY-->.*/\1/p' README.md | head -n1)
307+
308+ if [ -n "$CURRENT_ACCURACY" ] && [ "$CURRENT_ACCURACY" = "$ACCURACY" ]; then
309+ echo "Accuracy unchanged; keeping existing README update date"
310+ exit 0
311+ fi
312+
306313 DATE=$(date '+%Y-%m-%d')
307314 UPDATE_TEXT="<!--ACCURACY_PLACEHOLDER-->Accuracy: ${ACCURACY}% (updated: ${DATE})<!--END_ACCURACY-->"
308315 ESCAPED_UPDATE_TEXT=$(printf '%s\n' "$UPDATE_TEXT" | sed 's/[&|\\]/\\&/g')
@@ -507,14 +514,24 @@ jobs:
507514 run : |
508515 TOP1_ACC=$(sed -nE 's/^Top-1 Accuracy: ([0-9]+(\.[0-9]+)?)%$/\1/p' accuracy_${{ matrix.model }}.txt | head -n1)
509516 TOP5_ACC=$(sed -nE 's/^Top-5 Accuracy: ([0-9]+(\.[0-9]+)?)%$/\1/p' accuracy_${{ matrix.model }}.txt | head -n1)
510- DATE=$(date '+%Y-%m-%d')
511517
512518 if [ -z "$TOP1_ACC" ] || [ -z "$TOP5_ACC" ]; then
513519 echo "Ошибка : Не удалось извлечь точность из файла accuracy_${{ matrix.model }}.txt"
514520 cat accuracy_${{ matrix.model }}.txt
515521 exit 1
516522 fi
517523
524+ CURRENT_TOP1=$(sed -nE "s/.*<!--ACCURACY_${{ matrix.model }}_PLACEHOLDER-->Accuracy : Top-1: ([0-9]+(\\.[0-9]+)?)% \\| Top-5: ([0-9]+(\\.[0-9]+)?)% \\(updated: [0-9-]+\\)<!--END_ACCURACY_${{ matrix.model }}-->.*/\\1/p" README.md | head -n1)
525+ CURRENT_TOP5=$(sed -nE "s/.*<!--ACCURACY_${{ matrix.model }}_PLACEHOLDER-->Accuracy : Top-1: ([0-9]+(\\.[0-9]+)?)% \\| Top-5: ([0-9]+(\\.[0-9]+)?)% \\(updated: [0-9-]+\\)<!--END_ACCURACY_${{ matrix.model }}-->.*/\\3/p" README.md | head -n1)
526+
527+ if [ -n "$CURRENT_TOP1" ] && [ -n "$CURRENT_TOP5" ] && \
528+ [ "$CURRENT_TOP1" = "$TOP1_ACC" ] && [ "$CURRENT_TOP5" = "$TOP5_ACC" ]; then
529+ echo "Accuracy for ${{ matrix.model }} unchanged; keeping existing README update date"
530+ exit 0
531+ fi
532+
533+ DATE=$(date '+%Y-%m-%d')
534+
518535 UPDATE_TEXT="<!--ACCURACY_${{ matrix.model }}_PLACEHOLDER-->Accuracy : Top-1: ${TOP1_ACC}% | Top-5: ${TOP5_ACC}% (updated: ${DATE})<!--END_ACCURACY_${{ matrix.model }}-->"
519536 ESCAPED_UPDATE_TEXT=$(printf '%s\n' "$UPDATE_TEXT" | sed 's/[&|\\]/\\&/g')
520537
0 commit comments