diff options
author | Pierrick Hymbert <pierrick.hymbert@gmail.com> | 2024-04-13 11:33:52 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-13 11:33:52 +0200 |
commit | 4bd0f93e4ab4fe6682e7d0241c1bdec1397e954a (patch) | |
tree | da912ccbf957473fb5aa6868c9cd73f0fcc42e63 /examples/eval-callback/eval-callback.cpp | |
parent | ab9a3240a9da941fdef5cd4a25f2b97c2f5a67aa (diff) |
model: support arch `DbrxForCausalLM` (#6515)
* model: dbrx convert to gguf
#6344
* llama: support dbrx
#6344
* doc: dbrx: add the model as supported
* scripts: get-wikitext-2 add unzip
* llama: increase maximum experts allowed
* llama: factorize moe graph implementation between grok, mixtral and dbrx
---------
Co-authored-by: Megha Agarwal <16129366+megha95@users.noreply.github.com>
Diffstat (limited to 'examples/eval-callback/eval-callback.cpp')
-rw-r--r-- | examples/eval-callback/eval-callback.cpp | 26 |
1 files changed, 18 insertions, 8 deletions
diff --git a/examples/eval-callback/eval-callback.cpp b/examples/eval-callback/eval-callback.cpp index 05f7d6ab..29b5f3b3 100644 --- a/examples/eval-callback/eval-callback.cpp +++ b/examples/eval-callback/eval-callback.cpp @@ -28,14 +28,27 @@ static std::string ggml_ne_string(const ggml_tensor * t) { } static void ggml_print_tensor(uint8_t * data, ggml_type type, const int64_t * ne, const size_t * nb, int64_t n) { + GGML_ASSERT(n > 0); float sum = 0; for (int64_t i3 = 0; i3 < ne[3]; i3++) { printf(" [\n"); - for (int64_t i2 = 0; i2 < ne[2] && i2 < n; i2++) { + for (int64_t i2 = 0; i2 < ne[2]; i2++) { + if (i2 == n && ne[2] > 2*n) { + printf(" ..., \n"); + i2 = ne[2] - n; + } printf(" [\n"); - for (int64_t i1 = 0; i1 < ne[1] && i1 < n; i1++) { + for (int64_t i1 = 0; i1 < ne[1]; i1++) { + if (i1 == n && ne[1] > 2*n) { + printf(" ..., \n"); + i1 = ne[1] - n; + } printf(" ["); - for (int64_t i0 = 0; i0 < ne[0] && i0 < n; i0++) { + for (int64_t i0 = 0; i0 < ne[0]; i0++) { + if (i0 == n && ne[0] > 2*n) { + printf("..., "); + i0 = ne[0] - n; + } size_t i = i3 * nb[3] + i2 * nb[2] + i1 * nb[1] + i0 * nb[0]; float v; if (type == GGML_TYPE_F16) { @@ -51,17 +64,14 @@ static void ggml_print_tensor(uint8_t * data, ggml_type type, const int64_t * ne } else { GGML_ASSERT(false); } - printf("%8.4f", v); + printf("%12.4f", v); sum += v; - if (i0 < ne[0] - 1 && i0 < n - 1) printf(", "); + if (i0 < ne[0] - 1) printf(", "); } - if (ne[0] > n) printf(", ..."); printf("],\n"); } - if (ne[1] > n) printf(" ...\n"); printf(" ],\n"); } - if (ne[2] > n) printf(" ...\n"); printf(" ]\n"); printf(" sum = %f\n", sum); } |