Mistral API統合ガイド
Mistralスタイルの統合を新しいベースURLに移行するには、多くのチームが予想するよりも少ない作業で済みます。このガイドでは、ベースURLの変更、モデルID、ストリーミング、ツール、トークン制限、リトライ、および発生しやすいエラーについて、そのまま実行できるコード付きで解説します。
最終更新日
概要
- 変更はベースURLとキーが1つ変わるだけで、リクエストとレスポンスのフォーマットはそのままです。
- モデルID uncensored を使用し、他の変更を行う前に単一のテストリクエストで確認してください。
- ストリーミングと関数呼び出しは同じチャット完了エンドポイントを介して動作するため、既存のパーサーはそのまま機能します。
- コストは、入力トークン100万トークンあたり$0.15、出力トークン100万トークンあたり$0.50で、プリペイドクレジットから請求されます。
ベースURLの変更について
コードはベースURLにリクエストを送信し、キーを付加します。別のOpenAI互換エンドポイントに移行するには、この2つの値のみを変更すればよく、それ以外は変更の必要がありません。パス /v1/chat/completions 変更されないため、リクエストボディとレスポンスボディの形状は維持されます。
古いベースURLをコードではなく設定値に保持してください。そうすれば、本番環境で問題が発生した場合に、1ステップで戻すことができます。
SDK互換性: OpenAIとMistralクライアント
ほとんどのクライアントライブラリはカスタムベース URL を受け付けます。公式 OpenAI SDK、LangChain、LlamaIndex はすべて対応しており、プレーンな HTTP クライアントでも動作します。ベース URL を https://mistralapibaseurl.com/v1 新しいキーを渡します。
- SDKのバージョンを確認してください。非常に古いリリースはベースURL設定を無視する可能性があるためです。
- クライアントがキーを
Authorizationヘッダーを Bearer トークンとして使用します。
モデルIDの構成
モデルIDを送信 uncensoredサービスが提供する唯一のモデルであるため、リクエスト間でIDが変更されることはなく、モデル選択ロジックは不要です。
短いプロンプトで1つのリクエストを実行します。返信と使用量ブロックがあれば、ベースURL、キー、モデルIDがすべて正しいことを意味します。
ストリーミングレスポンスの実装
設定 stream: true サーバー送信イベントとして回答を受信します。各イベントは小さなテキストの断片を含み、最終イベントには使用量数値が含まれます。
チャンクは到着次第表示し、完全なテキストはバッファに保持し、ストリーム終了時にメッセージを保存します。最初のトークンまでの時間を測定してください。この数値が、ユーザーにとってチャットがどれだけ応答性高く感じられるかを示します。
Function CallingとToolsの有効化
すでに使用している同じ形式でtools配列を渡します。モデルは関数名とJSON引数を持つツール呼び出しを返します。コードで関数を実行し、結果をツールメッセージとして送信し、最終的な回答を読み取ります。
- 2つの必須引数を持つ1つのツールを定義し、単独でテストします。
- 連続して2つのツール呼び出しが必要なケースをテスト。
- データを変更する処理を実行する前に引数を検証します。
コンテキストウィンドウとトークンの管理
コンテキストウィンドウは100,000トークンです。長いチャットはこれを埋めるため、制限に達する前に古いターンを削除するか要約してください。各リクエストで最大16,000の出力トークンを返すことができ、デフォルトは2,048です。そのため、設定してください max_tokens 期待される回答用です。
各レスポンスのusageフィールドからトークンをカウントします。単語数からの推定は、コードや非英語テキストでは大幅に外れることがよくあります。
レートリミットとリトライの処理
各キーは1分あたり300リクエスト、同時に8リクエストまで処理可能です。制限を超えると429レスポンスが返されます。429および5xxレスポンスのみを指数バックオフで再試行し、合計待機時間に上限を設けてください。
400または401を再試行しないでください。同じリクエストは同じように失敗します。まずリクエストまたはキーを修正してください。
一般的なAPIエラーのデバッグ
| ステータス | 一般的な原因 | 取るべき行動 |
|---|---|---|
| 400 | JSONの形式が正しくないか、不明なフィールドが含まれています | リクエストボディが送信するフォーマットと一致しているか確認してください |
| 401 | キーの欠落または誤り | キーを再度コピーし、Authorization ヘッダーを確認してください |
| 402 | クレジットを使い切った | 残高をチャージします。チャージは$20から開始 |
| 429 | レートリミットに到達 | バックオフして後で再試行 |
エラーごとにステータスコードとリクエスト ID をログに記録し、問題をすばやく追跡できるようにします。
競合他社APIからの移行
移行を3つの段階で計画してください:テスト環境、ライブトラフィックの一部、そして完全な切り替えです。中間フェーズ中は両方のベースURLを構成に保持し、同じプロンプトに対する回答とレイテンシを比較してください。
リスト価格ではなく実際の使用量に基づいてコストを比較。使用欄の入力トークンと出力トークンにそれぞれ$0.15と$0.50を1Mトークンあたり乗算し、現在の請求額と比較してください
よくある質問
リクエスト形式を変更する必要がありますか?
いいえ。エンドポイントはチャット完了の形式に従うため、同じメッセージとツールの構造が機能します。変更されるのはベースURLとキーだけです。
使用するモデルIDは?
uncensoredを使用します。これはサービス上の唯一のモデルであるため、リクエストごとにIDが同じまま維持されます。
テスト用のキーの取得方法
Googleまたはメールとパスワードでサインアップ。キーは画面に表示され、アカウントには7日間有効な$0.50の試用クレジットが付与されます。カードは不要です。
利用料の支払い方法は?
USDT (TRC20)またはUSDC (Base)でチャージ。$20から開始。$50以上でボーナスクレジットが適用され、クレジットは有効期限なし。
キーにアクセス
サインアップしてキーを取得し、ベースURLを更新するだけ。これが完全なプロセスです。