ApiCoder/DeepSeekコーダーAPI:クイックスタートガイド
DeepSeekコーダーAPI:クイックスタートガイド
ベースURLとAPIキーを更新して、既存のツールを無制限でOpenAI互換のAPIに接続。予測可能なパフォーマンスで、コードやテキストの生成をすぐに開始できます。
インストールとベース URL の構成
クライアント設定をホスト済みエンドポイントにポイントしてください。モデルIDは base_url デフォルトのプロバイダーから https://api.apicoderdeepseek.com/v1 リクエストを正しくルーティングするため。
- 設定
base_url上記の値に設定します。 - 互換性のためにSDKを標準のまま維持すること。
この単一の変更により、その後のすべての呼び出しが当社の無制限モデルに直接到達します。プロキシレイヤーがないため、余分なホップなしで一貫したレイテンシが得られます。
認証とヘッダーのセットアップ
にキーを渡してください Authorization アクセスを確認するためのヘッダー。Googleまたはメールアドレスでアカウントを作成すると、固有の認証情報が即座に発行されます。
ヘッダーを含める Authorization: Bearer YOUR_API_KEY すべてのリクエストに含まれます。システムは、トークンの処理や使用量コストの計算を行う前に、このトークンを検証します。
最初のチャット補完リクエストの送信
テキストやコードを生成するための標準的なチャット完了リクエストを送信します。モデルIDは uncensored コンテンツ拒否なしでチューニングされたモデルにアクセスします。
APIは標準的なOpenAIペイロード構造を受け入れます。システムプロンプト、ユーザーメッセージ、アシスタントの履歴を1つの呼び出しで送信できます。
リクエストボディに model および messages フィールド。レスポンスには生成されたテキストが content フィールド。
ストリーミングレスポンスとトークン使用量
streamをtrueに設定してストリーミングを有効にする stream リクエストで true に設定します。APIはリアルタイムの出力のためにServer-Sent Events (SSE) を通じてチャンクを返します。
最終チャンクには課金透明性を確保するためのトークン使用詳細が含まれています。入力トークンと出力トークンは到着するたびに追跡できます。
この手法は、長いレスポンスに対する知覚遅延を削減します。開発者は、コードアシスタントやインタラクティブアプリケーションのためにストリーミングを好みます。
関数呼び出しとJSONモードの例
使用 response_format に設定 json_object 構造化出力用です。これにより、モデルはマークダウンテキストではなく有効なJSONを返します。
リクエストペイロード内に関数スキーマを定義する tools パラメータ。モデルは、プロンプトに基づいて適切な場合にこれらの関数を呼び出します。
対応 temperature, top_p、および stop パラメータ。出力の微調整に使用します。 seed テスト時に再現可能な結果を得るために。
レートリミットとエラー処理
レート制限を避けるためにリクエストレートを確認してください。APIはキーごとに1分あたり300リクエスト、同時に8つのリクエストまで許可されます。
無効なキーの場合は401、レートリミット超過の場合は429を処理します。8 MB以下のリクエストがサポートされています。エラーはクレジットを消費しません。
コンテキストウィンドウは合計で最大100,000トークンをサポートします。出力の最大値は16,000トークンです。 max_tokens デフォルトでは2,048に設定されています。
cURL
curl https://api.apicoderdeepseek.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the available endpoints for the chat completion service."}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.apicoderdeepseek.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.apicoderdeepseek.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);ストリーミング
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)よくある質問
deepseek coder APIのコンテキストウィンドウは?
コンテキストウィンドウは、プロンプトと補合のために合計で最大10万トークンをサポートします。1リクエストあたりの最大出力は1万6千トークン、指定しない場合は2,048トークンです。
401や429のようなエラーを処理するにはどうすればよいですか?
401エラーは、APIキーが無効または欠落していることを意味します。429エラーは、1分あたり300リクエストの制限を超えたことを示します。これらのエラーは前払いクレジットを消費しません。
これは公式のdeepseek APIですか?
いいえ、これは無制限のオープンウェイトモデルを実行している独立したサービスです。OpenAI SDKと互換性がありますが、公式のDeepSeek、GPT、その他のベンダーモデルを提供するものではありません。