Назад до блогу

Оптимізація витратПорівняння

Запускати DeepSeek локально чи використовувати API? Обладнання, швидкість, вартість

Перевірте, чи здатні ваш GPU і RAM запустити DeepSeek V4-Flash, якої швидкості очікувати та коли змінити base_url простіше. Включає таблицю витрат.

Автор: CheapTokens TeamОпубліковано Оновлено 7 хв читання

Дві колонки, Local і API, порівнюють запуск DeepSeek на власному обладнанні з викликом розміщеного API шляхом зміни base_url
На цій сторінці
  1. Чи вміститься DeepSeek у вашу пам’ять?
  2. Наскільки це швидко?
  3. Скільки коштує те саме навантаження через API
  4. Коли ваше власне обладнання окупається?
  5. Перехід від локального до розміщеного API
  6. Якщо не працює
  7. Що вибрати

Ймовірно, ні, якщо ви не маєте 128 ГБ оперативної пам’яті або машини класу Mac Studio, або у вас немає причин зберігати кожен токен на власному диску. Лише файл DeepSeek V4-Flash займає близько 100 ГБ, і один посібник від спільноти повідомляє про приблизно 6–10 токенів за секунду навіть на дорогому обладнанні. Для більшості застосунків і агентних циклів коротший шлях — спрямувати клієнт OpenAI на розміщений API: ви змінюєте base_url і ключ, і більше нічого у вашому коді.

Нижче: як перевірити власну машину за п’ять хвилин, якої швидкості очікувати та скільки коштує реальне навантаження через API.

Чи вміститься DeepSeek у вашу пам’ять?#

Розміри тут походять із посібника спільноти щодо запуску DeepSeek локально (deepseek-local-guide-ru на GitHub, 18 частин, CC BY 4.0, прочитано 22 жовтня 2026 року). Він неофіційний і не пов’язаний із DeepSeek. Сторінки самого посібника не повністю узгоджуються між собою щодо розмірів, тому підтвердьте розмір файлу на картці моделі Hugging Face, перш ніж починати завантаження на 100 ГБ.

Згідно з посібником, DeepSeek V4-Flash-0731 має 284B параметрів, з яких 13B активні на токен. Файли:

Квантування Розмір файлу (за посібником)
Q3 близько 103 ГБ
Q4 близько 155 ГБ
Q8 близько 162 ГБ

Модель не обов’язково повинна повністю розміщуватися у відеопам’яті. llama.cpp може тримати експертні шари в системній RAM, але правило посібника прямолінійне: GPU на 24 ГБ потребує 128 ГБ RAM поруч.

Скажімо, у вас хороший ігровий ПК із GPU на 24 ГБ і 64 ГБ RAM. Додайте ці два значення й порівняйте з найменшим файлом:

24 + 64 = 88 ГБ, а файл Q3 — 103 ГБ.

Він не вміщується, а операційній системі ще потрібна власна пам’ять. З 24 ГБ VRAM і 128 ГБ RAM ви маєте 152 ГБ, і файл на 103 ГБ вміщується із запасом.

Новіша DeepSeek-V4.1-Flash-1017 більша: близько 552B параметрів плюс 196B Engram, приблизно 510 ГБ у FP8 і близько 167 ГБ у 2-бітному форматі, згідно з тим самим посібником. Підтримка — інша проблема. Станом на посібник (перевірено 22 жовтня 2026 року) вона не працює в Ollama, оскільки архітектура deepseek_v41 не підтримується, а підтримка в llama.cpp і LM Studio відсутня в їхніх основних гілках. Це швидко змінюється, тому перегляньте примітки до випуску вашого рушія, перш ніж планувати на його основі.

Наскільки це швидко?#

Посібник наводить два вимірювання, обидва за важкого квантування й обидва — числа спільноти, тому читайте їх як порядки величин, а не як бенчмарк:

  • DGX Spark із 128 ГБ, V4-Flash у IQ2: близько 6–7 токенів за секунду.
  • Mac Studio M3 Ultra із 256 ГБ, V4.1-Flash у MLX 2-bit: близько 9,5 токенів за секунду.

У посібнику немає даних для RTX 4090 або 5090.

Як це відчувається? Відповідь на 1 000 токенів — це приблизно півтори сторінки тексту:

1 000 ÷ 9,5 = 105,3 секунди

1 000 ÷ 6 = 166,7 секунди

Для чату, який ви читаєте в міру надходження, це повільно, але прийнятно. Для агента, який робить десятки викликів на завдання, це швидко накопичується. Скажімо, ваш цикл продукує 2 000 000 вихідних токенів на день, а машина справді генерує 9,5 токенів за секунду без перерв:

2 000 000 ÷ 9,5 = 210 526 секунд

210 526 ÷ 3 600 = 58,5 години

Це більше ніж доба генерації за один день роботи. Реальні сервери об’єднують кілька запитів у пакети, тож для команди картина не така похмура, але ви налаштовували б рушій замість того, щоб будувати свій продукт.

Скільки коштує те саме навантаження через API#

Зробимо приклад конкретним. Припустимо, агентний цикл надсилає 10 мільйонів вхідних токенів і отримує 2 мільйони вихідних токенів на день. Це припущені числа, замініть їх своїми з журналу використання.

Власна сторінка цін DeepSeek (22 жовтня 2026 року, сама сторінка не показує дати) вказує deepseek-flash, що обслуговується DeepSeek-V4.1-Flash-1017, за такими цінами за 1M токенів, поза піком / у пік: вхід із промахом кешу $0,15 / $0,30, вихід $0,60 / $1,20. Пікові години — 01:00–04:00 і 06:00–10:00 UTC, з понеділка по п’ятницю, крім китайських державних свят; поза піком — половина піку. Вхід із влучанням у кеш значно дешевший ($0,003 / $0,006), тож цикл, який повторно надсилає той самий довгий префікс, вийде нижче наведених тут чисел.

Для припущеного навантаження, з промахами кешу:

Поза піком: 10 × $0,15 + 2 × $0,60 = $2,70 на день

У пік: 10 × $0,30 + 2 × $1,20 = $5,40 на день

На CheapTokens для такого самого агентного циклу візьміть MiniMax-M2.7 (minimax-m2.7): одна фіксована ціна в будь-яку годину, без пікового вікна, до 8 192 вихідних токенів на відповідь, контекст 180K і один баланс для всіх моделей. Ті самі 10M вхідних і 2M вихідних токенів коштують $0.80 на день. Загалом, з урахуванням входу й виходу разом, це дешевше за OpenRouter; ось жива таблиця саме для цього навантаження:

Модель Вартість OpenRouter
GLM-5.3-Flash $0.28 $0.565
DeepSeek-V4-Flash $0.35 $0.789
MiniMax-M2.7 $0.80 $5.40

10 000 000 вхідних і 2 000 000 вихідних токенів загалом. Ціни за 1 млн токенів актуальні та змінюються разом із нашими тарифами; стовпець OpenRouter показує довідкові ціни для того самого навантаження.

Таблиця читає поточний прайс-лист щоразу, коли її показано, тому залишається правильною, коли ціни змінюються. Повний прайс-лист на сторінці цін CheapTokens, а ціни DeepSeek API у 2026 році пояснюють, як влучання в кеш і пікові години змінюють рахунок.

Коли ваше власне обладнання окупається?#

Локальні токени не коштують нічого за запит, але машина коштує. Простий спосіб перевірити:

text
payback days = hardware price ÷ (daily API bill − daily electricity)

Я не наводжу тут ціну обладнання, бо вона надто змінюється; вставте ту, яку вам назвали. Щоб відчути масштаб, візьміть рахунок поза піком із сторінки цін DeepSeek вище. Кожні $1 000 обладнання потребують стільки днів рахунку за API для беззбитковості, до електроенергії та вашого часу:

1 000 ÷ 2,70 = 370,4 дня

І це припускає, що машина взагалі здатна видати такий обсяг: за 9,5 токенів за секунду вона не може (див. розділ про швидкість вище), тож для агентного навантаження окупність не сходиться. Локальний варіант має більше сенсу, коли:

  • дані не повинні залишати вашу мережу, і це важливіше за рахунок;
  • ви вже володієте машиною, і навантаження легке, скажімо кілька сотень запитів на день для особистого інструмента;
  • ви хочете експериментувати з самими вагами: квантуванням, донавчанням, рушієм на ваш вибір.

API має більше сенсу, коли навантаження — це агент або сервіс, коли вам потрібна відповідь за секунди, або коли ваше обладнання нижче за наведені розміри пам’яті. Якщо ваша машина замала навіть для найлегшого файлу DeepSeek, MiniMax-M2.7 (контекст 180K, до 8 192 вихідних токенів на відповідь, загалом дешевше за OpenRouter) — це модель, яку варто спробувати через той самий клієнт.

Перехід від локального до розміщеного API#

Хобі-проєкти часто починаються на Ollama, а потім переростають її. Добра новина: локальні рушії розмовляють протоколом OpenAI. Сторінка сумісності Ollama (docs.ollama.com, перевірено 22 жовтня 2026 року) показує кінцеву точку http://localhost:11434/v1/; клієнту потрібне якесь значення api_key, але Ollama його ігнорує. Потокова передача, режим JSON і інструменти працюють; logprobs — ні.

Тож перемикання — це два рядки плюс назва моделі:

python
import os
from openai import OpenAI

# Local Ollama: the key is required by the client but ignored by the server
# client = OpenAI(base_url="http://localhost:11434/v1/", api_key="ollama")

client = OpenAI(
    base_url="https://api.cheaptokens.dev/v1",
    api_key=os.environ["CHEAPTOKENS_API_KEY"],
)

reply = client.chat.completions.create(
    model="MiniMaxAI/MiniMax-M2.7",  # take the exact id from the CheapTokens docs
    messages=[{"role": "user", "content": "Summarize this ticket in one sentence: ..."}],
    max_tokens=200,
)
print(reply.choices[0].message.content)
print(reply.usage)

Коли це працює, ви бачите підсумок в одному реченні та об’єкт usage з кількістю токенів запиту й завершення — ті самі числа, з яких будується ваш рахунок. API CheapTokens також приймає формат Anthropic Messages, а документація показує перший запит крок за кроком. Якщо base_url для вас нове, OpenAI-сумісний API: що таке base_url займе дві хвилини.

Якщо не працює#

  • Connection refused на localhost:11434: Ollama не запущена, або ви досі вказуєте на локальну адресу.
  • 401: ключ відсутній або скопійований із пробілом; читайте його зі змінної середовища, як у прикладі.
  • 404 або невідома модель: ідентифікатор моделі не збігається. Локальні назви й розміщені назви відрізняються, тому скопіюйте ідентифікатор із документації.

Що вибрати#

Якщо ви маєте 128 ГБ або більше і вам цікаво, запустіть ваги вдома й насолоджуйтеся контролем. Якщо ви будуєте агента, який спалює мільйони токенів на день, або сервіс, де користувачі чекають на відповідь, використовуйте API, а локальне налаштування залиште для експериментів. Код залишається тим самим в обох випадках, тож ви можете почати з одного й перейти на інше пізніше. Більше про бік самостійного розміщення дивіться в що DeepInfer означає для самостійного розміщення; щоб спробувати DeepSeek через API, дивіться моделі DeepSeek на CheapTokens.