DeepSeek-V4.1-Flash APIの使い方

DeepSeek-V4.1-Flash API の呼び出し:モデルID deepseek-flash、ベースURL、curl/Python/Node での初回呼び出し、推論の労力、画像入力、ストリーミング、価格設定。

INEZA Felin-Michel

INEZA Felin-Michel

10 9月 2026

DeepSeek-V4.1-Flash APIの使い方

Apidog エンタープライズ

オンプレミスデプロイ

SSO & RBAC

SOC 2 準拠

Apidog Enterpriseを見る

本日、2026年9月10日、DeepSeek-V4.1-FlashがAPIでGA(一般提供)になりました。リリースノートは短いものですが、DeepSeek APIを呼び出すすべての人にとって3つの変更点があります。今後使用するモデルIDは`deepseek-flash`の1つになります。トークンあたりの料金が再び引き下げられました。そして、4日後の9月14日には、`deepseek-v4-pro`へのすべてのリクエストがこのモデルにリダイレクトされ、Flash価格で請求されます。

最後の点が、このガイドが存在する理由です。V4-Proで本番コードを使用している場合、移行日を選択する余地はありません。V4-Flashを使用している場合、古い名前で既に新しいモデルによってサービスが提供されています。いずれにせよ、今日送信するパラメータは確認する価値があります。

この記事では、モデルID、ベースURL、3つの言語での最初の呼び出し、推論の労力、画像入力、ストリーミング、および価格設定といった実用的な側面を扱います。アーキテクチャとベンチマークの詳細については、まずDeepSeek-V4.1-Flashとはをお読みください。

コードに何かを組み込む前に、リクエストを迅速に送信し、レスポンスを比較する方法が必要です。Apidogがこれを処理します。`https://api.deepseek.com`を指し示し、キーを変数として保存し、動作する各呼び出しを再実行可能なテストとして保存します。ワークフローは記事の最後にあります。

ボタン

要点

API利用者にとって何が変わったか

以下は、リリースノートと変更履歴から抜粋した変更点です。

1つのモデルID。正式名称は`deepseek-flash`となり、バージョン情報は含まれません。プロンプトとテストはバージョン文字列ではなく、動作に固定してください。次回のFlashリリースも同じ名前で提供されるためです。

従来の名称も引き続きルーティングされます。 `deepseek-v4-flash`と`deepseek-v4-flash-vision-exp`は現時点では受け入れられますが、それらの背後にあるモデル、V4-FlashとV4-Flash-Vision-Expは廃止されました。これらの名称へのリクエストはV4.1-Flashによって処理されます。何も壊れませんが、想定しているモデルが実行されているわけではありません。可能な時に名称を変更してください。

ベータ版の名称はなくなりました。 9月8日から2日間実施されたベータ版は`deepseek-v4.1-flash-expires-on-0910`として稼働していました。これは約束通り期限切れとなりました。`deepseek-flash`に切り替えてください。

ベースURLとフォーマットは変更ありません。 OpenAI互換の呼び出しは`https://api.deepseek.com`へ、Anthropic互換の呼び出しは`https://api.deepseek.com/anthropic`へ送信され、Flashラインが既にサポートしていたレスポンスAPIフォーマットも引き継がれます。SDKの設定を変更する必要はありません。

V4-Proにはあと4日しかありません。 2026年9月14日午前4時(UTC)(北京時間12時)以降、`deepseek-v4-pro`へのすべてのリクエストはV4.1-Flashにルーティングされ、V4.1-Flashの料金で請求されます。DeepSeekが述べた理由は、V4.1-Flashが「パフォーマンス、コスト、速度、総時間においてV4 Proを総合的に凌駕している」というもので、複数の関係者によるテストを引用しています。これはベンダー側の主張です。V4-Pro廃止移行ガイドは、切り替えが行われる前に、ご自身のプロンプトでこれを検証する方法を示しています。

ステップ1: キーを取得する

DeepSeekプラットフォームにサインインし、APIキーを開いて作成してください。キーは`sk-`で始まります。ソースコードに直接貼り付けるのではなく、エクスポートしてください。

export DEEPSEEK_API_KEY="sk-your-key-here"

DeepSeek固有のSDKは必要ありません。ベースURLを変更すれば、OpenAIおよびAnthropicクライアントライブラリの両方が機能します。

ステップ2: 最初の呼び出しを行う

`curl`が最初に来るのは、API自体以外のすべての変数を排除するためです。

curl https://api.deepseek.com/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer ${DEEPSEEK_API_KEY}" \
  -d '{
    "model": "deepseek-flash",
    "messages": [
      {"role": "system", "content": "You are a support engineer for a payments API."},
      {"role": "user", "content": "A customer gets HTTP 402 on /v1/charges. List the three most likely causes."}
    ],
    "stream": false
  }'

OpenAI Python SDKを通じた同じ呼び出し:

# pip install openai
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["DEEPSEEK_API_KEY"],
    base_url="https://api.deepseek.com",
)

response = client.chat.completions.create(
    model="deepseek-flash",
    messages=[
        {"role": "system", "content": "You are a support engineer for a payments API."},
        {"role": "user", "content": "A customer gets HTTP 402 on /v1/charges. List the three most likely causes."},
    ],
)

print(response.choices[0].message.content)

そしてNode:

// npm install openai
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.deepseek.com",
  apiKey: process.env.DEEPSEEK_API_KEY,
});

const completion = await client.chat.completions.create({
  model: "deepseek-flash",
  messages: [
    { role: "user", content: "Write a Postgres migration that adds a nullable refunded_at timestamp to invoices." },
  ],
});

console.log(completion.choices[0].message.content);

V4-Flash APIガイドに従って以前のリリースを設定した場合、唯一の違いはモデル文字列です。

ステップ3: 推論の労力と思考モード

モデルカードは、推論の労力を1から100のスケールで「連続的に制御可能」と説明しています。これは、ほとんどのAPIが公開している低/中/高のプリセットとは異なり、階層ごとではなくエンドポイントごとにコストとレイテンシを調整できることを意味します。

その1から100の値を運ぶパラメータの形式は、APIドキュメントと[検証中]です。それが確認されるまで、V4-Flashのパターンから始めます: `reasoning_effort`に加えて、`extra_body`を介して渡される`thinking`オブジェクトです。

response = client.chat.completions.create(
    model="deepseek-flash",
    messages=[{"role": "user", "content": "Our Redis cluster drops 2% of SETs under load. Plan the investigation."}],
    reasoning_effort="high",
    extra_body={"thinking": {"type": "enabled"}},
)

モデルカードで推奨されるサンプリング設定は次のとおりです: `temperature` 1.0、`top_p` 0.95または1.0、そして長い推論トレースには256K以上の`max_tokens`。最大出力は384Kトークンです。

実用的な使い分けとして、オートコンプリート、分類、ユーザーが待機しているものには思考モードをオフにします。エージェントループ、複数ファイルのコード修正、デバッグには高い労力で思考モードをオンにします。その後、測定してください。出力に見えない労力も、結局のところ料金を支払っていることになります。

ステップ4: 画像を送信する

V4.1-Flashはネイティブにマルチモーダルであり、45兆トークンのマルチモーダルコーパスで訓練され、DeepSeek-ViTエンコーダはゼロから訓練されました。リクエスト形式はV4-Flash-Vision-Expから引き継がれており、画像はユーザーメッセージの`content`配列の一部です。

response = client.chat.completions.create(
    model="deepseek-flash",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "Extract every line item and the total from this receipt as JSON."},
            {"type": "image_url", "image_url": {"url": "https://cdn.example-shop.com/receipts/48213.png"}},
        ],
    }],
)

ローカルファイルの場合、base64データURLとしてエンコードします。

import base64

with open("receipt.png", "rb") as f:
    data_url = "data:image/png;base64," + base64.b64encode(f.read()).decode()

# その後、image_urlパートに{"url": data_url}を渡します

制限: base64データURLは最大32MiB、外部URLは最大8,192文字、またはファイルIDです。オプションの`detail`フィールドも受け入れられます。DeepSeekはDocVQAで95.6を報告しており、これは上記の文書読み取りのケースです。ビジョンAPIガイドでは、複数画像プロンプト、詳細レベル、およびリクエストあたりの画像コストについて説明しています。

ステップ5: レスポンスをストリーミングする

`stream=True`を設定すると、エンドポイントはサーバー送信イベントを返します。推論コンテンツと回答コンテンツは別々の差分として届きます。これは、UIで「思考中」の状態をレンダリングする際に重要です。

stream = client.chat.completions.create(
    model="deepseek-flash",
    messages=[{"role": "user", "content": "Explain idempotency keys in one paragraph."}],
    stream=True,
)

for chunk in stream:
    delta = chunk.choices[0].delta
    if delta.content:
        print(delta.content, end="", flush=True)

SSEが初めての方は、サーバー送信イベントを使用したLLMレスポンスのストリーミングで、ワイヤーフォーマットと再接続のエッジケースについて説明されています。

料金の概要

公式の料金ページによると、2026年9月10日午前4時(UTC)から適用される100万トークンあたりの米ドル価格です。

deepseek-flash オフピーク deepseek-flash ピーク
入力、キャッシュヒット $0.003 $0.006
入力、キャッシュミス $0.15 $0.30
出力 $0.60 $1.20

知っておくべき3つのこと:

ApidogでAPIをテストする

最初の呼び出しが機能した後、それが継続して機能するかどうかが問題になります。`deepseek-flash`にはバージョン情報がないため、次回のアップグレードはサイレントに行われます。それを検出するApidogのワークフローを以下に示します。

  1. エンドポイントを追加します。 `POST https://api.deepseek.com/chat/completions`を作成するか、OpenAI互換のOpenAPI仕様をインポートして、すべてのルートを一度に利用できるようにします。
  2. キーを環境変数として保存します。 `DEEPSEEK_API_KEY`をApidog環境に設定し、ヘッダーを`Bearer {{DEEPSEEK_API_KEY}}`に設定します。個人キーと本番キーの切り替えはドロップダウンでできるようになります。
  3. 労力レベルごとに1つのリクエストを保存します。 基本リクエストをバリアントに複製します: 思考オフ、低労力で思考オン、高労力で思考オン。同じプロンプトでもパラメータは異なります。これら3つすべてを送信し、トークン使用量とレイテンシを並べて比較します。
  4. ストリームを監視します。 `stream: true`の場合、ApidogはSSEイベントが到着すると同時にレンダリングするため、推論の差分とコンテンツの差分が`data:`プレフィックスの羅列ではなく、別々の行として表示されます。
  5. バリアントをテストシナリオに変換します。 ステータスコード、2回目の実行時の`usage`内のキャッシュヒット数がゼロより大きいこと、およびアプリが解析するフィールドがレスポンスに含まれていることについてアサーションを追加します。モデルが更新されるたびに、また9月14日にV4-Proのリダイレクトが開始されたときにシナリオを再実行します。
  6. CIで実行します。 `apidog-cli`はパイプラインから同じシナリオを実行するため、サイレントなモデル変更は顧客ではなくビルドを失敗させます。

Apidogをダウンロードすれば、全体のセットアップは約10分で完了します。

FAQ(よくある質問)

リダイレクト前に

APIの表面的な変更はほとんどありませんでした: 同じベースURL、同じリクエスト形式、新しいモデルIDが1つ。変更されたのは価格と、9月14日に行われるすべてのV4-Pro呼び出しのルーティングです。DeepSeekがあなたのために行う前に、`deepseek-v4-flash`を`deepseek-flash`にリネームし、エンドポイントごとに労力レベルを選択し、新しいモデルでプロンプトを実行してください。

その際、それらのプロンプトをテストとして保存してください。Apidogはワンクリックでそれらを再実行し、次回のサイレントなFlashアップグレードはサポートチケットではなく、アサーションの失敗として現れるでしょう。

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる