uncensoredモデルを統合
標準的なOpenAI互換エンドポイントを使用して既存のスタックに非制約モデルを組み込みます。トークン単位の透明な価格設定とゼロの月額オーバーヘッドで、テキスト入力・テキスト出力の推論が可能です。
ベースURLと認証
提供されたベース URL を使用して、専用ゲートウェイにクライアントを接続します。すべてのリクエストには、 Authorization ヘッダー。この設定は、コアロジックを変更せずに、OpenAI互換のSDKであればどれでも動作します。
APIキー取得ページでGoogleまたはメールアドレスを使用してキーを登録してください。キーは即座に発行され、電話認証なしでテストを開始できます。付与されたクレジットにアクセスできるため、資格情報を安全に保管してください。
最初のリクエスト
テキストを生成するための標準的なチャット完了リクエストを送信します。モデル識別子は uncensored 制限のない回答に最適化されたオープンウェイトモデルにアクセスします。
curl https://api.openrouterpricing.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the hourly rate for each model tier."}]
}'ペイロードに model field とあなたの messages 配列。APIは生成されたコンテンツを含むJSONを返し、アプリケーションロジックの準備が整います。
Python SDK の統合
公式のOpenAI Pythonライブラリを使用して、当社のAPIと連携します。クライアントをベースURLにポイントし、APIキーを注入してください。この方法ではコードをクリーンに保ち、標準ライブラリの既存のコミュニティサポートを活用できます。
from openai import OpenAI
client = OpenAI(base_url="https://api.openrouterpricing.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)キーとカスタムベースURLでクライアントを初期化します。他のモデルと同様にチャット補完エンドポイントを呼び出しますが、 uncensored モデルID。
Node SDKの統合
Node OpenAI SDKを使用して、JavaScriptまたはTypeScriptプロジェクトに直接統合します。 baseURL および apiKey リクエストを正しくルーティングするためのプロパティ。このメソッドは、最新の Web アプリケーションでの型安全性と簡単なエラー処理を保証します。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openrouterpricing.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);SDKインスタンスに資格情報を設定します。標準的なasync/awaitパターンを使用してメッセージを送信し、レスポンスを受信します。これは既存のNode.jsアーキテクチャにシームレスに適合します。
ストリーミングレスポンス
streamをtrueに設定してストリーミングを有効にする stream リクエストで true に設定します。これはトークンが生成されるにつれて表示できるServer-Sent Events (SSE) ストリームを返します。エンドユーザーにとっての知覚されるレイテンシーを削減し、インタラクティブ性を向上させます。
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)SSEチャンクを解析してUIをリアルタイムで更新します。最終チャンクには総トークン使用量が含まれており、これはプリペイド残高から課金されます。ストリーミング中のエラーは課金されません。
制限、エラー、コンテキスト
レート制限を監視し、エラーを適切に処理してください。キーごとに1分あたり300リクエスト、同時に8リクエストまでが許可されています。これらを超えると、429ステータスコードが返されます。401エラーは無効なキーを示し、402エラーはクレジットを追加する必要があることを意味します。
このモデルは入力と出力を合わせた100,000トークンのコンテキストウィンドウをサポートしており、指定がない限り最大出力は16,000トークンに制限されます。切り捨てやエラーを避けるために、リクエストをこれらの範囲内に収めてください。
よくある質問
これはOpen Routerの価格と比較してどうですか?
トークン単位の料金は透明で競争力があり、しばしば集約プロバイダーよりも安価です。入力トークン100万トークンあたり$0.15、出力トークン100万トークンあたり$0.50で課金され、月額料金や隠れたコストはありません。この直接価格モデルは、マルチベンダーゲートウェイで見られることがよくあるマージンを回避します。
ストリーミング中にエラーが発生した場合どうなりますか?
エラーは正常に処理され、不完全なレスポンスに対しては課金されません。ネットワークの問題や無効なパラメータによりリクエストが失敗した場合、クレジットからトークンは差し引かれません。ペナルティなしでリクエストをリトライでき、成功した完了に対してのみ支払いを行うことが保証されます。
このモデルは関数呼び出し(function calling)に使用できますか?
はい、APIは標準的な tools パラメータを介して関数呼び出しをサポートしています。リクエストで関数を定義すると、モデルは構造化データを返します。これにより、ツール使用やAPI連携を必要とする複雑なワークフローにuncensoredモデルを統合できます。
APIキーを取得
登録し、APIキーを取得し、ベースURLを更新します。これだけで十分です。