認証とベースURL
クライアント設定のベースURLとAPIキーを置き換えてください。当社のサービスはすべてのリクエストに単一のベースURLを使用し、既存のOpenAI SDKとの互換性を確保します。機能ごとに複数のエンドポイントを管理する必要はありません。ダッシュボードでGoogleまたはメールを使用してキーを生成してください。このキーはプリペイドクレジットへの直接アクセスを許可するため、安全に保管してください。
APIキーは Authorization ヘッダー。キーを紛失した場合は、ダッシュボードで新しいキーを生成してください。これにより古いアクティブなキーが置き換えられます。アカウントの復旧に電話番号は不要で、プライバシー重視の姿勢を維持しています。以降のすべてのリクエストには、以下のベースURLを使用してください。
ベースURL: https://api.norestrictedai.com/v1
POST /v1/chat/completions
プロンプトを POST /v1/chat/completions テキスト応答を受信するためのエンドポイント。テキスト生成に必要な唯一のエンドポイントです。モデルIDは uncensoredオープンウェイトモデルで、法的な成人向け用途においてコンテンツ拒否なしで回答するように最適化されています。GPTやClaudeではありません。レスポンスをストリーミングしたり、JSONモードでリクエストしたりできます。システムは関数呼び出しをサポートし、temperatureやtop_pなどの標準パラメータにも対応しています。
リクエストはテキスト入力、テキスト出力として処理されます。埋め込みや画像生成機能はありません。それが必要な場合は他を探してください。私たちの焦点は透過的なトークン価格設定による直接テキスト生成にのみあります。エラーと拒否(ハードな未成年コンテンツ制限を除く)はクレジットを消費しません。
Python SDK統合
公式のOpenAI Pythonライブラリを使用して、当社のAPIと連携します。クライアントインスタンスでベースURLとAPIキーを設定してください。この方法により、既存のコード構造を維持したままプロバイダを切り替えることができます。ライブラリはJSONシリアライズとHTTPリクエストを自動的に処理します。他のサービスと同じモデル名を使用できますが、当社のモデルIDは uncensored.
この方法は、バックエンドサービスやスクリプトに最適です。ライブラリは同期操作と非同期操作の両方をサポートします。温度とtop_p値を調整して創造性を制御できます。応答オブジェクトには生成されたテキストとトークン使用統計が含まれています。
Node SDKの統合
当社のAPIを標準のOpenAI SDKを使用してNode.jsアプリケーションに統合します。base URLとAPIキーを使用してクライアントを設定します。このセットアップはExpressルートやサーバーレス関数とシームレスに動作します。SDKはリトライやエラー処理を含むリクエストライフサイクルを管理します。メッセージは、ロールとコンテンツのオブジェクトの配列として渡すことができます。
この統合はWebアプリケーションやマイクロサービスに最適です。レスポンスオブジェクトには生成されたコンテンツと使用データが含まれます。ストリーミングを有効にすると、生成されたトークンをクライアントに送信できます。これにより、エンドユーザーにとっての知覚レイテンシが軽減されます。SDKはAPI仕様で定義されたすべての標準パラメータをサポートしています。
ストリーミングレスポンス(SSE)
streamを stream パラメータを trueAPIはServer-Sent Events (SSE) ストリームを返します。各チャンクには部分的なレスポンスが含まれます。最終チャンクには総トークン使用量が含まれます。この機能は初回トークン到達時間を大幅に短縮します。チャットインターフェースやリアルタイムアプリケーションに不可欠です。
ストリームは、モデルが応答を完了するかエラーが発生するまで続きます。ストリームはいつでもキャンセルできます。クライアントが切断すると、サーバーはリクエストの処理を停止します。これにより、コンピューティングリソースが節約されます。ストリーミングモードを使用して、スムーズなユーザーエクスペリエンスを提供してください。最後のチャンクのトークン使用量により、コストを正確に追跡できます。
レート制限とエラー
APIは安定性を確保するために厳格なレート制限を設けています。キーごとに1分あたり300リクエストが可能です。同時に8つのリクエストを実行できます。最大リクエストボディサイズは8 MBです。これらの制限を超えると、429エラーが返されます。無効なキーなどのエラーは401を返し、クレジット不足は402を返します。これらのエラーはクレジットを消費しません。
プロンプトとコンプリーションを合わせたコンテキストウィンドウは100,000トークンです。最大出力は1リクエストあたり16,000トークンです。max_tokensを設定しない場合、 max_tokens、制限は2,048です。クレジットは前払いで期限切れしません。エラーは無料です。二重課金された場合はサポートまでご連絡ください。システムはプロンプトをトレーニング用にログに記録しません。プライバシーは保護されます。以下のコードブロックを使用してこれらの機能を実装してください。
cURL
curl https://api.norestrictedai.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Set database index to primary key"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.norestrictedai.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.norestrictedai.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)