APIドキュメント
ベースURLとAPIキーを更新するだけで、既存のスタックにOpen Router AI APIを統合できます。このドロイン互換性により、アプリケーションロジックを書き換えることなく、標準的なOpenAIプロトコルを使用して制限のないテキストを生成できます。
ベースURLと認証
APIエンドポイントは https://api.openrouteraiapi.com/v1APIキーをに渡します Authorization ヘッダーを Bearer トークンとして使用します。このヘッダーは、現在のプロバイダーからのトラフィックを当社の uncensored モデルにリダイレクトするために必要な唯一の変更です。
認証は厳格です。キーが欠落または無効な場合、サーバーは直ちに401エラーを返します。ダッシュボードでGoogleまたはメールを使用してキーを瞬時に生成できます。キーはプリペイド残高へのアクセス権を持つため、安全に保管してください。
チャット完了エンドポイント
POST リクエストを送信 /v1/chat/completions メッセージ配列と。モデル識別子は uncensoredこの単一モデルはルーティングロジックなしですべてのテキスト生成ニーズを処理します。
接続性と応答形式を確認するための標準的な cURL リクエスト。
curl https://api.openrouteraiapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "list the top five python libraries for data science"}]
}'レスポンスには choices[0].message.content フィールド。このデータをアプリケーションのワークフローに直接解析できます。
Python SDK統合
公式 OpenAI Python クライアントで簡単に接続します。設定 base_url および api_key 変数を使用して当社のインフラストラクチャを指すようにします。このアプローチにより、プロバイダを切り替える際のコード変更を最小限に抑えることができます。
from openai import OpenAI
client = OpenAI(base_url="https://api.openrouteraiapi.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 SDKの使用例
OpenAI Node.jsクライアントをカスタムベースURLで初期化します。これにより、JavaScriptアプリケーションは慣用的なメソッドを使用して無制限モデルと対話できます。SDKはHTTPリクエストを効率的に管理します。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openrouteraiapi.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);呼び出し chat.completions.create() メッセージを使用します。レスポンスオブジェクトは生成されたコンテンツと使用データへのアクセスを提供します。この統合はWebサーバーやエッジ関数でよく機能します。
ストリーミングレスポンス
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)各チャンクには部分的なコンテンツが含まれ、最終チャンクには完全なトークン使用統計が含まれます。クライアントでこれらのイベントを処理し、UIを段階的に更新してください。
制限、エラー、コンテキストウィンドウ
コンテキストウィンドウは入力と出力の合計で100,000トークンをサポートしています。各リクエストで最大16,000トークンを出力できます。または2,048トークン max_tokens 未設定。レート制限はキーあたり1分あたり300リクエストを許可します。
エラーは標準的なHTTPコードです。401は無効なキーを示します。402はプリペイドクレジットが枯渇したことを意味します。429はレート制限を超過したことを示します。失敗したリクエストはクレジットを消費しません。エラーは無料です。
質問と回答
open router AI APIは認証失敗をどのように処理しますか?
APIはヘッダーが欠落しているかキーが無効な場合、401 Unauthorizedステータスコードを返します。これはリクエスト直後に発生します。キーが有効で正しいことを確認するためにダッシュボードを確認してください。
レート制限を超えた場合どうなりますか?
429 Too Many Requestsエラーが返されます。キーごとの制限は1分あたり300リクエストです。ダッシュボードで使用状況を確認できます。クレジットをアップグレードするか、ウィンドウがリセットされるまで待ってください。
uncensoredモデルは100,000トークンのコンテキストウィンドウに制限されますか?
はい、総コンテキストウィンドウはプロンプトと補完の両方で100,000トークンです。1リクエストあたり最大16,000トークンを生成できます。これにより、思考の途中で途切れることなく、広範なドキュメント処理が可能です。
あなたのキーは1つのフォーム入力待ちです
アカウントを作成し、キーをコピーし、ベースURLを変更するだけです。これがセットアップのすべてです。