ja ▾
アカウントを開く

APIドキュメント

構成オーバーヘッドゼロで既存のコードベースに非制約モデルを組み込みます。このガイドでは、OpenAI互換エンドポイント、認証、ストリーミング設定について解説し、即時統合をサポートします。

クイックスタート:Python統合

最初のステップは、公式のOpenAI SDKをインストールし、ベースURLを設定することです。これにより、既存のロジックを変更せずに、クライアントがリクエストを当社のuncensored LLMエンドポイントにルーティングします。

  • pip経由でパッケージをインストールしてください。
  • APIキーとベースURLを
  • 標準的なチャット完了リクエストを送信します。

この構成はローカルスクリプトと本番サーバーの両方で機能します。

認証とベースURL

APIキーは、ベースURL HTTPS://api.chatbotsemfiltro.com/v1 へのすべてのリクエストを認証します。キーはサインアップ時に即座に生成され、取り消すまで有効です。

シークレットをハードコードしないように、環境変数にキーを保存します。SDKはヘッダーの注入を自動的に処理します。

チャット完了エンドポイント

コアエンドポイントは /v1/chat/completions へのPOSTリクエストを受け付けます。messages とモデルパラメータを含むJSONボディを期待します。

  • ロール(system、user、assistant)を定義します。
  • モデルを "uncensored" として指定します。
  • テキスト出力を受信します。

この構造は標準的なOpenAIの形式を反映しており、互換性を確保します。

ストリーミングと関数呼び出し

ストリーミングを有効にするには stream を true に設定します。APIは生成されるトークンを配信するServer-Sent Events (SSE) チャンクを返します。

関数呼び出しはtoolsパラメータ経由でサポートされています。モデルはJSON形式でツール呼び出しを返し、これらを解析して実行できます。

パラメータ: TemperatureとTop P

創造性または決定論のための温度調整。0から2の間の値はランダム性を制御する。Top Pは累積確率に基づいて単語をフィルタリングする。

これらのパラメータを組み合わせることで、出力スタイルを微調整します。テスト中に再現可能な結果を得るためにseedを使用します。

コンテキストウィンドウと制限

このモデルは100,000トークンのコンテキストウィンドウをサポートしています。1リクエストあたりの最大出力は16,000トークンです。

レート制限は1分間あたり300リクエストです。これを超えると429エラーが発生します。スロットリングを避けるために同時実行数を管理してください。

エラー処理とトークン

HTTPエラーを適切に処理します。401は無効なキーを示します。402はクレジット不足を意味します。429はレート制限を示します。

トークン使用量は正確に請求されます。エラーは残高を消費しません。ダッシュボードを通じて使用状況を監視してください。

cURL

curl https://api.chatbotsemfiltro.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "List the top ten libraries for Rust async programming"}]
  }'

Python

from openai import OpenAI

client = OpenAI(base_url="https://api.chatbotsemfiltro.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.chatbotsemfiltro.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)

よくある質問

これは公式のOpenAI APIですか?

いいえ。これは別個の検閲なしモデルを提供するOpenAI互換APIです。同じSDKを使用できますが、モデルIDとベースURLは異なります。

ストリーミングエラーを処理するにはどうすればよいですか?

SSEイベントタイプを確認してください。エラーイベントの場合、メッセージを解析し、トークンを消費せずに処理してください。

レート制限を超えた場合どうなりますか?

APIは429ステータスコードを返します。指数バックオフで待機して再試行し、繰り返し失敗を避けてください。

APIキーを即座に取得

登録し、APIキーを取得し、ベースURLを更新します。これが完全な設定です。

アカウントを開く