GGUF PTH
Конвертация файлов

Конвертировать GGUF в PTH

БЫСТРЫЙ ОТВЕТ
Возможно ли конвертировать GGUF в PTH?
Да - GGUF конвертируется в PTH.

Используйте Python-скрипт на базе библиотек gguf (класс GGUFReader) и dequantize() для чтения каждого тензора, приведения его к F32/F16, переименования ключей в оригинальные ключи PyTorch и вызова torch.save(). Нюанс: GGUF, который был квантован (Q4, Q5 и т.д.), никогда не вернет утраченную точность, поэтому полученные веса будут деквантованным приближением, а не оригинальной моделью.

На этой странице

Протестировано на macOS, Windows и Linux
Последняя проверка: Sep 2026

Больше бесплатных конвертеров

HEIC, PNG, WEBP, MP3 и другие - все инструменты здесь бесплатны.

Открыть инструменты

Зачем конвертировать GGUF в PTH?

Пользователи конвертируют .gguf в .pth, когда хотят дообучить или повторно квантовать модель в экосистеме PyTorch, имея на руках только сборку GGUF. GGUF хранит метаданные (как конфиг) и данные тензоров (как state dict), поэтому обратное сопоставление с PyTorch возможно для поддерживаемых архитектур. Это путь восстановления, а не преобразование без потерь.

Способы конвертации GGUF в PTH

Библиотека gguf Python + PyTorch OPEN-SOURCE

Установите gguf и torch, затем переберите GGUFReader(path).tensors, выполните gguf.quants.dequantize() для каждого и вызовите torch.save(state_dict, "model.pth"). Вам придется вручную сопоставить имена тензоров GGUF с оригинальными ключами модели.

gguf_to_safetensors с последующей конвертацией OPEN-SOURCE

Запустите gguf_to_safetensors для деквантования в файл .safetensors, затем загрузите его с помощью safetensors.torch.load_file и пересохраните через torch.save(), чтобы получить .pth.

Инструменты реверса llama.cpp FREE

Ридер gguf в llama.cpp открывает доступ к тензорам; напишите скрипт для этапа деквантования и записи state dict PyTorch. Корректно сработает только для архитектур, полностью поддерживаемых llama.cpp.

Об этих форматах

Качество и на что обратить внимание

  • Квантованные веса GGUF содержат потери - деквантование дает лишь приближение, а не оригинальные значения FP16/FP32.
  • Сопоставление имен тензоров зависит от архитектуры; для неподдерживаемых моделей ключи не совпадут, и конвертация не удастся.
  • Выходной файл .pth - это чистый state dict без класса модели, поэтому для его загрузки вам все равно понадобится соответствующий код модели PyTorch.

Часто задаваемые вопросы

Можно ли вернуть оригинал модели в точности?
Нет, если GGUF был квантован. Деквантование реконструирует тензоры полной точности из данных с потерями, поэтому небольшие численные различия останутся.
Нужен ли GPU?
Нет. Чтение и деквантование тензоров выполняется на CPU; GPU понадобится только если вы планируете использовать модель позже.
Почему при конвертации получаются неправильные имена тензоров?
Маппинг имен индивидуален для каждой архитектуры. Если модели нет в таблице сопоставления скрипта, ключи не совпадут с PyTorch и загрузка не удастся.
Что лучше: .pth или .safetensors?
.safetensors безопаснее для обмена (нет исполнения кода через pickle) и загружается быстрее, но .pth является нативным форматом state-dict PyTorch для обучения.