コスト最適化比較
DeepSeek をローカルで実行するか API を使うか?ハードウェア、速度、コスト
GPU と RAM で DeepSeek V4-Flash を実行できるか、期待できる速度、base_url を変更する方が簡単な場合を確認。コスト表付き。

このページの内容
おそらく無理です。128 GB の RAM か Mac Studio クラスのマシンを所有しているか、すべてのトークンを自分のディスクに置いておく理由がある場合を除いて。DeepSeek V4-Flash のファイルだけで約 100 GB あり、あるコミュニティガイドによれば高価なハードウェアでも毎秒約 6〜10 トークンです。ほとんどのアプリやエージェントループでは、OpenAI クライアントをホスト型 API に向けるのが近道です。base_url とキーを変更するだけで、コードの他の部分は何も変わりません。
以下では、自分のマシンを 5 分で確認する方法、期待できる速度、実際のワークロードを API 経由で実行した場合のコストを説明します。
DeepSeek はメモリに収まるか?#
ここでのサイズは、DeepSeek をローカルで実行するためのコミュニティガイド(GitHub の deepseek-、18 部構成、CC BY 4.0、2026 年 10 月 22 日閲覧)に基づいています。これは非公式であり、DeepSeek とは提携していません。ガイド自体のページ間でもサイズが完全には一致していないため、100 GB のダウンロードを開始する前に Hugging Face のモデルカードでファイルサイズを確認してください。
ガイドによると、DeepSeek V4-Flash-0731 は 284B パラメータで、そのうちトークンあたり 13B がアクティブです。ファイルは次のとおりです。
テーブルを右にスクロールしてください →
| 量子化 | ファイルサイズ(ガイドの数値) |
|---|---|
| Q3 | 約 103 GB |
| Q4 | 約 155 GB |
| Q8 | 約 162 GB |
モデル全体をビデオメモリに置く必要はありません。llama.cpp はエキスパート層をシステム RAM に保持できますが、ガイドの経験則は率直です。24 GB の GPU には 128 GB の RAM が必要です。
24 GB の GPU と 64 GB の RAM を搭載した高性能ゲーミング PC があるとします。両方を足して最小のファイルと比較してください。
24 + 64 = 88 GB、Q3 ファイルは 103 GB です。
収まりませんし、OS 自体もメモリを必要とします。24 GB の VRAM と 128 GB の RAM があれば 152 GB となり、103 GB のファイルは余裕を持って収まります。
新しい DeepSeek-V4.1-Flash-1017 はさらに大きく、同じガイドによれば約 552B パラメータに加えて 196B の Engram があり、FP8 で約 510 GB、2 ビットで約 167 GB です。サポートももう一つの問題です。ガイド時点(2026 年 10 月 22 日確認)では、deepseek_v41 アーキテクチャがサポートされていないため Ollama では動作せず、llama.cpp と LM Studio のサポートもメインブランチにはありません。これは急速に変わるため、計画を立てる前に使用するエンジンのリリースノートを確認してください。
速度はどれくらいか?#
ガイドには 2 つの測定値があり、どちらも重い量子化でのコミュニティの数値なので、ベンチマークではなく桁感として読んでください。
- 128 GB の DGX Spark、IQ2 の V4-Flash:毎秒約 6〜7 トークン。
- 256 GB の Mac Studio M3 Ultra、MLX 2 ビットの V4.1-Flash:毎秒約 9.5 トークン。
ガイドには RTX 4090 や 5090 の数値はありません。
これはどのくらいの感覚でしょうか?1,000 トークンの回答はおよそ 1 ページ半のテキストです。
1,000 ÷ 9.5 = 105.3 秒
1,000 ÷ 6 = 166.7 秒
ストリーミングしながら読むチャットなら、遅いですが使えます。タスクごとに何十回も呼び出すエージェントなら、すぐに積み上がります。ループが 1 日に 2,000,000 出力トークンを生成し、マシンが休みなく実際に毎秒 9.5 トークンを生成するとします。
2,000,000 ÷ 9.5 = 210,526 秒
210,526 ÷ 3,600 = 58.5 時間
1 日分の作業に対して 1 日以上の生成時間です。実際のサーバーは複数のリクエストをまとめてバッチ処理するので、チームにとってはそれほど厳しい話ではありませんが、製品を作る代わりにエンジンをチューニングすることになります。
同じワークロードを API 経由で実行した場合のコスト#
例を具体的にしましょう。エージェントループが 1 日に 1,000 万入力トークンを送信し、200 万出力トークンを受け取ると仮定します。これらは仮定の数値なので、使用ログから自分の数値に置き換えてください。
DeepSeek 自身の料金ページ(2026 年 10 月 22 日、ページ自体に日付表示なし)には、DeepSeek-V4.1-Flash-1017 が提供する deepseek-flash が 1M トークンあたり、オフピーク / ピークで次の価格で記載されています。キャッシュミスの入力 $0.15 / $0.30、出力 $0.60 / $1.20。ピーク時間は UTC の月曜から金曜の 01:00〜04:00 と 06:00〜10:00(中国の祝日を除く)で、オフピークはピークの半額です。キャッシュヒットの入力ははるかに安い($0.003 / $0.006)ため、同じ長いプレフィックスを再送するループはここに示す数値より低くなります。
仮定のワークロードで、キャッシュミスの場合:
オフピーク:10 × $0.15 + 2 × $0.60 = 1 日あたり $2.70
ピーク:10 × $0.30 + 2 × $1.20 = 1 日あたり $5.40
CheapTokens では、同種のエージェントループに対して MiniMax-M2.7(minimax-m2.7)を選べます。時間帯を問わず固定価格で、ピーク時間帯はなく、回答あたり最大 8,192 出力トークン、180K コンテキスト、すべてのモデルで 1 つの残高です。同じ 1,000 万入力と 200 万出力トークンで 1 日あたり $0.80 です。全体として、入力と出力を合計すると OpenRouter より安くなります。まさにこのワークロードのライブ表は次のとおりです。
| モデル | 入力 $/1M | 出力 $/1M | コスト | OpenRouter |
|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.28 | $0.565 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.35 | $0.789 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.80 | $5.40 |
合計 10,000,000 入力トークンと 2,000,000 出力トークン。100万トークンあたりの価格は現行のもので、当社の料金体系に合わせて変動します。OpenRouter 列は同じワークロードの参考価格を示しています。
この表は表示されるたびに現在の価格リストを読み込むため、価格が変わっても正しいままです。完全な価格リストは CheapTokens の料金ページ にあり、2026 年の DeepSeek API 料金 ではキャッシュヒットとピーク時間が請求額をどう変えるかを説明しています。
自前のハードウェアはいつ元が取れるか?#
ローカルトークンはリクエストごとのコストはかかりませんが、マシンには費用がかかります。確認する簡単な方法は次のとおりです。
payback days = hardware price ÷ (daily API bill − daily electricity)ハードウェアの価格は変動が大きすぎるためここでは示しません。見積もられた価格を入れてください。感覚をつかむために、上記の DeepSeek 料金ページのオフピーク請求額を使います。ハードウェアの $1,000 ごとに、電気代と自分の時間を除いて、API 請求の何日分で元が取れるか:
1,000 ÷ 2.70 = 370.4 日
そして、これはマシンがそもそもこの量を処理できると仮定した場合です。毎秒 9.5 トークンでは処理できません(上記の速度セクションを参照)。したがって、エージェントのワークロードでは元が取れません。ローカルがより理にかなうのは次の場合です。
- データがネットワーク外に出てはならず、それが請求額より重要な場合。
- すでにマシンを所有していて負荷が軽い場合。たとえば個人ツールで 1 日に数百リクエスト程度。
- 重み自体を試したい場合。量子化、ファインチューニング、好みのエンジンなど。
API がより理にかなうのは、ワークロードがエージェントやサービスである場合、数秒で回答が必要な場合、またはハードウェアが上記のメモリサイズを下回る場合です。マシンが最も軽い DeepSeek ファイルにも小さすぎる場合、MiniMax-M2.7(180K コンテキスト、回答あたり最大 8,192 出力トークン、全体として OpenRouter より安い)は同じクライアント経由で試せるモデルです。
ローカルからホスト型 API への移行#
趣味のプロジェクトは Ollama で始まり、その後大きくなりすぎることがよくあります。良い知らせは、ローカルエンジンが OpenAI プロトコルを話すことです。Ollama の互換性ページ(docs.ollama.com、2026 年 10 月 22 日確認)にはエンドポイント http:/ が示されています。クライアントは何らかの api_key 値を必要としますが、Ollama はそれを無視します。ストリーミング、JSON モード、ツールは動作します。logprobs は動作しません。
したがって、切り替えは 2 行とモデル名だけです。
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)動作すると、1 文の要約と、プロンプトと完了のトークン数を含む usage オブジェクトが表示されます。これは請求額の基になるのと同じ数値です。CheapTokens API は Anthropic Messages 形式も受け付け、ドキュメント では最初のリクエストを段階的に示しています。base_url が初めてなら、OpenAI 互換 API:base_url とは何か が 2 分でわかります。
動作しない場合#
localhost:11434でのConnection refused:Ollama が実行されていないか、まだローカルアドレスを指しています。401:キーが欠落しているか、スペース付きでコピーされています。例のように環境変数から読み取ってください。404または不明なモデル:モデル ID が一致していません。ローカル名とホスト名は異なるため、ドキュメントから ID をコピーしてください。
どちらを選ぶか#
128 GB 以上を所有していて興味があるなら、自宅で重みを実行して制御を楽しんでください。1 日に数百万トークンを消費するエージェントや、ユーザーが回答を待つサービスを構築するなら、API を使ってローカル環境は実験用に取っておいてください。コードはどちらでも同じなので、一方で始めてもう一方に後で移行できます。セルフホスティングについては DeepInfer がセルフホスティングに何をもたらすか を、API 経由で DeepSeek を試すには CheapTokens の DeepSeek モデル をご覧ください。



