AIボット - ペルソナ

:bookmark: このガイドでは、Discourse AI - AI ボットのペルソナの設定と管理方法について説明します。

:person_raising_hand: 必要なユーザーレベル:管理者

Discourse AI ボットには、ペルソナを管理するための柔軟なシステムが搭載されています。このガイドでは、以下の項目について説明します。

  • AI ペルソナとの対話方法
  • 設定オプション
  • 高度な設定
  • サポートされているコマンド
  • カスタマイズの可能性

:link: AI ボットについて、および有効化する方法については、こちらのガイドをご覧ください。

ペルソナとは?

ペルソナは、Discourse フォーラムの AI エンジンの動作をカスタマイズできる強力な機能です。AI の応答や対話をガイドする「システムメッセージ」として機能し、よりパーソナライズされた魅力的なユーザーエクスペリエンスの作成を支援します。

なぜペルソナを使用するのか?

ペルソナを使用すると、AI の動作をフォーラムのコンテキストとトーンに合わせて調整できます。AI にプロフェッショナルな設定にはよりフォーマルに、コミュニティフォーラムにはよりカジュアルに、あるいはロールプレイングゲームのために特定のキャラクターを体現させたい場合でも、ペルソナを使用すれば柔軟に対応できます。

グループ固有のペルソナへのアクセス

さらに、特定のユーザーグループが特定のペルソナにアクセスできるように設定することもできます。これにより、フォーラムの異なるセクションで異なる AI の動作を設定でき、コミュニティの対話の多様性と豊かさをさらに高めることができます。

ペルソナとの対話

ペルソナとの対話は、いくつかの方法で行うことができます。

  1. プライベートメッセージ(PM)
  2. チャットダイレクトメッセージ(DM)
  3. チャットチャンネルでのメンション
  4. @examle_bot_username を介した公開トピックでのメンション

管理者は、各ペルソナで許可される対話方法を制御できます。

設定

ペルソナを設定するには、discourse.example.com/admin/plugins/discourse-ai/ai-personas に移動します。

主要な設定オプションは次のとおりです。

  • システムプロンプト: 会話を誘導します。
  • ビジョンサポート: Vision 対応 LLM(例:GPT-4 Turbo、Claude 3)で有効にします。
  • デフォルトモデル: メンション可能なペルソナに必要です。
  • 許可されるグループ: Discourse のグループセキュリティを使用して権限を定義します。
  • アップロード: 追加の知識のためにテキストファイルをインデックス化します(RAG - Retrieval-Augmented Generation を使用)。
  • 有効なコマンド: 特定のコマンドへのアクセスを制御します。
  • チャットを許可: DM を介したチャットを有効にします(チャットプラグイン、デフォルトの大型言語モデル(LLM)、およびユーザーが必要です)。

完全な AI ペルソナ設定画面をご覧ください。

高度な設定オプション

ペルソナエディタには、いくつかの高度なオプションがあります。

  • Temperature および top_p(nucleus sampling): クリエイティビティと予測可能性を制御します。
  • Max context posts: LLM に提供される投稿の数を制限して履歴を保持します。投稿数が少ないとコストは削減されますが、AI は古いコンテンツを「忘れて」しまいます。
  • アップロードオプション:
    • Chunk tokens: ドキュメントの分割を制御します。
    • Chunk overlap tokens: チャンク間のオーバーラップを設定します。
    • Search conversation chunks: ユーザーのクエリに追加されるドキュメントフラグメントの数。
    • Question consolidator LLM: ユーザーの質問を決定するための LLM を選択します。

アップロードサポートの前提条件

アップロードサポートを使用するには:

  1. ai_embeddings_enabled 設定を有効にします。
  2. ai_embeddings_model を設定します。

Discourse AI は、さまざまな埋め込みモデルをサポートしています。ホスティング顧客は、bge-large-en モデルに無料でアクセスできます。

:information_source: セルフホスト者や、より多くの選択肢を求める場合は、埋め込みモデルをセルフホストするか、Open AI、Google(Gemini)などのモデルを使用できます。

Discourse AI におけるテキスト分割

Discourse は、テキストを分割する際に段落、行、単語を保持するために、Recursive Character Text Splitter を使用します。[[metadata YOUR METADATA HERE]] セパレータを使用してテキスト分割を制御できます。

[[metadata about cats]]
a long story about cats
[[metadata about dogs]]
a long story about dogs

この方法により、各チャンクに適切なデータのみが含まれるようになり、「チャンクの汚染」を防ぎます。

AI ペルソナのデバッグ

ペルソナをデバッグするには:

  1. ai bot debugging enabled groups 設定で指定されたグループにユーザーを追加します。
  2. このグループのユーザーは、AI の投稿の下部に AI デバッグボタンが表示されます。
  3. ボタンをクリックすると、デバッグ UI モーダルにアクセスできます。

:warning: 注意:LLM に曖昧または役に立たない情報を提供すると、それを有用な情報に変換するのが非常に困難になります。

サポートされているコマンド

Discourse AI は、次のようなさまざまなコマンドをサポートしています。

  • カテゴリ
  • タグ
  • 検索
  • Web ブラウザ
  • GitHub 連携(コード検索、プルリクエスト差分、ファイルコンテンツ)
    • ai bot github access token 設定を入力する必要があります。
  • Meta Discourse を検索
  • ランダムピッカー
  • 読み取り
  • 時間
  • Google 検索
    • ai google custom search api key および ai google custom search cx 設定を入力する必要があります。
  • DALL-E による画像生成
    • open_ai キーが必要です。
  • Stable Diffusion による画像生成
    • ai stability api key 設定を入力する必要があります。
    • ai stability engine 設定が画像生成アルゴリズムを制御します。
  • スキーマ
  • 設定の検索
  • コンテキストの設定

一部のコマンドには、追加の設定または API キーが必要です。

カスタムツールサポート

カスタムツールサポートを使用して独自のツールを作成できます。

システムペルソナのカスタマイズ

  1. 新しいペルソナを作成します。
  2. カスタマイズしたいペルソナのシステムプロンプトをコピーして貼り付けます。
  3. 必要に応じて変更します。
  4. 重複を避けるために、元のシステムペルソナを無効にすることができます。

検索のカスタマイズ

新しいペルソナの検索をカスタマイズするには:

  1. 新しいペルソナを作成します。
  2. 「検索」コマンドを追加します。
  3. 次のような検索オプションを設定します。

これにより、検索権限を委任したり、結果の数を増やしたり、サイトの特定のセクションに検索を制限したりできます。

「いいね!」 7

投稿が新しいトピックに分割されました: Discourse AI に画像生成機能を提供できますか

Readツールは具体的に何をするのですか?

また、メンション機能は、このバグレポートによると現在壊れています

要するに、LLMがフォーラムのトピックや投稿を読み取る能力を可能にします。

「いいね!」 1

基本的に、URL、名前、またはIDが指定されている場合にトピック/投稿を読み込み、それ以外の場合、または引き続き、埋め込みを使用し、何、いつ、なぜ、どのようにモデル自体、プロンプトなどによって異なりますか?

「いいね!」 2

ああ、すみません、別の投稿に返信していました :slight_smile:

トピックIDまたはトピックID+投稿番号を使用して、最大長に対するいくつかのガードとともに、トピック/投稿の生のマークダウンを見つけます。

埋め込みには依存しません。

「いいね!」 5

少しトピックから外れますが、質問することがなく、皆さんが時々これらのトピックを整理するので、気にしません。

AIとのPMにおける自動タイトルが、正しい言語になりました。大したことではありませんが、心理的な価値は大きいです。ありがとうございます!

「いいね!」 4

Bot ユーザーをグループに追加する方法はありますか?基本的に、それらのユーザーにアバターの装飾を追加したいのですが、グループに追加すると表示されません。

表示されませんが、まだ存在しています。AIユーザーをもう一度追加しようとすることで確認できます。または、これらの疑似ユーザーの設定で必要なグループを確認できます。

「いいね!」 1

AIボットのツールがどのように機能するかを正確に知りたい場合、Discourse AIリポジトリのどの部分を確認すればよいですか?

Tool、Playground、Botはいずれも開始に適した領域です。

例はこちらをご覧ください: Understanding Tools in Discourse AI System - AI Conversation - Discourse Meta

「いいね!」 3

まさに探していた答えです。ありがとうございます!関係者の方へ:プロンプトをペルソナのツールに合わせてより良く調整するために、このリポジトリのコードを読み通すことをお勧めします。

「いいね!」 1

投稿が新しいトピックに分割されました: チャット履歴に依存するペルソナのエンジニアリング

現在、「Read」ツールを使用してトピックのすべての投稿を取得しようとしていますが、LLMモデルには最大100件の投稿しか提供されません。「Max posts」をペルソナ設定で999に設定しましたが、問題は解決しません。

サーバー側のAPIリクエスト制限が原因である可能性がありますか?

@sam これについて何か原因の心当たりはありますか?

コードベースは確認していませんが、コード自体にハードリミットが設定されている可能性があります。これをどのように達成しようとしているのか教えていただけますか?それがここでの重要な要素です。

そして、フォーラムリサーチャーのペルソナを使用するのが最善かもしれません。

「ジャーナル/ログ」カテゴリがあり、多くの場合、トピックの所有者が4〜5か月にわたるプロジェクトの進捗状況を報告する数百件の投稿が含まれています。

私の目標は、そのトピック内のすべての投稿を取得し、著者=トピックの所有者でフィルタリングして、要約を作成することです。

「いいね!」 1

フォーラムリサーチャーを使うべきです。それがこのペルソナのまさにユースケースです。

「いいね!」 2

@sam ぜひそうしたいのですが、現在は画像に対応していません。これはロードマップに載っていますか、それとも現時点では優先事項ではありませんか?

「いいね!」 3

はい、追加できます。それほど大きな変更ではありません。

「いいね!」 3