APIドキュメント
OpenAIのベースURLを当社のものに変更し、すぐにテキスト生成を開始します。このクイックスタートガイドでは、認証、リクエスト送信、ストリーミング処理の方法を、当社の無制限APIで解説します。
認証とベースURL
固有のAPIキーと特定のベースURLを使用してクライアント設定を更新することから始めます。コードロジックを変更する必要はなく、接続文字列のみを変更すれば十分です。エンドポイントは https://api.gatewayllm.cc/v1 次を必要とします Authorization: Bearer <key> ヘッダー。この設定は、すでにインストールされている標準的なOpenAI互換SDKであればどれでも動作します。
最初のリクエスト
接続を確認し、即時のレスポンスを受け取るために標準的なチャット完了リクエストを送信します。モデルID uncensored 特定の大規模言語モデルにアクセスします。以下の例は、cURLコマンドラインツールを使用した簡単なテキスト対話を示しています。
curl https://api.gatewayllm.cc/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Check server health status"}]
}'レスポンスは生成されたテキストを含むJSONとして配信されます。有効なレスポンスが返された場合、統合は正常に動作しています。
Python SDK統合
ベースURLを上書きすることで、公式のOpenAI Pythonライブラリを使用して当社のエンドポイントと連携します。これにより、既存のPythonコード構造を維持したまま、基盤となるプロバイダを切り替えることができます。以下のスニペットは、クライアントの初期化とメッセージ送信の方法を示しています。
from openai import OpenAI
client = OpenAI(base_url="https://api.gatewayllm.cc/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)ライブラリはシリアライズとデシリアライズを自動的に処理します。標準的なメソッドを今すぐ使用できます chat.completions.create 当社のバックエンドと。
Node.js SDKのセットアップ
OpenAI Node.jsパッケージをキーとベースURLで初期化してコンテンツ生成を開始します。このアプローチにより、大規模なリファクタリングなしで既存のNodeアプリケーションとの互換性が確保されます。以下のコードは初期化プロセスを示しています。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.gatewayllm.cc/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);completion メソッドを希望のモデル ID で呼び出します。レスポンスオブジェクトには、生成テキストが content フィールド。
ストリーミングとSSE
生成されるトークンを受信するためにストリーミングを有効にし、長い出力の知覚されるレイテンシを軽減します。stream パラメータを stream: true リクエストパラメータに指定してServer-Sent Eventsを有効にします。以下の例は、チャンク単位でストリームを消費する方法を示しています。
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)各チャンクには部分的なデータが含まれ、最終チャンクには総トークン使用統計が含まれます。この方法はリアルタイムのユーザーインターフェースに最適です。
制限、エラー、コンテキスト
安定したアプリケーションを維持するためにリクエストレートを確認し、エラーを適切に処理してください。当社のAPIはキーあたり1分あたり300リクエストの制限を適用します。あなたは 401 キーが無効な場合に発生します。 402 前払いクレジットが枯渇した場合に発生します。 429 レート制限を超えた場合に発生します。各リクエストは100,000トークンのコンテキストウィンドウをサポートします。切り捨てを避けるために、プロンプトと completion の合計がこの制限内に収まるようにしてください。
よくある質問
これはOpenAI互換APIですか?
はい、当エンドポイントはOpenAIのチャット完了フォーマットに従っています。ベースURLを当社のものに変更するだけで、公式のOpenAI SDKを使用できます。これにより、既存の統合のほとんどに対してドロップイン置換が可能です。
LLMゲートウェイのコンテキストウィンドウサイズは?
プロンプトと補完を合わせた合計で100,000トークンのコンテキストウィンドウをサポートしています。これにより、単一のリクエストで大規模なドキュメントや長い会話履歴を処理できます。
レートリミットを処理するにはどうすればよいですか?
APIキーごとに1分あたり300リクエストまで許可されます。この制限を超えると、429ステータスコードが返されます。クライアント側で指数バックオフを実装し、リトライを効率的に処理してください。