Содержание
- Импорт адаптера Safetensors
- Импорт модели Safetensors
- Импорт модели или адаптера на основе GGUF
- Публикация модели на ollama.com
Импорт дообученного адаптера из весов Safetensors
Сначала создайте Modelfile с командой FROM, указывающей на базовую модель, которую вы использовали для дообучения, и командой ADAPTER, которая указывает на каталог с вашим адаптером Safetensors:
dockerfile
FROM <base model name>
ADAPTER /path/to/safetensors/adapter/directoryУбедитесь, что в команде FROM указана та же базовая модель, которую вы использовали для создания адаптера, иначе вы получите непредсказуемые результаты. Большинство фреймворков используют разные методы квантования, поэтому лучше использовать неквантованные (то есть не QLoRA) адаптеры. Если ваш адаптер находится в том же каталоге, что и Modelfile, используйте ADAPTER . для указания пути к адаптеру.
Теперь запустите ollama create из каталога, в котором был создан Modelfile:
shell
ollama create my-modelНаконец, проверьте работу модели:
shell
ollama run my-modelOllama поддерживает импорт адаптеров на основе нескольких различных архитектур моделей, включая:
- Llama (включая Llama 2, Llama 3, Llama 3.1 и Llama 3.2);
- Mistral (включая Mistral 1, Mistral 2 и Mixtral); и
- Gemma (включая Gemma 1 и Gemma 2)
Вы можете создать адаптер с помощью фреймворка или инструмента для дообучения, который может выводить адаптеры в формате Safetensors, например:
- Hugging Face фреймворк для дообучения
- Unsloth
- MLX
Импорт модели из весов Safetensors
Сначала создайте Modelfile с командой FROM, которая указывает на каталог с вашими весами Safetensors:
dockerfile
FROM /path/to/safetensors/directoryЕсли вы создаёте Modelfile в том же каталоге, что и веса, вы можете использовать команду FROM ..
Теперь запустите команду ollama create из каталога, в котором вы создали Modelfile:
shell
ollama create my-modelНаконец, проверьте работу модели:
shell
ollama run my-modelOllama поддерживает импорт моделей для нескольких различных архитектур, включая:
- Llama (включая Llama 2, Llama 3, Llama 3.1 и Llama 3.2);
- Mistral (включая Mistral 1, Mistral 2 и Mixtral);
- Gemma (включая Gemma 1 и Gemma 2); и
- Phi3
Сюда входит импорт базовых моделей, а также любых дообученных моделей, которые были слиты с базовой моделью.
Импорт модели или адаптера на основе GGUF
Если у вас есть модель или адаптер на основе GGUF, вы можете импортировать его в Ollama. Получить модель или адаптер GGUF можно следующими способами:
- преобразованием модели Safetensors с помощью скрипта
convert_hf_to_gguf.pyиз Llama.cpp; - преобразованием адаптера Safetensors с помощью скрипта
convert_lora_to_gguf.pyиз Llama.cpp; или - загрузкой модели или адаптера из таких источников, как HuggingFace
Для импорта модели GGUF создайте Modelfile со следующим содержимым:
dockerfile
FROM /path/to/file.ggufДля адаптера GGUF создайте Modelfile со следующим содержимым:
dockerfile
FROM <model name>
ADAPTER /path/to/file.ggufПри импорте адаптера GGUF важно использовать ту же базовую модель, на которой был создан адаптер. В качестве базовой модели можно использовать:
- модель из Ollama
- файл GGUF
- модель на основе Safetensors
После создания Modelfile используйте команду ollama create для сборки модели.
shell
ollama create my-modelКвантование модели
Квантование модели позволяет запускать модели быстрее и с меньшим потреблением памяти, но с пониженной точностью. Это даёт возможность запускать модель на менее производительном оборудовании.
Ollama может квантовать модели на основе FP16 и FP32 до разных уровней квантования с помощью флага -q/--quantize команды ollama create.
Сначала создайте Modelfile с моделью на основе FP16 или FP32, которую вы хотите квантовать.
dockerfile
FROM /path/to/my/gemma/f16/modelЗатем используйте ollama create для создания квантованной модели.
shell
$ ollama create --quantize q4_K_M mymodel
transferring model data
quantizing F16 model to Q4_K_M
creating new layer sha256:735e246cc1abfd06e9cdcf95504d6789a6cd1ad7577108a70d9902fef503c1bd
creating new layer sha256:0853f0ad24e5865173bbf9ffcc7b0f5d56b66fd690ab1009867e45e7d2c4db0f
writing manifest
successПоддерживаемые уровни квантования
q8_0
Квантование по методу k-средних
q4_K_Sq4_K_M
Публикация вашей модели на ollama.com
Вы можете поделиться любой созданной вами моделью, отправив её на ollama.com, чтобы другие пользователи могли её попробовать.
Сначала откройте в браузере страницу регистрации в Ollama. Если у вас уже есть аккаунт, вы можете пропустить этот шаг.

Поле Username будет использоваться как часть имени вашей модели (например, jmorganca/mymodel), поэтому убедитесь, что вас устраивает выбранное вами имя пользователя.
После создания аккаунта и входа в систему перейдите на страницу настроек ключей Ollama.
Следуйте инструкциям на странице, чтобы определить, где находится ваш открытый ключ Ollama.

Нажмите кнопку Add Ollama Public Key, затем скопируйте содержимое вашего открытого ключа Ollama и вставьте его в текстовое поле.
Чтобы отправить модель на ollama.com, сначала убедитесь, что она имеет корректное имя с указанием вашего имени пользователя. Возможно, вам придётся использовать команду ollama cp для копирования модели с присвоением ей правильного имени. Когда имя модели вас устроит, используйте команду ollama push для отправки её на ollama.com.
shell
ollama cp mymodel myuser/mymodel
ollama push myuser/mymodelПосле отправки модели другие пользователи могут загрузить и запустить её с помощью команды:
shell
ollama run myuser/mymodel