APIクイックスタート
このクイックスタートガイドでは、標準のSDKを使用して制限なしでOpenAI互換のAPIにリクエストを送信する方法を示します。ベースURLの設定、認証の処理、ベンダーロックインなしでのストリーミング応答を行います。
ベースURLと認証
The deepseek api documentation このサービスの https://api.deepseekcoderpricing.com/v1有効なAPIキーを Authorization すべてのリクエストで必要です。 APIキーを取得 Googleまたはメールでサインアップ直後。
認証はシンプルです。ヘッダーを含めてください Authorization: Bearer YOUR_API_KEY すべての呼び出しで。キーが不足しているか無効な場合、サーバーは401エラーを返します。これにより、複雑なセットアップ手順なしで、あなたのUncensored LLM APIアクセスが安全に保たれます。
最初のリクエスト
最初のリクエストで接続とトークン課金が確認されます。エンドポイントは POST /v1/chat/completions. モデルIDを に設定する必要があります。 uncensored. このモデルは自社サーバー上で実行され、法的な成人向けコンテンツを拒否しません。
接続が正しく動作することを確認するために、基本的なプロンプトを送信します。システムは、応答で実際に使用されたトークンに対してのみ課金します。エラーや拒否は、事前に支払ったクレジットを消費しません。
ベースURLは https://api.deepseekcoderpricing.com/v1.
curl https://api.deepseekcoderpricing.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the hourly compute cost for the 7b model."}]
}'
Python SDK の統合
標準的なOpenAI Python SDKを使用するのが最も簡単な統合方法です。 base_url および api_key 変数を使用してクライアントを初期化する前に設定します。これにより、他のプラットフォームからの既存のコードスニペットを最小限の変更で再利用できます。
クライアントはJSONシリアライズを自動的に処理します。メッセージを辞書のリストとして渡します。レスポンスオブジェクトには生成されたテキストと課金透明性のためのトークン使用統計が含まれています。
from openai import OpenAI
client = OpenAI(base_url="https://api.deepseekcoderpricing.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.deepseekcoderpricing.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)