~/tools / Файлы моделей и шаблоны чата / GGUF Metadata Viewer

GGUF Metadata Viewer — Откройте файл GGUF: квантизация, контекст, токенизатор, тензоры, кэш KV

Откройте файл модели GGUF в браузере и посмотрите, что внутри, не загружая его: архитектуру, квантизацию, число параметров, самый длинный контекст, слои и головы внимания, токенизатор с его специальными токенами, шаблон чата, каждую запись метаданных и каждый тензор. Инструмент также считает кэш KV для каждой длины контекста и проверяет файл так, как это делает llama.cpp, поэтому вы заметите незавершённую загрузку до импорта в Ollama. Читается только начало файла, и ничего не загружается на сервер.

Или перетащите файл сюда. Читается только начало файла, и он остаётся на вашем компьютере. В нашем тесте файл с весами, который Ollama хранит в папке models/blobs, тоже оказался файлом GGUF.

Кэш KV = 2 × слои × головы KV × размер головы × 2 байта (f16) × длина контекста. Для qwen2.5:7b это даёт 224 MiB при 4096 токенах — размер из лога Ollama в нашем тесте.

Веса — это данные тензоров, хранящиеся в файле; вместе с заголовком они составляют файл. Для запуска модели нужны также кэш KV и рабочая память, которые добавляет оценщик памяти.

Проверено 2026-11-08 по спецификации GGUF и ридеру llama.cpp, а также на настоящем файле qwen2.5:7b: его метаданные и 339 тензоров совпали с тем, что сообщает Ollama 0.40.11. Спецификация GGUF · Ollama: импорт модели

Файл читается в вашем браузере и не загружается на сервер. Читается только его начало.

GGUF — это формат файлов, который llama.cpp и Ollama используют для моделей. Файл GGUF начинается с заголовка: версии формата, списка записей метаданных (таких как general.architecture, <architecture>.context_length, tokenizer.ggml.tokens и tokenizer.chat_template) и списка тензоров с их именами, формами, типами и положением. Затем идут веса. Этот инструмент читает только заголовок по схеме из спецификации GGUF в репозитории ggml, поэтому файл в несколько гигабайт открывается мгновенно: у qwen2.5:7b заголовок занимает 5.7 MiB в файле размером 4.36 GiB. По заголовку он показывает имя модели, архитектуру и квантизацию (general.file_type), считает параметры по формам тензоров и складывает размер весов для каждого типа тензора, используя размеры блоков из gguf-py в llama.cpp. Он показывает форму модели (слои, головы внимания, головы KV, размер головы, настройки RoPE, эксперты), токенизатор с токенами начала и конца текста и шаблон чата. По слоям, головам KV и размеру головы он считает кэш KV для f16, типа по умолчанию в Ollama: 2 (ключи и значения) × слои × головы KV × размер головы × 2 байта × длина контекста. Он также проверяет то, что проверяет собственный ридер llama.cpp (gguf.cpp), например версию формата, порядок байтов, повторяющиеся ключи и имена тензоров, выравнивание, типы тензоров и положение каждого тензора, и сравнивает размер, описанный в заголовке, с размером файла. Мы проверили инструмент на настоящем файле qwen2.5:7b, который хранит Ollama 0.40.11: метаданные, 339 тензоров (имена, типы и формы) и число параметров совпали с тем, что сообщает /api/show в Ollama, а размер, вычисленный по заголовку, совпал с размером файла до байта.

Основная логика этого инструмента открыта под лицензией MIT. github.com/seigo5555/toolkitbox-lib/src/gguf.ts

Когда пригодится

  • Проверить GGUF, скачанный с Hugging Face, перед импортом в Ollama: квантизацию, длину контекста, шаблон чата и полноту загрузки
  • Узнать по самому файлу, сколько памяти нужно весам и кэшу KV модели
  • Посмотреть метаданные и тензоры модели, которая уже есть в Ollama, открыв её файл в папке models/blobs Ollama

Как пользоваться

  1. Выберите файл .gguf или перетащите его в поле. Чтобы посмотреть модель, которая есть в Ollama, ollama show --modelfile <model> выводит после FROM путь к её файлу.
  2. Инструмент читает начало файла и показывает модель, её форму, кэш KV, веса по типам и токенизатор.
  3. Откройте «Все метаданные» или «Все тензоры», чтобы увидеть полные списки. Для файла, которого ещё нет в Ollama, инструмент показывает строку Modelfile для его импорта.

Вопросы

Файл загружается на сервер?

Нет. Браузер читает файл на вашем компьютере, а инструмент читает только его начало: заголовок с метаданными и списком тензоров. Веса не читаются.

Почему инструмент пишет, что файл короче, чем указано в заголовке?

Заголовок перечисляет каждый тензор с его размером и положением, поэтому по нему видно, каким должен быть размер файла. Если файл короче, часть весов отсутствует, например потому, что загрузка или копирование оборвались раньше времени. На такой файл llama.cpp отвечает остановкой с сообщением "model is corrupted or incomplete".

В чём разница между general.file_type и типами тензоров?

general.file_type называет основную квантизацию файла, например Q4_K_M. В файле типы смешиваются: в qwen2.5:7b Q4_K_M большинство тензоров имеют тип Q4_K, часть — Q6_K, а маленькие, такие как веса нормализации, — F32. Таблица весов по типам показывает эту смесь.

Можно ли открыть файлы моделей, которые Ollama уже скачала?

Да. Ollama хранит веса модели в своей папке models/blobs, в файле с именем sha256-…. В нашем тесте ollama show --modelfile qwen2.5:7b вывела после FROM путь к этому файлу, и это был файл GGUF.

Как импортировать GGUF в Ollama?

В руководстве Ollama по импорту используется Modelfile со строкой FROM /path/to/file.gguf, а затем ollama create. Для модели, разбитой на несколько файлов, сохраните исходные имена файлов и используйте шаблон с подстановочным знаком, который подходит ко всем частям. Ollama не квантизует модели GGUF при импорте.

Насколько точен размер кэша KV?

Формула совпала с логом Ollama в нашем тесте (224 MiB для qwen2.5:7b при 4096 токенах). Она рассчитана на f16, тип по умолчанию в Ollama. Модели со скользящим окном, общим или сжатым кэшем KV либо с рекуррентными слоями используют другой объём; инструмент сообщает об этом, если это видно по метаданным.

Похожие