0504396140
* Use activations to calculate the stats * Determine calculation mode * Compute entropy for activations * Compute cosine similarity based on activations * Compute l2 norm * Add compute_layer_statistics() function * Update aggregated statistic report layout * Fix printing l2 norm when calc_mode = 1 * Refactor variable name * Compute aggregated (per layer) l2 norm * Update aggregated sum of squared activations per layer * Make ZD Score two-tailed * Update report layout * Reverse conditional logic to match convention * Rename report heading * Add --activation-statistics parameter * Add Euclidean–Cosine Score (ECS) * Add --activation-statistics logic to avoid doubling the imatrix size by default * Update stats output sort based on imatrix type * Process external NextN draft files (-md / --model-draft) * Refactor to use new llama_batch_ext Co-authored-by: compilade <git@compilade.net> Co-authored-by: Sigbjørn Skjæret <sigbjorn.skjaeret@huggingface.co>
31 lines
1005 B
C++
31 lines
1005 B
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
#include <map>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
inline constexpr const char * LLM_KV_IMATRIX_DATASETS = "imatrix.datasets";
|
|
inline constexpr const char * LLM_KV_IMATRIX_CHUNK_COUNT = "imatrix.chunk_count";
|
|
inline constexpr const char * LLM_KV_IMATRIX_CHUNK_SIZE = "imatrix.chunk_size";
|
|
inline constexpr const char * LLM_KV_IMATRIX_STATS_SCHEMA = "imatrix.stats_schema";
|
|
inline constexpr const char * LLM_KV_IMATRIX_N_LAYER_NEXTN = "imatrix.n_layer_nextn";
|
|
|
|
struct common_imatrix_entry {
|
|
std::vector<float> sums;
|
|
std::vector<float> activations;
|
|
std::vector<int64_t> counts;
|
|
};
|
|
|
|
struct common_imatrix {
|
|
std::map<std::string, common_imatrix_entry> entries;
|
|
std::vector<std::string> datasets;
|
|
int32_t chunk_count = 0;
|
|
int32_t chunk_size = 0;
|
|
int32_t n_layer_nextn = 0;
|
|
bool is_legacy = false;
|
|
bool has_metadata = false;
|
|
};
|
|
|
|
bool common_imatrix_load(const std::string & fname, common_imatrix & imatrix);
|