ブログに戻る

はじめにガイド

DeepSeek API キー: どこに何を貼るか、そして最初の呼び出し

DeepSeek API キーとは何か、すべてのツールが求める 3 つの値(キー、ベース URL、モデル ID)、そして curl と Python での最初の動作するリクエスト。

投稿者: CheapTokens Team公開日 読了時間 6 分

カバー: DeepSeek API 呼び出しの 3 つの値 — キー、ベース URL、モデル ID
このページの内容
  1. API キーとは、結局何なのか?
  2. キーを環境変数に入れる
  3. 最初のリクエスト
  4. 表示されるべきもの
  5. うまくいかないとき
  6. 同じ 3 つの値の次の行き先

DeepSeek API キーは、リクエストを送信しているのが誰かを API に伝える秘密の文字列です。ただし、ツールが必要とするのはキー単体ではありません。キー、ベース URL、モデル ID の 3 つの値をまとめて必要とします。この 3 つを設定すれば、最初の呼び出しは成功します。

おそらくこのページにたどり着いたのは、スクリプト、エディタのプラグイン、n8n ノードなど、何かのフォームが「あなたの DeepSeek API キー」を求めているからでしょう。問題ありません。各フィールドが何を求めているかを確認し、それから実際に 1 回リクエストを送ってみましょう。

API キーとは、結局何なのか?#

ホテルのキーカードを思い浮かべてください。カードにはあなたが誰かという言葉は書かれていません。ただあなたの部屋のドアを開け、フロントがあなたの部屋に請求するだけです。API キーも同じ役割を果たします。サーバーはリクエスト内のキーを見て、どのアカウントに請求するかを把握し、呼び出しを通します。カードを失えば、誰でも入ってあなたの部屋に請求できてしまいます。だからこそ、キーはコードやチャットの外に保管します。(詳しい話は What is an API key and how to store it safely にあります。)

DeepSeek 自身の API ドキュメント(2026 年 11 月 4 日時点)も同じ習慣を示しています。サンプルを実行する前にキーを環境変数 DEEPSEEK_API_KEY に入れ、API は OpenAI 形式に従うため、api_key と base_url を変更すれば OpenAI SDK がそのまま動作します。これがすべてのコツであり、キーが単独で使われることがない理由です。

フラッシュカード

すべてのツールが求める 3 つの値

よくつまずくポイントが 1 つあります。キーはそれを発行したサービスに属します。CheapTokens のキーは CheapTokens のアドレスと組み合わせ、モデル ID は CheapTokens が一覧に載せているものを使用します。ある場所のキーを別の場所のアドレスと混ぜると、応答ではなく認可エラーが返ります。

The three values: key, base URL, model id
The three values a tool needs for the first call

キーを環境変数に入れる#

CheapTokens アカウントでキーを作成し(手順は docs にあります)、リクエストが引き出せるよう残高を補充しておきます。そしてキーをファイルに貼り付けるのではなく、変数に保存します。

macOS または Linux:

bash
export CHEAPTOKENS_API_KEY='paste-your-key-here'

Windows PowerShell(現在のウィンドウのみ):

powershell
$env:CHEAPTOKENS_API_KEY = 'paste-your-key-here'

paste-your-key-here の部分はプレースホルダーです。実際のキーは自分のターミナルでそこに入れ、他のどこにも置かないでください。ハードコードされたキーより優れている理由と、漏洩した場合の対処法は Store an API key safely: env variable, .gitignore, leak fix にあります。

最初のリクエスト#

動作を確認したいだけなら、モデルに API キーを 1 文で説明するよう頼んでみましょう。同じリクエストを 2 通りで示します。使うタブを選んでください。

deepseek-ai/DeepSeek-V4-Flash-0731 への最初のリクエスト

curl

bash
curl https://api.cheaptokens.dev/v1/chat/completions \
  -H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-ai/DeepSeek-V4-Flash-0731",
    "messages": [{"role": "user", "content": "Explain an API key in one sentence."}],
    "max_tokens": 200
  }'

Python

python
import os
from openai import OpenAI

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

resp = client.chat.completions.create(
    model='deepseek-ai/DeepSeek-V4-Flash-0731',
    messages=[{'role': 'user', 'content': 'Explain an API key in one sentence.'}],
    max_tokens=200,
)

print(resp.choices[0].message.content)
print(resp.usage)

Python 版では pip install openai が 1 回必要です。OpenAI SDK 向けに書かれたスクリプトと比べて何が変わったか見てください。api_key、base_url、model — 同じ 3 つの値です。それ以外はすべてそのままです。

The Python request with the key, base URL and model id each labelled with a comment
The same three values in the Python SDK

表示されるべきもの#

応答は JSON です。回答のテキストは choices[0].message.content に入っており、Python スクリプトが最初に出力するのはこれです。そのすぐ隣に prompt_tokens、completion_tokens、total_tokens を含む usage ブロックがあります。入力トークン数、出力トークン数、そしてその合計です。コストはこの 2 つの数値から計算されるため、最初の呼び出しでも目を通す価値があります(Input vs output tokens で内訳を説明しています)。

規模感をつかむために: このような呼び出しはごく小さいものです。入力 30 トークン、出力 200 トークンとすると — 例の max_tokens 上限、つまりこのリクエストで発生しうる最も高価な呼び出しです。コストは $0.00002 です。これを 1000 回行うと次のようになり、参考として OpenRouter も並べています:

モデル リクエストあたり 1,000 リクエスト OpenRouter、1,000 リクエスト
GLM-5.3-Flash $0.0000086 $0.0086 $0.0176
DeepSeek-V4-Flash $0.00002 $0.0205 $0.0301
MiniMax-M2.7 $0.000032 $0.0315 $0.378

リクエストあたり 30 入力トークンと 200 出力トークン。100万トークンあたりの価格は現行のもので、当社の料金体系に合わせて変動します。OpenRouter 列は同じワークロードの参考価格を示しています。

その ID の背後にあるモデルは DeepSeek-V4-Flash です。380K トークンのコンテキストウィンドウと、1 回の回答で最大 32,768 トークンを持ちます。価格は時間帯にかかわらず同じで、ピーク時の割増はなく、1 つの残高ですべてのモデルをカバーします。入力と出力を合わせた合計では、OpenRouter より安くなり、上の表がまさにそれを示しています。モデルの詳細: DeepSeek on CheapTokens、現在の価格は pricing page にあります。

うまくいかないとき#

最初の呼び出しの失敗は、ほぼすべて 3 つの値のいずれかが間違っていることが原因です。症状を原因と照らし合わせてください:

ペアを合わせる

各症状を原因と照合する

  • 401 Unauthorizedキーが欠けている、入力ミスがある、または別のサービスに属している
  • "model not found"(エラーテキストにモデル名が含まれる)モデル ID が完全な形ではない: deepseek-ai/DeepSeek-V4-Flash-0731 を使用する
  • アドレス自体での接続エラーまたは 404(エラーに "model" という語がない)ベース URL のタイプミス。たとえば /v1 の欠落や別ドメイン

これらのエラーの完全な解説は API 401 or 404 error: wrong key, base URL or model id にあります。どの ID を使うかわからない場合は、API 自体に尋ねてください: List models with GET /v1/models。

同じ 3 つの値の次の行き先#

一度覚えてしまえば移植できる、というのがポイントです。OpenAI 互換 API と通信するほぼすべてのツールは、何らかの形で同じ値 — キー、アドレス、モデル — を求めます。スクリプト(LangChain、LiteLLM)では引数、アプリやノーコードノードではフィールドや設定です。コードを書かずに Postman で試すこともできます。このモデルでのストリーミングと長い回答については、DeepSeek-V4-Flash quickstart に進んでください。

チェックリスト

完了前に確認すること