このガイドでは、Discourse AI プラグインの関連トピック機能を有効化して設定する方法について説明します。
必要なユーザーレベル: 管理者
関連トピック機能は、ユーザーが現在読んでいるトピックに基づいて意味的に類似したトピックを提案することで、関連コンテンツの発見を支援し、コンテンツの探索とユーザーエンゲージメントを高めます。
機能
- 意味的テキスト類似性: キーワードマッチングを超えて、真に類似したコンテンツを見つけます
- 「提案された」トピックと「関連」トピックの切り替え
- 匿名ユーザーとログイン済みユーザーの両方で利用可能
関連トピックの有効化
関連トピックは、Discourse AI プラグインが有効になっているすべての Discourse ホスト済みカスタマーに対してデフォルトでオンになっています
前提条件
関連トピックを機能させるには、Embeddings が必要です。
当社のホスティングを利用している場合、Embeddings はオープンソースモデルを使用して提供されます。追加の設定は必要ありません。
セルフホストインスタンスでは、サポートされているプロバイダーを通じて埋め込みモデルを設定する必要があります。
設定
- 管理 → プラグイン → Discourse AI → AI機能 に移動します
- Embeddings モジュールを見つけて設定します:
ai_embeddings_selected_modelを設定した埋め込み定義に設定しますai_embeddings_enabledを有効にして Embeddings をアクティブ化します
ai_embeddings_semantic_related_topics_enabledを有効にして、関連トピック機能をアクティブ化します
埋め込みモデルの設定
Embeddings を有効にする前に、埋め込みモデルを設定する必要があります。管理 → プラグイン → Discourse AI → Embeddings に移動して、新しい埋め込み定義を作成します。いくつかのプリセットから選択できます。
- Open AI:
text-embedding-3-smallまたはtext-embedding-3-large(ほとんどのサイトに推奨) - Google:
gemini-embedding-001 - Hugging Face (セルフホスト推論):
multilingual-e5-large(非英語または多言語サイトに推奨)、bge-large-en、またはbge-m3
選択したプロバイダーの API キー (または AIシークレット) とエンドポイント URL を提供する必要があります。
追加設定
次の設定により、関連トピック機能を微調整できます。
ai_embeddings_semantic_related_topics: 関連トピックセクションに表示するトピックの最大数 (デフォルト: 5)ai_embeddings_semantic_related_include_closed_topics: 終了したトピックを関連結果に含めるかどうか (デフォルト: true)ai_embeddings_semantic_related_age_penalty: 古いトピックにペナルティを適用して、新しいコンテンツを優先します (デフォルト: 0.0、範囲: 0.0–2.0)ai_embeddings_semantic_related_age_time_scale: 年齢ペナルティの時間スケール (日数) (デフォルト: 365)
技術的な FAQ
関連トピックのアーキテクチャの図を表示するために展開
概要は、トピックが作成/更新されるときに次のことが発生することです。
sequenceDiagram
User->>Discourse: トピックを作成
Discourse-->>Embedding Microservice: 埋め込みを生成
Embedding Microservice-->>Discourse:
Discourse-->>PostgreSQL: 埋め込みを保存
トピック訪問時:
sequenceDiagram
User->>Discourse: トピックを訪問
Discourse-->>PostgreSQL: 最も近いトピックを照会
PostgreSQL-->>Discourse:
Discourse->>User: 関連トピックを表示
関連トピックはどのように機能しますか?
- ユーザーがトピックを訪問すると、Discourse は埋め込み表現に基づいて最も意味的に類似したトピックをデータベースに照会します。これらの関連トピックがユーザーに提示され、コミュニティのコンテンツのさらなる探索が促進されます。
トピック/投稿データはどのように処理されますか?
- Discourse ホスト済みサイトの場合、データは安全な仮想プライベートデータセンター内で処理されます。セルフホストサイトの場合、データ処理は選択したサードパーティプロバイダーによって異なります。
埋め込みデータはどこに保存されますか?
- 埋め込みデータは、トピック、投稿、ユーザーなどの他のフォーラムデータと一緒に、Discourse データベースに保存されます。
利用可能な埋め込みモデルは何ですか?
- Discourse AI は、OpenAI (
text-embedding-3-small、text-embedding-3-large)、Google (gemini-embedding-001)、Hugging Face 互換エンドポイント (bge-large-en、bge-m3、multilingual-e5-large)、および Cloudflare Workers AI のモデルをサポートしています。管理 UI 経由でカスタム埋め込みモデルを設定することもできます。