クイックスタート:uncensored apiを統合
ベースURLとAPIキーを更新するだけで、当社の無制限LLM APIにコードを移行します。このクイックスタートでは、標準のOpenAI互換クライアントを使用した統合についてガイドします。
前提条件:SDKと環境変数
お好みのSDKをインストールし、環境変数に資格情報を設定しましょう。当社のサービスは標準的なOpenAI互換エンドポイントを使用しているため、既存のクライアントライブラリは変更なしで動作します。ダッシュボードからのAPIキーとリクエスト用のベースURLのみが必要です。基本的な統合には複雑なラッパーやカスタムヘッダーは不要です。
curl https://api.claudecostpermilliontokens.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the current cost per million tokens for the Pro model?"}]
}'環境変数をスクリプトを実行する前に正しくエクスポートしてください。このアプローチにより、認証が安全に保たれ、コードは異なるデプロイメント環境間でポータブルになります。
ベースURLでのクライアントインスタンス化
クライアントライブラリを構成し、デフォルトのプロバイダエンドポイントではなく当社のベースURLを指すようにしてください。提供されたベースURLとAPIキーを使用して接続を初期化します。この簡単な変更により、標準的なSDKメソッドとの互換性を維持しつつ、すべてのトラフィックを当社の無制限モデルに送信します。
from openai import OpenAI
client = OpenAI(base_url="https://api.claudecostpermilliontokens.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)利用可能なモデルをリストして接続を確認してください。このステップにより、実際のプロンプトやデータを送信する前に、クライアントが当社のインフラストラクチャに正しくルーティングされていることが確認されます。
最初のチャットCompletionリクエストを送信
モデルID uncensored. このモデルは法的な成人向け用途に対してコンテンツ拒否なしでテキスト入力と出力を処理します。他のOpenAI互換エンドポイントと同様に、メッセージを渡したり、温度を設定したり、その他のパラメータを定義したりできます。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.claudecostpermilliontokens.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パラメータをtrueに設定してストリーミングを有効にします。APIは生成されるたびにテキストチャンクを返し、リアルタイムで出力を表示できます。各チャンクには最終チャンクにトークン使用データが含まれており、消費量を正確に追跡するのに役立ちます。
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)レイテンシを低く保つために各チャンクを効率的に処理します。この方法は、チャットインターフェースやリアルタイムのコード生成ツールなど、即時フィードバックが重要なアプリケーションに最適です。
関数呼び出しと JSON モードの使用
構造化出力のために関数呼び出しとJSONモードを活用します。アプリケーションで一貫した解析を保証するために、レスポンス形式をJSONに設定します。また、ツールを定義してツール選択を指定し、モデルの出力動作をガイドすることもできます。
temperature、top_p、stop sequencesのようなパラメータにより、応答スタイルの微調整が可能です。これらの機能を使用して、モデルを既存のワークフローにシームレスに統合してください。
認証と制限の管理
APIキーはすべてのリクエストを認証し、401エラーは無効なキーを、402エラーは残高不足を示します。レート制限は1分あたり300リクエスト、キーあたり並列8リクエストに制限されます。コンテキストウィンドウは最大100,000トークンをサポートし、1リクエストあたりの最大出力は16,000トークンです。
中断を避けるため使用状況を確認してください。処理中のエラーは無料のため、トークン消費を気にせずにリクエストを再試行できます。キーは安全に保ち、必要に応じてダッシュボードを通じて交換してください。
よくある質問
この API における Claude の百万トークンあたりのコストは?
当社の料金は、入力トークン100万トークンあたり$0.15、出力トークン100万トークンあたり$0.50です。この透明性の高いモデルにより、使用した分のみに対して課金され、隠れた料金や月額サブスクリプションはありません。
レートリミットとエラーを処理するにはどうすればよいですか?
1分あたり300リクエスト、キーあたり8つの同時リクエストに制限されています。401エラーはキーが無効であることを意味し、402エラーは残高を追加する必要があることを示します。処理中のエラーはトークンを消費しません。
uncensoredモデルはOpenAI SDKと互換性がありますか?
はい、当APIはOpenAIと完全に互換性があります。ベースURLとAPIキーを更新するだけで標準SDKを使用できます。これにより、複雑なラッパーやカスタム実装なしで、即時のコード移行が可能です。
数分でキーを取得
サインアップし、キーをコピーして、ベースURLを更新します。完了です。