互換性のあるAIセットアップガイド
OpenAI互換APIドキュメント
ベース URL と API キーを更新することで、OpenAI SDK を当社の uncensored LLM エンドポイントに接続します。既存のコードを維持したまま、ローカルファーストまたはクラウドパイプライン向けに差し替え可能な互換性のある体験が得られます。
- 1M入力トークンあたり
- $0.15
- 出力トークン / 100万
- $0.50
- トークンコンテキスト
- 100,000
- トライアルクレジット
- $0.50
- 1分あたりのリクエスト数
- 300
ベースURLと認証
正しいベースURLとAPIキーを使用してクライアントを設定することから始めます。サービスは https://api.compatibleaiopen.com/v1ダッシュボードを使用してGoogleまたはメールアドレスでキーを取得します。このキーはエンドポイントへのすべてのリクエストを認証します。
最初のリクエスト
次の uncensored モデルID。APIはテキスト入力を処理し、テキスト出力を返します。パラメータを調整できます。 temperature または top_pコンテキストウィンドウは、プロンプトと補合を合わせて最大100,000トークンをサポートします。
curl https://api.compatibleaiopen.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List three benefits of local inference"}]
}'
Python SDK統合
を更新 base_url OpenAI Pythonクライアントのパラメータ。これにより、すでに知っている同じライブラリを使用できます。モデルIDはそのまま uncensoredストリーミングとツールの使用は、OpenAIのドキュメント通りに完全に機能します。アプリケーションロジックを書き直す必要はありません。
from openai import OpenAI
client = OpenAI(base_url="https://api.compatibleaiopen.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 SDKの統合
Node.jsクライアントを新しいベースURLで設定します。APIキーは環境変数またはクライアント初期化経由で渡します。エンドポイントはすべての標準パラメータをサポートしています。エラーは標準のHTTPステータスコードを返します。既存のExpressやサーバーレス関数にすぐに統合できます。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.compatibleaiopen.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に設定してストリーミングを有効にする stream true に設定します。APIは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)
制限とエラー
キーごとに1分間に300リクエストまで制限されています。並列リクエストはキーごとに最大8つに制限されます。リクエストボディは8 MB未満に保つ必要があります。401エラーは無効なキーを示します。402エラーはクレジットがないことを意味します。429エラーはレート制限を示します。クレジットは期限切れになりません。エラーと拒否は無料です。
よくある質問
これは真のオープンAI互換エンドポイントですか?
はい。標準の /v1/chat/completions パスを使用します。base URLとキーを変更するだけです。レスポンス形式はOpenAIと完全に一致します。ツールとストリーミングは同一に動作します。
レート制限を超えた場合どうなりますか?
429 Too Many Requests ステータスコードが返されます。制限は1分あたり300リクエストです。必要に応じて複数のキー間で負荷を分散させることができます。各キーでは8つの並列リクエストが許可されます。
コンテキストウィンドウには出力も含まれますか?
はい。100,000トークンの制限はプロンプトと補完の両方をカバーします。1回のリクエストで最大16,000トークンを生成できます。これにより、長文書の分析やコード生成タスクが可能です。