~/tools / Файлы моделей и шаблоны чата / Ollama Modelfile Generator
Ollama Modelfile Generator — Соберите Modelfile для Ollama: FROM, SYSTEM, PARAMETER, MESSAGE и другое
Соберите Modelfile для Ollama в форме: базовая модель, системное сообщение, параметры вроде temperature и num_ctx, стоп-последовательности, примеры сообщений, шаблон, минимальная версия Ollama, дополнительные возможности и лицензия. Значения проверяются по официальному справочнику Modelfile и заключаются в кавычки, чтобы Ollama прочитала их без изменений. Данные не покидают ваш браузер.
Шаблон, минимальная версия, возможности и лицензия
Modelfile
FROM llama3.2 PARAMETER num_ctx 4096 PARAMETER temperature 1 SYSTEM """Answer in one short sentence.""" MESSAGE user Is Toronto in Canada? MESSAGE assistant yes
Команды
Сохраните текст выше в файл с именем Modelfile в текущем каталоге, затем выполните:
ollama create short-answers -f ./Modelfile ollama run short-answers
Инструкции, параметры и значения по умолчанию приведены по справочнику Modelfile на 2026-11-09. Справочник Ollama Modelfile
Всё выполняется в вашем браузере. Введённые данные никуда не отправляются.
Modelfile — это чертёж, по которому Ollama создаёт модель командой ollama create. В нём базовая модель указывается через FROM, а ещё можно добавить системное сообщение, параметры, пример диалога, шаблон промпта, минимальную версию Ollama, дополнительные возможности и лицензию. Формат простой, но несколько деталей приводят к ошибкам: PARAMETER принимает только имена из справочника, и каждый параметр ожидает целое или десятичное число; стоп-последовательности задаются по одной на строку; текст, занимающий несколько строк, нужно заключить в тройные кавычки. Этот инструмент пишет файл за вас. Он перечисляет только инструкции и параметры из официального справочника Modelfile, показывает значение по умолчанию рядом с каждым полем, сообщает, если значение будет отклонено, и заключает каждое значение в кавычки так, как его читает собственный парсер Ollama. Мы проверили результат на Ollama 0.40.11: создали модели из сгенерированных файлов и прочитали их обратно командой ollama show --modelfile. REQUIRES и CAPABILITY мы проверили так же. Инструмент также выдаёт команды ollama create и ollama run для выбранного вами имени модели.
Основная логика этого инструмента открыта под лицензией MIT. github.com/seigo5555/toolkitbox-lib/src/modelfile.ts
Когда пригодится
- Сделать копию модели из библиотеки со своим системным сообщением и temperature и запускать её под новым именем
- Задать более крупное контекстное окно (num_ctx) или фиксированный seed для модели, которую вы запускаете на VPS
- Добавить короткий пример диалога, показывающий модели, как отвечать
Как пользоваться
- Укажите базовую модель в FROM: модель из библиотеки Ollama (например, llama3.2), путь к файлу GGUF или каталог с весами Safetensors. Введите имя для новой модели.
- Напишите системное сообщение и заполните только те параметры, которые хотите изменить. Пустые поля не записываются, поэтому значения базовой модели остаются в силе. При необходимости добавьте стоп-последовательности по одной на строку и примеры сообщений.
- Скопируйте Modelfile в файл с именем Modelfile, затем выполните две команды, показанные под ним: ollama create создаёт модель, а ollama run запускает её.
Формат Modelfile
Modelfile — это текстовый файл, в котором на каждой строке записана одна инструкция с аргументами. Строки, начинающиеся с #, — комментарии. По официальному справочнику, регистр инструкций не важен, а порядок может быть любым. Обязательна только FROM.
Значение обычно идёт до конца строки. Значение, занимающее несколько строк, заключается в три двойные кавычки ("""). В парсере Ollama (parser/parser.go) нет механизма экранирования, поэтому если """ встретится в конце строки внутри вашего текста, значение закончится именно там. В таком случае инструмент показывает ошибку.
Инструкции
| Инструкция | Что делает | Этот инструмент |
|---|---|---|
| FROM | Базовая модель: имя модели из библиотеки, файл GGUF или каталог с весами Safetensors | Поддерживается |
| PARAMETER | Параметры запуска модели | Поддерживается (11 из таблицы справочника) |
| TEMPLATE | Шаблон промпта, передаваемый модели, в синтаксисе шаблонов Go | Поддерживается |
| SYSTEM | Системное сообщение, задаваемое в шаблоне | Поддерживается |
| LICENSE | Лицензия модели | Поддерживается |
| MESSAGE | Пример диалога с ролями system, user и assistant | Поддерживается |
| REQUIRES | Минимально необходимая версия Ollama | Поддерживается |
| CAPABILITY | Добавляет возможность модели GGUF или MLX | Поддерживается |
Для CAPABILITY справочник советует объявлять decision только для весов, обученных под её промпты. В нашем тесте на Ollama 0.40.11 остальные значения добавлялись к уже имеющимся возможностям модели, но при decision перечислялись только объявленные значения.
Официальные документы расходятся в значении num_ctx по умолчанию
Серые значения по умолчанию рядом с полями взяты из таблицы в справочнике Modelfile. Для num_ctx (длины контекста) там указано 2048, но другие страницы той же официальной документации называют другие значения.
| Страница | Длина контекста по умолчанию |
|---|---|
| Справочник Modelfile | 2048 |
| FAQ | 4096 токенов |
| Длина контекста | Зависит от VRAM: 4k при объёме меньше 24 GiB, 32k при 24–48 GiB, 256k при 48 GiB и более |
Чтобы увидеть значение, которое используется на самом деле, выполните ollama ps, пока модель загружена, и посмотрите на столбец CONTEXT. Чтобы зафиксировать значение, напишите PARAMETER num_ctx.
Что мы проверили на Ollama 0.40.11
30 октября 2026 года мы выполнили ollama create для файлов, созданных этим инструментом, и прочитали их обратно командой ollama show --modelfile.
- Десятичное число вроде 1.5 в целочисленном параметре (num_ctx и других) приводит к тому, что ollama create завершается с ошибкой invalid int value.
- Текст в десятичном параметре (temperature и других) даёт ошибку invalid float value.
- Записи вроде top_p 1e-1 и top_p .5 принимаются, как и seed -1.
- Значение SYSTEM, заключённое в """, сохраняет свои двойные кавычки, двойную кавычку в конце строки и отступы.
- Стоп-последовательность в двойных кавычках сохраняет пробелы в начале и в конце.
- Если опустить SYSTEM, новая модель сохраняет системное сообщение базовой модели.
Проверка созданной модели
- Создайте модель командой ollama create <имя> -f ./Modelfile.
- Выполните ollama show --modelfile <имя>, чтобы увидеть Modelfile в том виде, в каком его прочитала Ollama. Там же видно, взяли ли пропущенные вами настройки значения у базовой модели.
- Запустите модель командой ollama run <имя>.
Источники (проверено 2026-11-09): Ollama: Modelfile Reference / Ollama: FAQ / Ollama: Context length / ollama/ollama: parser/parser.go
Вопросы
Какие параметры можно задать?
Те, что перечислены в официальном справочнике Modelfile: num_ctx, repeat_last_n, repeat_penalty, temperature, seed, stop, num_predict, draft_num_predict, top_k, top_p и min_p. Справочник помечает каждый как целое число, десятичное число или строку. При проверке на Ollama 0.40.11 десятичное число в целочисленном параметре давало ошибку invalid int value, а текст в десятичном параметре — ошибку invalid float value. Инструмент показывает ту же проблему до запуска ollama create.
Почему некоторые значения заключены в тройные кавычки?
В Modelfile значение заканчивается в конце строки, если оно не взято в кавычки. Парсер Ollama читает значение, которое начинается с трёх двойных кавычек, пока не встретит три двойные кавычки в конце строки, поэтому текст из нескольких строк нужно оформлять именно так. Инструмент всегда заключает так системное сообщение, шаблон и лицензию, а пример сообщения — если оно состоит из нескольких строк, начинается с двойной кавычки или начинается либо заканчивается пробелом. Стоп-последовательности заключаются в двойные кавычки, поэтому пробелы в начале и в конце сохраняются.
Может ли мой текст содержать три двойные кавычки подряд?
Нет. В формате нет символа экранирования, поэтому три двойные кавычки в конце строки закроют значение раньше времени, а следующая строка будет прочитана как инструкция, и ollama create завершится ошибкой. Инструмент сообщает об этом как об ошибке. Перепишите этот фрагмент текста.
Что происходит с настройками, которые я оставил пустыми?
Они не записываются, и новая модель сохраняет то, что наследует от базовой. Например, модель, созданная из qwen2.5:7b без SYSTEM, сохраняет системное сообщение qwen2.5:7b. Чтобы узнать, что базовая модель уже задаёт, выполните ollama show --modelfile с её именем.
Проверяет ли инструмент, что базовая модель существует?
Нет. Он не обращается ни к Ollama, ни к библиотеке. Если имя или путь в FROM неверны, об этом сообщит ollama create. Путь к GGUF читается относительно расположения Modelfile, если вы не указали абсолютный путь.
Отправляется ли что-нибудь на сервер?
Нет. Modelfile собирается в вашем браузере.