Локальные модели на Apple Silicon

Сколько токенов в секунду реально выдаёт Mac mini

Замеры на нашем железе, а не оценки по спецификации. Методика открыта, данные под лицензией CC BY, можно перепроверять и цитировать. Ниже два блока, и их важно не путать. Первый измерен. Второй посчитан по формуле, и мы уже проверили её на замерах M5 Pro.

Измерено

M4 (Mac mini), 16 ГБ, 120 GB/s

Ollama 0.31.2, квантование Q4_K_M, 3 прогона на модель плюс отброшенный прогревочный, разброс 0.1 процента.

МодельПараметровГенерация, ток/сОбработка промпта, ток/с
Llama 3.2 3B3B46.71720
Mistral 7B7B22.8645
Qwen 2.5 7B7B22.31130
Llama 3.1 8B8B21.2587
DeepSeek R1 8B8B20.0531
Qwen 2.5 14B14B11.7606

Что из этого следует практически. Всё до 8B выдаёт больше 20 токенов в секунду, это быстрее, чем читает человек. 14B на 16 ГБ запускается, но 11.7 токена это уже ожидание. Обработка промпта идёт на порядок быстрее генерации, длинный контекст не проблема, проблема сгенерировать ответ на него.

Прогноз, не замер

Новая линейка M6, M5 Pro, M5 Max и M5 Ultra

Новая линейка Apple в продаже с 22 сентября 2026. Цифры ниже посчитаны по правилу, выведенному на наших замерах M4 и проверенному на M5 Pro. Генерация упирается в полосу памяти, поэтому скорость примерно равна полосе, делённой на размер весов, с поправкой 0.83 на накладные расходы. Поправка выведена из четырёх замеренных моделей, а не взята с потолка. По мере появления замеров новой линейки таблица обновляется, а прогноз остаётся рядом, чтобы было видно, где он промахнулся.

МодельВес, ГБM4 (замер)M6 16 GB
16 ГБ, 153 GB/s
M6 32 GB
32 ГБ, 170 GB/s
M5 Pro
64 ГБ, 307 GB/s
M5 Max
128 ГБ, 614 GB/s
M5 Ultra
512 ГБ, 1.2 TB/s
Llama 3.2 3B246.7≈64≈71≈127≈255≈498
Llama 3.1 8B4.921.2≈26≈29≈52≈104≈203
Qwen 2.5 14B8.511.7≈15≈17≈30≈60≈117
Qwen 2.5 32B19не влезаетне влезает≈7.4≈13≈27≈52
Llama 3.3 70B40не влезаетне влезаетне влезает≈6.4≈13≈25
Qwen 2.5 72B41не влезаетне влезаетне влезает≈6.2≈12≈24
DeepSeek V3 671B380не влезаетне влезаетне влезаетне влезаетне влезает≈2.6

Токены в секунду на генерации, Q4_K_M. Модель считается влезающей, если её вес с запасом 20 процентов на кэш контекста и систему помещается в память.

Где прогноз почти наверняка ошибётся

Маленькие модели на широкой шине. Сотни токенов в секунду для 3B на M5 Max и Ultra не будет, там узкое место уходит от памяти к вычислениям. Для M5 Max это уже подтвердилось на чужих замерах, сверка ниже. Крупные модели на Ultra, у которого два кристалла на мосту, формула считает единой полосой, и как модель между ними разложится, из спецификации не следует. И прогноз только про генерацию, скорость обработки промпта в полосу не упирается вовсе.

Проверка прогноза

Прогноз против замеров на M5 Pro и M5 Max

Первая проверка наша. На M5 Pro 48 ГБ тем же методом, что и на M4, Qwen 2.5 14B выдал 29.4 токена в секунду при прогнозе 30, расхождение 2.0 процента. Машина при замере не простаивала, так что это нижняя граница.

Вторая проверка по независимой сводке. Сообщество llama.cpp ведёт таблицу замеров Apple Silicon, где каждый чип меряют одной командой на одной сборке, и там уже есть M5 Pro и M5 Max. Модель в таблице Llama 2 7B, а не наши, поэтому проверяется само правило: полоса памяти, умноженная на 0.83 и делённая на вес модели.

ЧипКвантованиеВес, ГБПрогноз, ток/сЗамер, ток/сОшибка прогноза
M5 Pro 307 ГБ/сF1613.518.921.55-12.3%
M5 Pro 307 ГБ/сQ8_07.235.638.92-8.5%
M5 Pro 307 ГБ/сQ4_03.866.766.33+0.6%
M5 Max 614 ГБ/сF1613.537.837.11+1.9%
M5 Max 614 ГБ/сQ8_07.271.272.42-1.7%
M5 Max 614 ГБ/сQ4_03.8133.3119.92+11.2%

Средняя ошибка правила на 6 точках 6.0 процента, наибольшая 12.3. Промахи в обе стороны, систематического завышения нет. Там, где мы заранее ждали промаха, он и случился: самая лёгкая модель на самой широкой шине, M5 Max на Q4_0, вышла на 11.2 процента ниже прогноза. На широкой шине у маленькой модели упор смещается от памяти к вычислениям и накладным расходам движка.

Модель и инструмент в сводке другие, чем у нас, поэтому она проверяет само правило. Речь только о генерации, обработка промпта от полосы не зависит.

Источник: обсуждение #4167 в репозитории llama.cpp, сборка c1d0e7a, команда llama-bench -p 512 -n 128 -ngl 99. Сверено 24 сентября 2026.

Методика

Как мерили и как перепроверить

Ollama REST API, запрос без стриминга, один и тот же промпт для всех моделей, num_predict 512, temperature 0.7. Один прогревочный запрос отбрасывается, затем 3 записанных прогона, публикуется медиана. Скорость генерации это eval_count делить на eval_duration, как их отдаёт сама Ollama. Машина в остальном простаивала, macOS 15.3.1 (Sequoia).

Сырые данные в JSON лежат по адресу macyou.co/benchmarks.json. Если у вас есть другое железо и полчаса, прогоните ту же методику и пришлите цифры, соберём общую таблицу.

Проверить на своей задаче до покупки

Все машины из таблицы можно взять в аренду на месяц, поставить свою модель и померить на своих данных. Дешевле, чем купить и обнаружить, что 16 ГБ не хватило.

Выбрать машину