チュートリアル
hiapi「モデル利用不可」/「モデルが見つかりません」エラー:原因と修正方法
POST https://api.hiapi.ai/v1/tasks がモデル利用不可またはリクエスト無効を理由にリクエストを拒否した場合、タスクは作成されません。再試行する前に、現在のモデルドキュメントと照らし合わせて正確なモデル名とリクエストフィールドを確認してください。
よくある原因
- モデル名が古い、または不完全です。HiAPI のモデル名はすべて同じ形式ではありません。裸の名前もあれば、モダリティパスを含むものもあります。GPT Image 2 のテキストからの画像生成リクエストでは
gpt-image-2/text-to-imageを使用します。 - スペルミス、大文字小文字の違い、隠れた空白が名前を変えてしまっています。モデル名は記憶から入力せず、現在のドキュメントからコピーし、環境変数から読み込んだ値の空白を取り除いてください。
- モデルまたはルートが無効化または名前変更されています。古い記事や保存済みのスニペットからの名前はすでに利用できない可能性があります。現在のモデルページと変更ログを基準にしてください。
- リクエストでルート形式が混在しています。モデルが複数のルートを提供する場合、ドキュメントで説明されているトップレベルの
routeフィールド、またはサポートされている@route形式を使用してください。ただし、互いに矛盾する値を送信しないでください。 - ルーティングより前に認証が失敗しています。
401は API キーが欠落しているか無効であることを示します。403はキーに権限がないことを示します。これらはモデルフィールドとは別に扱ってください。
修正手順
- 現在の GPT Image 2 ドキュメントまたは該当するモデルページを開き、正確なモデル名をコピーします。
- ドキュメントの名前の一部となっているモダリティサフィックスを保持します。GPT Image 2 のテキストからの画像生成では
gpt-image-2/text-to-imageを使用します。 input内の各フィールドをそのモデルのパラメータ表と比較します。モデル名が有効であっても、入力フィールドがサポートされていない場合は400 INVALID_REQUESTが返されることがあります。- 呼び出し側で空白を取り除きます。Python では
model = os.environ["MODEL"].strip()を使用し、Node.js ではmodel.trim()を使用します。 - モデルに複数のルートがある場合、ドキュメントで説明されているトップレベルの
route値を渡し、そのルートに対応するパラメータ構造を使用します。 - 完全な HTTP ステータスコードとレスポンスボディを記録します。モデル検証エラーからキーの問題を推測したり、
401/403からモデルの問題を推測したりしないでください。
最小リクエストで検証する
curl -X POST https://api.hiapi.ai/v1/tasks \
-H "Authorization: Bearer $HIAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-image-2/text-to-image",
"input": {
"prompt": "木製のテーブルの上に置かれた小さな陶器のマグカップ、柔らかな窓の光",
"aspect_ratio": "1:1",
"resolution": "1K"
}
}'
HTTP 200 かつ data.taskId を含むレスポンスが返れば、タスクは受け付けられています。data.status が success または fail になるまで GET /v1/tasks/:id をポーリングするか、本番環境向けにコールバックを設定してください。400 が返された場合は、検証メッセージを読んでモデルページを再確認してください。401 または 403 が返された場合は、キーまたはその権限を修正してください。
関連コンテンツ
よくある質問
すべてのモデル名から /text-to-image を削除すべきですか?
いいえ。モデルの命名はシリーズによって異なります。現在のモデルドキュメントから固定値をコピーしてください。GPT Image 2 のテキストからの画像生成では、/text-to-image はモデル名の一部です。
モデルエラーはキーが間違っていることを意味しますか?
必ずしもそうではありません。リクエストの検証と認証は別々です。401 はキーが欠落しているか無効であることを示し、403 はキーに権限が不足していることを示します。400 はリクエスト構造、モデル名、ルート、または入力フィールドを指します。
クライアント側ですべてのモデル名を正規化できますか? 独自の正規化ルールを策定することは避けてください。現在のモデルドキュメントで公開されている正確な名前を保存して送信してください。
関連記事
すべての記事を見る →-
チュートリアル
HiAPI API で hailuo-2.3-fast/image-to-video を呼び出す方法:curl と Python の実践
高速・低コストな画像から動画へのティアにおける最初の実行可能なリクエスト — モデル ID から MP4 のダウンロードまで
-
チュートリアル
HiAPI APIでhailuo-2.3/text-to-videoを呼び出す方法:curl、Python、実行可能なリクエスト例
-
チュートリアル
HiAPI で Kandinsky 6.0 Pro のテキストto動画を使用する:curl と Python チュートリアル
リクエスト優先の実践デモ:プロンプトから動画クリップへの呼び出しを構築し、リクエストを送信し、完了状態をポーリングし、結果をダウンロードする