Quellcode durchsuchen

eval-callback : stop on first NaN (#15320)

* eval-callback : stop on first NaN

* cont : log error
Georgi Gerganov vor 5 Monaten
Ursprung
Commit
df36bce667
1 geänderte Dateien mit 7 neuen und 0 gelöschten Zeilen
  1. 7 0
      examples/eval-callback/eval-callback.cpp

+ 7 - 0
examples/eval-callback/eval-callback.cpp

@@ -7,6 +7,7 @@
 #include <cstdio>
 #include <string>
 #include <vector>
+#include <numeric>
 
 /**
  * This the arbitrary data which will be passed to each callback.
@@ -77,6 +78,12 @@ static void ggml_print_tensor(uint8_t * data, ggml_type type, const int64_t * ne
         LOG("                                     ]\n");
         LOG("                                     sum = %f\n", sum);
     }
+
+    // TODO: make this abort configurable/optional?
+    if (std::isnan(sum)) {
+        LOG_ERR("encountered NaN - aborting\n");
+        exit(0);
+    }
 }
 
 /**