#pragma once #include #include #include #include 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"; struct common_imatrix_entry { std::vector sums; std::vector counts; }; struct common_imatrix { std::map entries; std::vector datasets; int32_t chunk_count = 0; int32_t chunk_size = 0; bool is_legacy = false; bool has_metadata = false; }; bool common_imatrix_load(const std::string & fname, common_imatrix & imatrix);