各エンドポイントを使用するタイミング
常に
modelを送信してください。画像エンドポイントは、プロダクショントラフィックのために歴史的な暗黙のデフォルトモデルに依存しないように設計されています。
モデルを選択する
モデルの発見から始め、選択したモデルのTokenLabモデル詳細を確認します:GET /v1/modelsが含まれることがあります。モデル詳細ページは、より完全なGET /v1/models/{model}を公開する場合があります。これらのフィールドを使用して確認します:
- サポートされている操作、例えば
text-to-image、image-to-image、またはimage-edit。 - モデルが期待するリクエストエンドポイント。
- リファレンスに使用する形状、例えば
image_url、image_urls、reference_image_urls、マルチパートimage、またはJSONimages[]。 - モデルが
size、aspect_ratio、resolution、quality、background、output_format、またはresponse_formatを受け入れるかどうか。
リクエスト形状ルール
gpt-image-2スタイルのリクエストは、OpenAIのようなsize、quality、および編集フィールドを使用します。生成と編集のbackgroundはautoまたはopaqueを受け付けますが、transparentはサポートされません。モデルまたはTokenLabが自動デフォルトを使用する場合は、オプションフィールドを省略してください。- GeminiおよびNano Banana画像ファミリーは通常
aspect_ratioを使用します。モデル詳細がそれを公開している場合にのみresolutionを送信してください。 - Nano Banana画像から画像への生成は、
operation: "image-to-image"とリファレンス画像URLを持つ/v1/images/generationsに属します。 /v1/images/generationsはトップレベルのimages[]またはfile_idを受け入れません。これらは編集フローの形状です。- リモート画像リファレンスは、公開の
httpまたはhttpsURLでなければなりません。プライベートネットワークのURL、埋め込まれた資格情報、URLフラグメント、または処理開始前に期限切れになる可能性のある署名付きURLを送信しないでください。
テキストから画像の例
リファレンス画像の例
結果の処理
画像レスポンスは同期または非同期です:- 同期レスポンスは、最終的な
data[]をurlまたはb64_jsonで返します。 - 非同期レスポンスは
id、task_id、status、通常はpoll_urlを返します。 poll_urlが存在する場合はそれを優先してください。固定のルートが必要な場合は、GET /v1/tasks/{id}をポーリングしてください。- 特に
b64_jsonが必要な場合は同期リクエストを使用してください。非同期画像結果はURL指向です。
プロダクションチェックリスト
- TokenLabを呼び出す前にユーザー入力を検証します:プロンプトの長さ、画像の数、URLの到達可能性、およびファイルタイプ。
- 同期の高解像度リクエストのためにHTTPタイムアウトを十分に高く設定します。長時間の作業には利用可能な場合は非同期モードを使用してください。
- サポートのために
request_id、task_id、poll_url、モデル、エンドポイント、およびサニタイズされたリクエスト形状を保存します。 - クライアントタイムアウト時には、再試行する前にタスクが作成されたかどうかを確認します。
- 提供者のタスクIDではなく、使用記録および
billing_transaction_idが存在する場合はそれとコストを照合します。