Skills MCP Model 博客 提交 Skills

DeepSeek API 完全ドキュメント

DeepSeek API の包括的なガイド:基本呼び出しから高度な機能まで、Chat Completions、Streaming、Function Calling、R1 推論モデル、Token 計算、エラー処理、多言語 SDK サンプルを網羅。OpenAI SDK と互換性があり、移行コストはゼロです。

学習を始める

API 概要

DeepSeek API は OpenAI と完全互換のインターフェース形式を提供します。任意の OpenAI SDK を直接使用して呼び出すことができ、base_url と api_key を変更するだけです。

Base URL と認証

# Base URL https://api.deepseek.com/v1 # 認証方法:HTTP ヘッダーに Bearer Token を含める Authorization: Bearer sk-your-api-key-here # API キー取得: https://platform.deepseek.com/api_keys

レート制限

リクエスト頻度 (RPM) デフォルト 500 回/分(公式に連絡して引き上げ可能)
同時接続数 デフォルト 100 同時リクエスト
Token レート (TPM) デフォルト 500,000 TPM

サポートモデル

モデル名 API パラメータ値 説明
DeepSeek V3 deepseek-chat フラッグシップ対話モデル、一般的なシナリオに最適
DeepSeek R1 deepseek-reasoner 推論強化モデル、数学/論理/プログラミング向け

価格表

モデル 入力 (100万トークンあたり) 出力 (100万トークンあたり) コンテキストウィンドウ
deepseek-chat (V3) $0.27 (キャッシュヒット $0.07) $1.10 160K
deepseek-reasoner (R1) $0.55 (キャッシュヒット $0.14) $2.19 128K

Chat Completions API

Chat Completions は DeepSeek API の中核となるインターフェースで、テキスト対話、コード生成、コンテンツ作成など、すべての対話シナリオをサポートします。OpenAI Chat Completions API 形式と互換性があります。

API エンドポイント

# POST リクエスト POST https://api.deepseek.com/v1/chat/completions # Content-Type Content-Type: application/json

リクエストパラメータ

パラメータ名 必須 デフォルト値 説明
model string はい - モデル ID: deepseek-chat または deepseek-reasoner
messages array はい - 対話メッセージのリスト。各メッセージは role と content を含む
temperature float いいえ 1.0 サンプリング温度。範囲 0~2。高いほどランダム、低いほど決定的
top_p float いいえ 1.0 核サンプリングパラメータ。範囲 0~1。temperature と top_p はどちらか一方のみ調整することを推奨
max_tokens integer いいえ 4096 最大出力トークン数。V3 は最大 8K、R1 は最大 32K
stream boolean いいえ false ストリーミング出力(SSE)を有効にするかどうか
frequency_penalty float いいえ 0 頻度ペナルティ、範囲 -2〜2。正の値は繰り返しコンテンツの確率を下げます。
presence_penalty float いいえ 0 存在ペナルティ、範囲 -2〜2。正の値は新しいトピックを話すことを促進します。
stop string/array いいえ null 停止語、最大16個。停止語に遭遇すると出力を直ちに終了します。
tools array いいえ null Function Calling ツール定義リスト。

レスポンス形式

{ "id": "chatcmpl-xxx", "object": "chat.completion", "created": 1710000000, "model": "deepseek-chat", "choices": [ { "index": 0, "message": { "role": "assistant", "content": "こんにちは!何かお手伝いできますか?" }, "finish_reason": "stop" } ], "usage": { "prompt_tokens": 10, "completion_tokens": 8, "total_tokens": 18 } }

finish_reason の一般的な値:stop(正常終了)、length(max_tokens 制限に達した)、content_filter(コンテンツがフィルタリングされた)、tool_calls(関数呼び出しがトリガーされた)。

多輪会話

DeepSeek API は messages 配列を通じて多輪会話を実現します。各リクエストで完全な会話履歴をモデルに送信し、モデルはコンテキストに基づいて会話の意図を理解し、一貫性のある応答を返します。

メッセージロール

role 説明
system システムプロンプト。会話のスタイル、役割、境界、ルールを設定するために使用します。messages 配列の最初の要素に配置します。
user ユーザーメッセージ。ユーザーが入力した質問や指示です。
assistant アシスタントメッセージ。モデルが以前に生成した応答です。会話のコンテキストを維持するために、過去の assistant メッセージも一緒に送信する必要があります。

多輪会話の例

{ "model": "deepseek-chat", "messages": [ {"role": "system", "content": "あなたはプロの Python プログラミングアシスタントで、すべての回答は中国語で行います。"}, {"role": "user", "content": "Python で CSV ファイルを読み取るには?"}, {"role": "assistant", "content": "csv モジュールまたは pandas ライブラリを使用できます。推奨:import pandas as pd; df = pd.read_csv('file.csv')"}, {"role": "user", "content": "ファイルが非常に大きい場合はどうすればよいですか?"} ] }

コンテキストウィンドウ管理

DeepSeek V3 は 160K トークンのコンテキストウィンドウをサポートし、R1 は 128K をサポートします。会話履歴が長くなりすぎた場合は、コンテキスト管理が必要です:

  • スライディングウィンドウ:最新の N ターンのみを保持し、最も古いメッセージを破棄します。
  • 要約圧縮:モデルを使用して初期の会話の要約を生成し、元のメッセージを置き換えます。
  • 重要なメッセージの保持:システムプロンプトとユーザーの核心的な質問は常に保持し、中間の会話のみを切り詰めます。
  • トークンカウント:各リクエストの前に総トークン数を推定し、コンテキストウィンドウを超えないようにします。

ストリーミング出力

ストリーミング出力により、モデルはトークンごとに結果を返すため、ユーザーは完全な応答を待つことなく、生成中のコンテンツをリアルタイムで確認できます。長文生成やチャットアプリケーションでは、ストリーミングによってユーザーエクスペリエンスが大幅に向上します。

SSE形式の説明

DeepSeekのストリーミング出力は、Server-Sent Events (SSE) プロトコルに基づいています。各チャンクは data: で始まり、\n\n で終わります。各チャンクにはJSONオブジェクトが含まれ、その中の choices[0].delta.content フィールドに増分テキストが含まれます。

# SSEデータストリームの例 data: {"id":"chatcmpl-xxx","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"你好"}}]} data: {"id":"chatcmpl-xxx","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"!"}}]} data: {"id":"chatcmpl-xxx","object":"chat.completion.chunk","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]} data: [DONE]

Pythonストリーミング例

from openai import OpenAI client = OpenAI( api_key="sk-your-api-key", base_url="https://api.deepseek.com/v1", ) response = client.chat.completions.create( model="deepseek-chat", messages=[ {"role": "user", "content": "写一首关于春天的五言绝句"} ], stream=True, ) for chunk in response: if chunk.choices[0].delta.content: print(chunk.choices[0].delta.content, end="", flush=True)

JavaScript (Node.js) ストリーミング例

import OpenAI from 'openai'; const client = new OpenAI({ apiKey: 'sk-your-api-key', baseURL: 'https://api.deepseek.com/v1', }); const stream = await client.chat.completions.create({ model: 'deepseek-chat', messages: [{ role: 'user', content: '写一首关于春天的五言绝句' }], stream: true, }); for await (const chunk of stream) { const content = chunk.choices[0]?.delta?.content || ''; process.stdout.write(content); }

SSEストリームの解析方法

SDKを使用せず、HTTPリクエストで直接ストリーミングデータを取得する場合は、SSE形式を手動で解析する必要があります:

  • レスポンスボディを1行ずつ読み取り、各行は data: で始まります
  • data: [DONE] が現れたらストリームの終了です
  • dataの後のJSON文字列を解析し、choices[0].delta.content を抽出します
  • 空行は異なるイベント(チャンク)を区切るために使用されます

Function Calling(関数呼び出し)

Function Calling により、モデルは外部関数をいつ呼び出すかをインテリジェントに決定し、ユーザーの自然言語を構造化された関数パラメータに変換できます。これは AI Agent やツール呼び出しシナリオを構築するための核となる機能です。

ツール定義形式

リクエストの tools パラメータで利用可能な関数を定義します。各関数には name、description、parameters(JSON Schema 形式)が必要です。

{ "model": "deepseek-chat", "messages": [ {"role": "user", "content": "北京今天天气怎么样?"} ], "tools": [ { "type": "function", "function": { "name": "get_weather", "description": "获取指定城市的实时天气信息", "parameters": { "type": "object", "properties": { "city": { "type": "string", "description": "城市名称,如 北京、上海、深圳" }, "unit": { "type": "string", "enum": ["celsius", "fahrenheit"], "description": "温度单位,默认摄氏度" } }, "required": ["city"] } } } ] }

Function Calling のワークフロー

  1. リクエスト送信:ユーザーメッセージと tools 定義を一緒に DeepSeek API に送信します
  2. モデルの判断:モデルが関数を呼び出す必要があるか判断します。必要な場合、finish_reason="tool_calls" と関数呼び出し情報を返します
  3. 関数の実行:開発者はモデルが返した関数名とパラメータに基づいて、自分のコードで対応する関数を実行します
  4. 結果の返却:関数の実行結果を tool ロールのメッセージとして messages に追加し、再度モデルに送信します
  5. モデルの応答:モデルは関数の結果に基づいて、最終的な自然言語の応答を生成します

Python 完全な例

from openai import OpenAI import json client = OpenAI( api_key="sk-your-api-key", base_url="https://api.deepseek.com/v1", ) def get_weather(city: str, unit: str = "celsius"): """模拟天气查询函数""" return {"city": city, "temperature": 25, "condition": "晴", "unit": unit} tools = [{ "type": "function", "function": { "name": "get_weather", "description": "获取指定城市的实时天气信息", "parameters": { "type": "object", "properties": { "city": {"type": "string", "description": "城市名称"}, "unit": {"type": "string", "enum": ["celsius", "fahrenheit"]} }, "required": ["city"] } } }] messages = [{"role": "user", "content": "北京今天天气怎么样?"}] # 第一步:发送请求,模型决定是否调用函数 response = client.chat.completions.create( model="deepseek-chat", messages=messages, tools=tools, ) msg = response.choices[0].message # 第二步:如果模型要求调用函数 if msg.tool_calls: for tool_call in msg.tool_calls: func_name = tool_call.function.name func_args = json.loads(tool_call.function.arguments) func_result = get_weather(**func_args) # 第三步:将函数结果追加到消息中 messages.append(msg) messages.append({ "role": "tool", "tool_call_id": tool_call.id, "content": json.dumps(func_result, ensure_ascii=False) }) # 第四步:再次发送请求,获取最终回复 final_response = client.chat.completions.create( model="deepseek-chat", messages=messages, ) print(final_response.choices[0].message.content)

DeepSeek R1 (Reasoner) API

DeepSeek R1 は推論強化モデルで、数学、プログラミング、論理的推論などのシナリオで優れた性能を発揮します。API 呼び出し方法は deepseek-chat とほぼ同じですが、独自の思考プロセス出力があります。

R1 API エンドポイント

# Chat Completions と同じエンドポイントを使用し、model パラメータのみが異なります POST https://api.deepseek.com/v1/chat/completions # model パラメータを "deepseek-reasoner" に設定

思考プロセス (reasoning_content)

R1 モデルは最終回答を生成する前に、内部推論を行います。ストリーミング出力では、推論プロセスは reasoning_content フィールドで返され、推論完了後にのみ content フィールドが返されます。

from openai import OpenAI client = OpenAI( api_key="sk-your-api-key", base_url="https://api.deepseek.com/v1", ) response = client.chat.completions.create( model="deepseek-reasoner", messages=[ {"role": "user", "content": "池に注水管と排水管があります。注水管は3時間で満たし、排水管は5時間で空にします。両方の管を同時に開くと、何時間で満たされますか?"} ], stream=True, ) for chunk in response: delta = chunk.choices[0].delta # 推論プロセス if hasattr(delta, 'reasoning_content') and delta.reasoning_content: print(f"[思考] {delta.reasoning_content}", end="") # 最終回答 if delta.content: print(delta.content, end="", flush=True)

R1 と Chat API の違い

特徴 deepseek-chat (V3) deepseek-reasoner (R1)
コンテキストウィンドウ 160K tokens 128K tokens
最大出力 8K tokens 32K tokens (推論を含む)
推論プロセス 公開されない reasoning_content で公開
temperature サポート (0~2) サポートなし(固定推論戦略)
Function Calling サポート ツール呼び出しには V3 の使用を推奨
適用シナリオ 一般的な対話、コンテンツ作成、翻訳 数学の証明、アルゴリズム設計、論理的推論

R1 のベストプラクティス

  • R1 は複雑な system prompt を必要とせず、簡潔な指示で最良の結果が得られます
  • 推論プロセスは tokens を消費するため、max_tokens を十分に設定してください(推奨 8000+)
  • 非ストリーミング呼び出しでは、reasoning_content は完全なレスポンスに含まれます
  • 単純な対話には、コストとレイテンシーを節約するために V3 の使用を推奨します。複雑な推論タスクにのみ R1 を使用してください

トークン計算

トークン計算を理解することは、APIコストの管理とコンテキストウィンドウの管理の鍵です。DeepSeekはOpenAI互換のトークナイザーを使用しており、正確な計算にはtiktokenライブラリを使用できます。

トークン推定ルール

コンテンツタイプ トークン推定
英語テキスト 1トークン ≈ 英語4文字、または約0.75語
中国語テキスト 中国語1文字 ≈ 1.5〜2トークン
コード 1トークン ≈ コード3〜4文字(インデントや記号によって異なる)

tiktokenを使用した正確な計算

# tiktokenのインストール pip install tiktoken # Pythonの例 import tiktoken # DeepSeekはcl100k_baseエンコーディングを使用(GPT-4と同じ) encoding = tiktoken.get_encoding("cl100k_base") def count_tokens(text: str) -> int: return len(encoding.encode(text)) # 例 text = "こんにちは、DeepSeek!今日は本当にいい天気ですね。" print(f"テキストのトークン数: {count_tokens(text)}")

コンテキストウィンドウとmax_tokens制限

モデル コンテキストウィンドウ 最大出力トークン
deepseek-chat (V3) 160,000トークン 8,192トークン(デフォルト4,096)
deepseek-reasoner (R1) 128,000トークン 32,768トークン(推論プロセスを含む)

ヒント

各リクエストのtotal_tokensはprompt_tokens + completion_tokensです。prompt_tokens + max_tokensがモデルのコンテキストウィンドウ上限を超えないようにしてください。実際の消費量はAPIが返すusageフィールドで確認できます。

エラーコードと例外処理

DeepSeek API のエラーコードと例外処理戦略を理解し、アプリケーションを本番環境で安定かつ信頼性の高いものにします。

HTTP ステータスコード

ステータスコード 意味 説明と対処法
200 成功 リクエストが正常に処理されました
400 リクエスト形式エラー パラメータ形式が不正、必須フィールドの欠落、JSON 解析失敗など。リクエストボディの形式を確認してください。
401 認証失敗 API キーが無効、期限切れ、または未指定。Authorization ヘッダーを確認してください。
402 残高不足 アカウント残高がこのリクエストを完了するのに十分ではありません。platform.deepseek.com でチャージしてください。
429 レート制限 リクエスト頻度が制限を超えています。リクエスト頻度を下げるか、公式に連絡して割り当てを増やしてください。
500 サーバー内部エラー DeepSeek サーバーの一時的な障害。指数バックオフを使用して再試行することをお勧めします。
503 サービス利用不可 サーバーが混雑しているかメンテナンス中です。待ってから再試行してください。最大待機時間は 60 秒を推奨します。

エラーレスポンス形式

{ "error": { "message": "Insufficient Balance", "type": "insufficient_balance", "param": null, "code": "invalid_request_error" } }

再試行戦略:指数バックオフ

import time import random from openai import OpenAI, APIError, RateLimitError client = OpenAI( api_key="sk-your-api-key", base_url="https://api.deepseek.com/v1", ) def chat_with_retry(messages, max_retries=5, base_delay=1): """指数バックオフ再試行付き API 呼び出し""" for attempt in range(max_retries): try: return client.chat.completions.create( model="deepseek-chat", messages=messages, ) except RateLimitError: if attempt == max_retries - 1: raise delay = base_delay * (2 ** attempt) + random.uniform(0, 1) print(f"レート制限、{delay:.1f}秒後に再試行...") time.sleep(delay) except APIError as e: if e.status_code < 500 or attempt == max_retries - 1: raise delay = base_delay * (2 ** attempt) + random.uniform(0, 1) print(f"サーバーエラー {e.status_code}、{delay:.1f}秒後に再試行...") time.sleep(delay)

多言語 SDK サンプル

DeepSeek API は OpenAI SDK と互換性があるため、任意の言語の OpenAI クライアントライブラリを使用できます。以下は主要言語の完全なサンプルコードです。

Python (openai パッケージ)

# インストール: pip install openai from openai import OpenAI client = OpenAI( api_key="sk-your-api-key", base_url="https://api.deepseek.com/v1", ) response = client.chat.completions.create( model="deepseek-chat", messages=[ {"role": "system", "content": "あなたは役立つアシスタントです。"}, {"role": "user", "content": "DeepSeek を紹介してください"}, ], temperature=0.7, max_tokens=1024, ) print(response.choices[0].message.content)

Node.js (openai パッケージ)

// インストール: npm install openai import OpenAI from 'openai'; const client = new OpenAI({ apiKey: 'sk-your-api-key', baseURL: 'https://api.deepseek.com/v1', }); const response = await client.chat.completions.create({ model: 'deepseek-chat', messages: [ { role: 'system', content: 'あなたは役立つアシスタントです。' }, { role: 'user', content: 'DeepSeek を紹介してください' }, ], temperature: 0.7, max_tokens: 1024, }); console.log(response.choices[0].message.content);

curl

curl https://api.deepseek.com/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer sk-your-api-key" \ -d '{ "model": "deepseek-chat", "messages": [ {"role": "system", "content": "あなたは役立つアシスタントです。"}, {"role": "user", "content": "DeepSeek を紹介してください"} ], "temperature": 0.7, "max_tokens": 1024 }'

Go

// インストール: go get github.com/sashabaranov/go-openai package main import ( "context" "fmt" openai "github.com/sashabaranov/go-openai" ) func main() { config := openai.DefaultConfig("sk-your-api-key") config.BaseURL = "https://api.deepseek.com/v1" client := openai.NewClientWithConfig(config) resp, err := client.CreateChatCompletion( context.Background(), openai.ChatCompletionRequest{ Model: "deepseek-chat", Messages: []openai.ChatCompletionMessage{ {Role: "system", Content: "あなたは役立つアシスタントです。"}, {Role: "user", Content: "DeepSeek を紹介してください"}, }, Temperature: 0.7, MaxTokens: 1024, }, ) if err != nil { panic(err) } fmt.Println(resp.Choices[0].Message.Content) }

Java

// Maven 依存: com.theokanning.openai-gpt3-java:service:0.18.2 import com.theokanning.openai.OpenAiService; import com.theokanning.openai.completion.chat.*; import java.time.Duration; import java.util.List; public class DeepSeekExample { public static void main(String[] args) { OpenAiService service = new OpenAiService( "sk-your-api-key", Duration.ofSeconds(60) ); // 注意: このライブラリはカスタムベースURLの設定が必要です // OkHttp インターセプターを使用してベースURLを変更することをお勧めします // または openai-java ライブラリの OpenAiApi クラスを使用してください ChatCompletionRequest request = ChatCompletionRequest.builder() .model("deepseek-chat") .messages(List.of( new ChatMessage("system", "あなたは役立つアシスタントです。"), new ChatMessage("user", "DeepSeek を紹介してください") )) .temperature(0.7) .maxTokens(1024) .build(); ChatCompletionResult result = service.createChatCompletion(request); System.out.println(result.getChoices().get(0).getMessage().getContent()); } }

ベストプラクティス

DeepSeek API 使用時の重要なベストプラクティスをまとめ、本番環境で DeepSeek モデルを効率的・安定的・経済的に使用するのに役立てます。

1. System Prompt の設計

  • 役割を明確に定義する:モデルに「あなたは誰か」を伝える(例:「あなたはプロの Python プログラミングアシスタントです」)
  • 出力形式を設定する:モデルに特定の形式(JSON、Markdown テーブル、コードブロックなど)で出力するよう要求する
  • 行動の境界を制約する:モデルにできないことを明確に伝える(例:「不確かな情報を推測しないでください」)
  • 簡潔に保つ:system prompt が長すぎるとコンテキストウィンドウを占有するため、200〜500文字に抑えることを推奨

2. Temperature の調整

Temperature 適用シナリオ
0.0 ~ 0.3 コード生成、数学計算、データ抽出、翻訳 — 正確さと一貫性が必要なシナリオ
0.5 ~ 0.8 コンテンツ作成、ブレインストーミング、一般的な会話 — 創造性と一貫性のバランス
0.9 ~ 1.5 クリエイティブライティング、ストーリー生成、詩 — 多様性と創造性が高い必要があるシナリオ

3. コンテキストウィンドウの最適化

  • 必要な会話履歴のみを渡し、無駄な往復メッセージを避ける
  • 長いドキュメントには RAG を使用し、全文を直接連結しない
  • system prompt を利用して永続的な指示を伝え、各ユーザーメッセージで繰り返さない
  • usage.total_tokens を監視し、コンテキストウィンドウの上限に近づいたら早期に警告する

4. コスト管理

  • max_tokens を適切に設定し、不要な長い出力による浪費を避ける
  • キャッシュヒットを活用して入力コストを削減:繰り返される system prompt や履歴メッセージはキャッシュ割引の対象
  • 簡単なタスクには小さな max_tokens と低い temperature を使用する
  • 開発段階でトークンカウントツールを使用してコストを見積もり、予算アラートを設定する
  • API キーの月間消費制限を設定し、予期しない超過を防ぐ

5. 並行リクエスト管理

  • コネクションプールを使用して HTTP 接続を再利用し、ハンドシェイクのオーバーヘッドを削減する
  • リクエストキューを実装し、同時実行数を制限(デフォルト100)以内に制御する
  • バッチタスクには非同期呼び出しを使用する(Python asyncio / Node.js Promise.all)
  • 429 エラーの頻度を監視し、同時実行数を動的に調整する
  • リクエストの種類に応じて異なる優先度キューを設定する

DeepSeek の他のチュートリアル

DeepSeek の使用方法、デプロイ、モデル知識をさらに探求します。

DeepSeek API よくある質問

DeepSeek API は OpenAI API と互換性がありますか? +
完全に互換性があります。DeepSeek API は OpenAI Chat Completions API 形式に準拠しています。OpenAI 公式 SDK(Python、Node.js など)をそのまま使用し、base_url を https://api.deepseek.com/v1 に、api_key を DeepSeek の API キーに、model を deepseek-chat または deepseek-reasoner に変更するだけです。他のコードの変更は不要です。
DeepSeek V3 と R1 はどう選べばよいですか? +
V3 (deepseek-chat) は、一般的な会話、コンテンツ作成、翻訳、コード生成などの日常的なシナリオに適しています。価格が安く、速度が速いです。R1 (deepseek-reasoner) は、数学の証明、複雑な論理的推論、アルゴリズム設計など、深い思考が必要なシナリオに適しています。推論プロセスを出力します。ほとんどのアプリケーションでは V3 を優先し、深い推論が必要な場合にのみ R1 に切り替えてください。
DeepSeek API キーを取得するには? +
platform.deepseek.com にアクセスし、登録してログインした後、左側のナビゲーションで「API Keys」をクリックし、「API キーを作成」をクリックします。作成後すぐにキーを保存してください。ページを閉じると完全なキーを再度表示できなくなります。新規ユーザーには通常無料枠があるので、先に試してからチャージできます。
DeepSeek API は Function Calling をサポートしていますか? +
サポートしています。DeepSeek V3 (deepseek-chat) は Function Calling を完全にサポートし、OpenAI の tools パラメータ形式と互換性があります。1回のリクエストで複数の関数を定義でき、モデルは関数を呼び出す必要があるか、どの関数を呼び出すかをインテリジェントに判断します。R1 モデルでも Function Calling を使用できますが、ツール呼び出しの安定性と決定性を高めるために V3 の使用をお勧めします。
429 エラー(レート制限)が発生した場合の対処法は? +
429 エラーは、リクエスト頻度が制限を超えていることを示します。解決策:1) リクエスト頻度を下げ、指数バックオフ再試行戦略を使用します。2) 複数のリクエストをまとめて、リクエスト数を減らします。3) コード内でリクエストキューと並行性制御を実装します。4) ビジネスで本当に高い頻度が必要な場合は、DeepSeek 公式に連絡して割り当ての増加を申請してください。ユーザーに気付かせずに、コード内で 429 エラーを自動的に処理することをお勧めします。
DeepSeek API のデータは安全ですか?トレーニングに使用されますか? +
DeepSeek は公式に、API 経由で送信されたデータはモデルのトレーニングに使用されないと明言しています。API 呼び出しは TLS 暗号化で送信されます。クライアント側で API キーを安全に管理することをお勧めします:環境変数にキーを保存し、コードにハードコードせず、バージョン管理システムにコミットしないでください。エンタープライズユーザーは、専用デプロイソリューションについて公式に連絡することもできます。

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

完全免费,取消任意时间。我们不会发送垃圾邮件。