Discourse AIで投稿画像のアクセシビリティを向上

2024年(link)、Discourse AI に AI による画像キャプション機能を導入しました。この機能は特にアクセシビリティの面で有用でしたが、投稿を作成する際にユーザーが「AI でキャプションを生成」をクリックすることを覚えておく必要がありました。

現在、画像キャプションの仕組みを再設計し、投稿の画像に対してバックグラウンドでキャプションを生成できるようにしました。生成されたキャプションは投稿の生データ(著者が実際に書いたコンテンツはそのまま維持されます)とは別に保存され、スクリーンリーダー、検索、画像のライトボックスなど、有用な場所で表示されます。

このバージョンでは、投稿が作成された後にバックグラウンドで自動的に画像キャプションが生成されます。以下に簡単なデモ動画をご覧ください :video_camera:

動作原理

AI による画像キャプションは、投稿そのものには生成されたテキストを挿入せずに、投稿の画像に付与されます。これにより、すべての投稿本文に余分な可視テキストを追加することなく、アクセシビリティと検索のためにキャプションを利用可能にしています。

キャプションが利用可能な場合、Discourse は以下を行います:

  • スクリーンリーダー向けに投稿の画像に AI キャプションを追加
  • 画像のライトボックスにキャプションを表示
  • キャプションテキストを検索インデックスに含める
  • 投稿を編集する際、コンポーザーのプレビューからユーザーがキャプションを編集できるようにする
  • ローカライズされたコンテンツに対してロケール固有のキャプションをサポート

動画が苦手な方のために、いくつかのスクリーンショットをご紹介します:

ライトボックスでの表示

コンポーザーでの編集

検索可能

設定場所

この機能は、Discourse AI の新しい 画像キャプション AI 機能エリアに配置されています。以前の AI ヘルパー AI 機能エリアから、専用のエリアに移行しました。

利用するには、以下が必要です:

  • discourse_ai_enabled
  • ai_post_image_captions_enabled
  • 動作する ai_image_caption_agent

選択された画像キャプションエージェントは、画像アップロードが有効化されており、ビジョン機能に対応した LLM を使用している必要があります。機能が有効化されているがエージェントが準備できていない場合、Discourse は管理者の問題として表示し、設定の問題を簡単に特定できるようにします。

既存の投稿

既存の投稿画像に対するオプションのバックフィルジョブもあります。

バックフィルはデフォルトで無効化されており、コミュニティは古い投稿に対してキャプションを生成するかどうか、またそのレートを選択できます。これは以下で設定できます:

  • ai_post_image_captions_backfill_hourly_rate
  • ai_post_image_captions_backfill_max_age_days

試してみてください :woman_technologist:t2:

Discourse がホストするコミュニティでは、私たちのモデルはすでに画像対応です。スクリーンリーダーを使用している人々にとって投稿画像をより有用にしたい場合は、この機能とバックフィルを有効化してください(上記の 既存の投稿 を参照)。

上記で述べたように、セルフホストのコミュニティでは、画像キャプションエージェントがビジョン機能に対応したモデルを使用していることを必ず確認してください。

「いいね!」 5

それらのキャプションは検索エンジンによってクロールされますか?

素晴らしい質問ですね。

ある意味では、そうと言えます。

キャプションは、画像の aria-description 属性として投稿の HTML にレンダリングされるため、検索エンジンのクローラーがトピックページをクロールする際にこれらを確認できます。また、Discourse 独自の検索インデックスにも含まれています。

ただし、これらは可視の投稿テキストや alt 属性として挿入されるわけではないため、aria-description のテキストを検索エンジンがインデックスに登録したり、重み付けしたりするかどうかは、クローラー次第となります。