Imgix APIs生成 API代替テキスト生成

代替テキスト生成

Generations APIは、Imgix画像のAI生成代替テキストを生成できます。これはスクリーンリーダーなどの支援技術向けに書かれます。1回の呼び出しで複数の言語の代替テキストをリクエストできます。

動画生成とは異なり、代替テキスト生成は同期です。生成されたテキストはレスポンスで直接返され、ポーリングすべきジョブはありません。

認証

Generations APIへのすべての呼び出しには、任意の権限(請求、アセットマネージャー読み取りなど)を持つAPIキーが必要です。キーを作成するには、ダッシュボードのAPIキービューに移動してください。APIキーのアカウントは、画像を配信するソースを所有している必要があります。

代替テキスト操作

エンドポイントメソッド説明
/v1/generations/alt-textGET1つ以上の言語で画像の代替テキストを生成します。

代替テキストの生成

代替テキストを生成するには、urlまたはurl64で画像を指定して、/v1/generations/alt-textGETリクエストを送信します。

リクエストパラメータ

パラメータ必須説明
urlStringurl/url64のいずれかクエリパラメータを含まないプレーンなImgixレンダリングURL(例:https://assets.imgix.net/photo.jpg)。
url64Stringurl/url64のいずれかbase64urlでエンコードされたImgixレンダリングURL。URLがAI生成パラメータなどのクエリパラメータを含む場合に使用します。
languageStringいいえBCP-47言語コード。複数の言語を指定するには、パラメータを繰り返すか、カンマ区切りのリストを渡します。デフォルトはenです。
regenerateBooleanいいえキャッシュをスキップして代替テキストを再生成します。デフォルトはfalseです。

注意: urlまたはurl64のいずれか一方のみを指定してください。クリーンな画像URLにはurlを使用し、 URLにクエリパラメータが含まれる場合(例:text2imageで生成された画像)はurl64を使用します。

サポート言語

代替テキストは以下の言語で生成できます。これら以外の言語をリクエストすると、400レスポンスが返されます。

コード言語
en英語
frフランス語
deドイツ語
itイタリア語
esスペイン語

レスポンス

レスポンスには、リクエストした言語コードをキーとするalt_textオブジェクトと、生成できなかったリクエスト済み言語を列挙するfailed_languages配列が含まれます。

属性説明
alt_textObjectリクエストした各言語について、言語コードと生成された代替テキスト文字列のマップ。
failed_languagesArrayリクエストされたが生成できなかった言語コード。完全に成功した場合は空です。
GET api/v1/generations/alt-text?url=https://assets.imgix.net/photo.jpg&language=en,fr

パラメータを含むURLの代替テキストを生成する

画像URLにクエリパラメータが含まれる場合(例:text2imageで作成されたAI画像)は、完全なURLをbase64urlでエンコードしてurl64として渡します。

# プレーンなURL(クエリパラメータを含む):
# https://assets.imgix.net/ai?text2image=true&prompt=a serene mountain lake at sunset
 
GET api/v1/generations/alt-text?url64=aHR0cHM6Ly9hc3NldHMuaW1naXgubmV0L2FpP3RleHQyaW1hZ2U9dHJ1ZSZwcm9tcHQ9YSBzZXJlbmUgbW91bnRhaW4gbGFrZSBhdCBzdW5zZXQ&language=en

ステータスコード

ステータスコード説明
200OK - 代替テキストが正常に生成(またはキャッシュから配信)されました。
400Bad Request - url/url64が欠落または無効、もしくはサポートされていないlanguage値です。
402Payment Required - アカウントのAIクレジットが枯渇しています(plan_credits_depleted_payment_required)。
403Forbidden - ソースで代替テキスト生成が有効になっていない、またはAPIキーがソースを所有していません。
500Internal Server Error - 画像を取得できなかったか、リクエストされたすべての言語で生成に失敗しました。

クレジットの使用

代替テキスト生成は、アカウントのAIクレジットに対して計上されます。402レスポンスは アカウントのクレジットが枯渇していることを示します。残高が補充されると生成が再開されます。

curl -X GET "https://api.imgix.com/api/v1/generations/alt-text?url=https://assets.imgix.net/photo.jpg&language=en,es" \
  -H "Authorization: Bearer YOUR_API_KEY"
# Response:
# {
#   "alt_text": {
#     "en": "a havanese puppy sitting on a wooden floor, looking up at the camera",
#     "es": "un cachorro habanero sentado en un suelo de madera, mirando a la cámara"
#   },
#   "failed_languages": []
# }