ホームに戻る

AI 代替テキストジェネレーターAPIドキュメント - 画像の代替テキストを自動生成

概要

AI 代替テキストジェネレーターAPIは、画像の代替テキストを自動で生成するために設計された強力なサービスです。高度なAIを活用して画像を分析し、文脈に合った意味のある代替テキストを作成します。これはアクセシビリティとSEOにとって非常に重要です。このような画像向け代替テキストジェネレーターを使用することで、視覚コンテンツが検索エンジンに理解されるようになります。また、何時間もの手作業を節約し、生産性を向上させます。

応用シナリオ

AI 代替テキストジェネレーターAPIは、画像の代替テキスト生成が不可欠なさまざまなアプリケーションに最適です。

APIキー

AI 代替テキストジェネレーターAPIにアクセスするには、まず有効なAPIキーを取得する必要があります。このキーはリクエストを認証し、APIへの安全なアクセスを保証するために使用されます。

APIキーの取得方法

  1. APIキー管理ページにアクセス: システムにログインし、右上隅にあるユーザーアバターをクリックします。ドロップダウンメニューで「APIを申請」をクリックして、APIキー管理ページを開きます。
AI 代替テキストジェネレーター用API
  1. 新しいキーを作成:新しいキーを作成」をクリックし、ポップアップダイアログでキーの名前を入力してから「作成」をクリックします。
AI 代替テキストジェネレーター用APIキー
  1. キーをコピーして保管: キーが完全に表示されるのは一度だけです。 コピーアイコンをクリックしてキーをクリップボードにコピーし、「確認」をクリックしてダイアログを閉じます。

重要: 他者と共有したり、ブラウザ、クライアントサイドのコード、その他安全でない場所に公開したりしないでください。不正アクセスを防ぐために、キーを安全に保管してください。

APIエンドポイント

POST https://api.imagedescriber.app/api/v1/generate_alt_text

リクエストパラメータ

リクエストヘッダー

ヘッダー必須説明
content-typestringはい`application/json`
authorizationstringはい`Bearer ${api_key}`。`${api_key}`はあなたのAPIキーです。

リクエストボディ

AI 代替テキストジェネレーターAPIは、以下のリクエスト構造を受け入れます。

{
  "image": "data:image/jpeg;base64,{image_base64_data}",
  "lang": "ja"
}
パラメータ必須説明
imagestringはい

Base64エンコードされた画像データ。対応画像フォーマットは画像フォーマット詳細に記載されています。

langstringいいえ返される代替テキストの言語コード。デフォルトは`en`(英語)です。対応言語コードは以下に記載されています。

対応言語

コード言語
en英語(デフォルト)
deドイツ語
zh中国語
frフランス語
esスペイン語
ja日本語
ko韓国語
itイタリア語
ptポルトガル語
arアラビア語
nlオランダ語
plポーランド語

リクエスト例 (cURL)

curl --location 'https://api.imagedescriber.app/api/v1/generate_alt_text' \
--header 'content-type: application/json' \
--header 'authorization: Bearer your_api_key' \
--data '{
    "image":"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQE...",
    "lang":"ja"
}'

リクエスト例 (Python)

import requests
import base64

def image_to_base64(image_path):
    """画像をBase64エンコーディングに変換する"""
    with open(image_path, "rb") as image_file:
        encoded_string = base64.b64encode(image_file.read()).decode("utf-8")
    return encoded_string

def generate_alt_text(api_key, image_path, lang="ja"):
    """AI 代替テキストジェネレーターAPIを使用して画像の代替テキストを生成する"""
    url = "https://api.imagedescriber.app/api/v1/generate_alt_text"
    headers = {
        "content-type": "application/json",
        "authorization": f"Bearer {api_key}"
    }

    image_base64_data = image_to_base64(image_path)
    payload = {
        "image": f"data:image/jpeg;base64,{image_base64_data}",
        "lang": lang
    }

    response = requests.post(url, headers=headers, json=payload)

    if response.status_code == 200:
        result = response.json()
        alt_text_data = result["data"]["alt_text"]
        print("生成された説明:", alt_text_data["description"])
        print("生成された代替テキスト:", alt_text_data["alt"])
        print("残りのクレジット:", result["data"]["credits"]["remaining"])
    else:
        print(f"エラー: {response.status_code}")
        print(response.text)

# 使用例
api_key = "your_api_key"
image_path = "your_image.jpg"

generate_alt_text(api_key, image_path)

リクエスト例 (Next.js)

import fs from 'fs';

// サーバーサイドでの実装
const buffer = await fs.readFileSync("/temp/test.jpg");
const base64Image = buffer.toString('base64');
const imageData = `data:image/jpeg;base64,${base64Image}`;

// クライアントサイドでの実装
const file: File = /* inputまたはドロップイベントからのファイル */;
const arrayBuffer = await file.arrayBuffer();
const bytes = new Uint8Array(arrayBuffer);
const base64Image = btoa(String.fromCharCode.apply(null, bytes as any));
const imageData = `data:${file.type};base64,${base64Image}`;

const body = {
  "image": imageData,
  "lang": "ja"
};

const response = await fetch('https://api.imagedescriber.app/api/v1/generate_alt_text', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer {your_api_key}'
  },
  body: JSON.stringify(body),
});

const result = await response.json();
console.log('生成された説明:', result.data.alt_text.description);
console.log('生成された代替テキスト:', result.data.alt_text.alt);

レスポンス

レスポンスボディ (JSONレスポンス)

画像向け代替テキストジェネレーターは、詳細な説明と代替テキストの選択肢の配列を含むレスポンスを返します。

{
  "code": 0,
  "message": "success",
  "request_id": "unique_request_id_string",
  "data": {
    "alt_text": {
      "description": "画像の詳細な説明",
      "alt": [
        "alt1",
        "alt2",
        "..."
      ]
    },
    "credits": {
      "amount": "この呼び出しで消費されたクレジット",
      "remaining": "この呼び出し後に残っている合計クレジット"
    }
  }
}
フィールド説明
codenumberステータスコード。`0`は成功を示し、`0`以外はエラーを示します。
messagestringステータスメッセージ。リクエストのステータスを説明します。
request_idstring一意のリクエストID。追跡とトラブルシューティングに使用されます。
dataobjectレスポンスデータが含まれます。
data.alt_textobject生成された説明と代替テキストが含まれます。
data.alt_text.descriptionstring画像コンテンツの詳細な説明。
data.alt_text.altarray画像用に生成された代替テキスト文字列の配列。
data.creditsobjectクレジット消費と残高に関する情報。
data.credits.amountnumberこのAPI呼び出しで消費されたクレジット数。
data.credits.remainingnumberこの呼び出し後、アカウントに残っている合計クレジット数。

リクエスト制限

サービスの安定性と公平性を確保するため、各APIキーは**1分あたり30リクエスト(1時間あたり1800リクエスト)**に制限されています。この制限を超えるリクエストはエラーコード1004で拒否されます。

クレジットシステム

クレジットを追加するには?

クレジットチャージページにアクセスして、より多くのAPI呼び出しをサポートするためのクレジットパッケージを購入できます。さまざまなユーザーのニーズに合わせたパッケージを提供しています。

エラーハンドリング

以下の表は、一般的なエラーコード、その意味、および解決策を示しています。

エラーコード説明解決策
1002認証されていません`authorization`ヘッダーが正しく設定されているか確認してください。
1003無効なAPIキーAPIキーが正しいか確認するか、新しいキーを取得してください。
1004リクエストが多すぎますリクエスト頻度を下げてください。最大で1分あたり30リクエストです。
1005無効なパラメータリクエストパラメータが仕様に準拠しているか確認してください。
2002クレジットが不足しています

クレジットをチャージしてください。

2003コンテンツがフィルターによってブロックされましたコンテンツが規制に準拠するように画像を修正してください。
2004無効な画像フォーマット

対応している画像フォーマットを使用してください。画像フォーマット詳細を参照してください。

2005画像のアップロードに失敗しました画像データが有効であるか確認するか、後で再度アップロードしてみてください。
2006AIレスポンスを期待されるJSON形式に解析できませんでした。
5050内部サーバーエラーテクニカルサポートチームに連絡し、`request_id`を提供してください。

画像フォーマット詳細

現在サポートされている画像フォーマットには、JPGJPEGPNGWebPが含まれます。最大画像サイズは4MBです。

代替テキスト生成のベストプラクティス

  • 高解像度: より正確な画像向け代替テキストジェネレーターのために、鮮明で高解像度の画像を使用してください。
  • 良好な照明: 明るい画像は、より正確で記述的な代替テキストを生成します。
  • 明確な被写体: 被写体やオブジェクトがはっきりしている画像は、より関連性の高い代替テキストを生成します。
  • 対応フォーマット: 最適な結果を得るために、対応フォーマット(JPG, PNG, WebP)を使用してください。

ユースケースと統合例

SEO強化

AI 代替テキストジェネレーターAPIを使用して、ウェブサイトの画像の代替テキストを自動生成します。

// AIが生成した代替テキストで画像のSEOを強化する
const enhanceImageSEO = async (imageElement, apiKey) => {
  const canvas = document.createElement('canvas');
  const ctx = canvas.getContext('2d');
  canvas.width = imageElement.width;
  canvas.height = imageElement.height;
  ctx.drawImage(imageElement, 0, 0);

  const base64Image = canvas.toDataURL('image/jpeg');

  const response = await fetch('/api/v1/generate_alt_text', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': `Bearer ${apiKey}`
    },
    body: JSON.stringify({ image: base64Image })
  });

  const result = await response.json();
  const { alt } = result.data.alt_text;

  // SEOとアクセシビリティのために画像のalt属性を更新する
  if (alt && alt.length > 0) {
    imageElement.alt = alt[0];
  }
};

コンテンツ管理への統合

画像向け代替テキストジェネレーターをCMSワークフローに統合します。

# コンテンツ管理システムで画像をまとめて処理する
import os
import requests
from pathlib import Path

def bulk_generate_alt_text(directory_path, api_key):
    """ディレクトリ内のすべての画像を処理して代替テキストを生成する"""
    image_extensions = ['.jpg', '.jpeg', '.png', '.webp']

    for image_path in Path(directory_path).iterdir():
        if image_path.suffix.lower() in image_extensions:
            try:
                # 各画像の代替テキストを生成する
                result = generate_alt_text(api_key, str(image_path))

                # メタデータを付随するファイルに保存する
                metadata_path = image_path.with_suffix('.json')
                with open(metadata_path, 'w') as f:
                    json.dump(result['data']['alt_text'], f, indent=2)

                print(f"処理済み: {image_path.name}")

            except Exception as e:
                print(f"{image_path.name}の処理中にエラーが発生しました: {e}")

# 使用法
bulk_generate_alt_text("/path/to/images", "your_api_key")

お問い合わせ

AI 代替テキストジェネレーターAPIに関するご質問やご提案がございましたら、以下の方法でお気軽にお問い合わせください。

今すぐAI 代替テキストジェネレーターAPIを使い始めて、自動化された画像のアクセシビリティとSEOの力を解き放ちましょう!