ja ▾
キーを作成

クイックスタート: 差し替え OpenAI互換API

差し替えOpenAI互換性とは、ベースURLとキーを1つ変更するだけで、既存コードのロジック書き換えなしで無制限モデルに対して既存コードを実行できることを意味します。このクイックスタートガイドでは、数分でストリーミングレスポンスを取得する方法を示します。

ベースURLとAPIキーの設定

最初のステップは、SDKをエンドポイントに向けることです。使用 https://api.whatisopenrouterai.com/v1 ベースURLとして使用し、ダッシュボードからコピーしたキーを貼り付けます。この単一の変更により、標準的なOpenAI互換ヘッダーを維持したまま、すべての呼び出しを当社の無制限大規模言語モデルにリダイレクトします。

  • Googleまたはメール経由でキーを生成します。
  • 環境変数に保存してください。
  • キーが簡単なリクエストで機能することを確認します。
curl https://api.whatisopenrouterai.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Set variable x to five"}]
  }'

リクエストを /v1/chat/completions に送信

当社のAPIは、テキスト入力を伴う標準的なチャット完了を受け付け、テキスト出力を返します。 /v1/chat/completions モデルIDとメッセージ履歴付きエンドポイント。モデルIDは単に uncensored法的な成人向けコンテンツに対して拒否なしで回答するようにモデルを調整します。

from openai import OpenAI

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

SSEを介してトークンをストリーミング

ストリーミングはServer-Sent Eventsを介してリアルタイムフィードバックを提供します。各チャンクには部分的なテキストが含まれ、最終チャンクにはトークン使用統計が含まれます。このアプローチは、長文のレスポンスが完了するまで待機しながらもユーザーインターフェースをレスポンシブに保ちます。

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.whatisopenrouterai.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);

response_formatでjson_objectを強制

を使用 response_format パラメータが {"type": "json_object"} 厳密なJSON出力を強制します。これにより、モデルが毎回正しい構造を推測するのではなく、アプリケーションの解析を予測可能にします。

ツールとtool_choiceを使用

関数呼び出しは標準のOpenAI APIと完全に一致します。リクエストでツールを定義し、モデルは適切な場合に構造化された引数を返します。tool_usageを強制できます。 tool_choice またはモデルに判断を委ねます。

利用可能なモデルを確認

クエリ GET /v1/models 利用可能な単一の無制限モデルを確認するため。このエンドポイントはモデルIDと詳細を返し、当社のサービスがアクティブでリクエストを受信する準備ができていることを確認します。複数のモデル選択肢を提供せず、統合をシンプルかつ焦点を絞ったものに保ちます。

ストリーミング

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)

よくある質問

open router AIとは何か

ホスト型OpenAI互換APIで、1つの検閲なし大規模言語モデルを提供しています。ベースURLとキーを変更するだけで、標準的なOpenAIコードのドロイン置換品が得られます。このモデルは法的な成人向けコンテンツを拒否せず、真の検閲なしLLM体験を提供します。

レートリミットとエラーを処理するにはどうすればよいですか?

無効なキーの場合は401、クレジットがない場合は402、レート制限に達した場合は429のエラーが返されます。キーごとの制限は1分あたり300リクエストです。エラーや拒否は事前購入済みのトークンを消費しません。

コンテキストウィンドウのサイズはいくらですか?

プロンプトとコンプリーションの両方でコンテキストウィンドウは100,000トークンです。リクエストごとの最大出力は16,000トークン、または max_tokens を指定しない場合は2,048トークンです。これにより、即時の切り捨てなしで大幅な会話が可能です。