ドキュメント
ドキュメントは、TomoriBotが返答を作成する際に検索する知識ベースを提供します:ゲームのルールブック、サーバーのFAQ、Wikiのエクスポート、ストーリーのメモなどです。長期記憶 に収まらない長大な資料を保持するのに適しています。
ドキュメントを使用する理由
Section titled “ドキュメントを使用する理由”アクティブな長期記憶は毎回の返答で全文が送信されるため、会話で必要とされるかどうかにかかわらず、それぞれがプロンプトの容量を消費します。一方、ドキュメントは検索されます。各返答には会話と一致した最大10個の一節のみが渡されるため、たとえ40ページのルールブックであっても返答に追加されるのは最大で約3ページ分のテキストにとどまり、誰も尋ねないセクションには一切コストがかかりません。
彼女が常に知っておくべき短い事実には長期記憶を使用してください。話題に上ったときに検索すべき参照資料にはドキュメントを使用してください。
検索の仕組み
Section titled “検索の仕組み”ドキュメントを追加すると、TomoriBotはそれをチャンクと呼ばれる数段落ごとの一節に分割します。その後、埋め込みモデルが各チャンクを、その意味を表現する数値のリストへと変換します。類似したトピックに関するチャンクは、異なる単語が使われていても類似した数値になります。
メッセージごとに、彼女は最新のメッセージを同様に数値へと変換し、意味が最も近いチャンクを選択します。また、完全一致する単語を共有するチャンクも確認するため、埋め込みモデルが認識できない可能性のある固有名詞や造語も捕捉できます。最も適合した一致が、その返答のためのプロンプトに追加されます。この手法は検索拡張生成(RAG)と呼ばれます。
例えば、ドキュメントに「ギルドメンバーは毎週金曜日に波止場で集まる」と書かれているとします。「ギルドはいつ集まるの?」と尋ねると、質問に「金曜日」という単語が含まれていなくても、そのチャンクが検出されます。
彼女は一致したチャンクのみを参照するため、ドキュメント全体の要約や、ドキュメント全体をまたいだ集計などは行えません。特定の詳細に関する質問が最も効果的です。Markdownの見出しが役立ちます:各チャンクにはそのセクション見出しが保持されるため、適切に構成されたドキュメントほど明確な一致が得られます。
ドキュメントの設定
Section titled “ドキュメントの設定”ドキュメントには埋め込みモデルが必要です。埋め込み スロットでモデルを選択してください。プロバイダーとモデル を参照してください。
ドキュメントは /memories > ドキュメント で管理します。新しいドキュメントを追加 を選択して、.txt、.md、または .pdf ファイルをアップロードします。ドキュメントは1つのペルソナに紐づけることも、複数のペルソナ間で共有することもでき、選択したチャンネルとそのスレッドに制限することも可能です。保存されたチャンクを閲覧し、そのいずれかを編集または削除できます。長いサーバーの記憶をドキュメントに変換するには、/memories でその記憶を開き、ベクトル化 を選択します。
新しいサーバーでは、ドキュメントの管理はデフォルトで サーバーの管理 権限を持つメンバーに制限されています。管理者は /moderation > メンバーアクセス からアクセス権を付与できます。
ドキュメントの制限
Section titled “ドキュメントの制限”デフォルトでは、ファイルサイズは最大4MB、テキストは最大120,000文字(英語で約20,000語)まで、最大150個のチャンクに分割されます。各ペルソナのドキュメントおよび共有セットには、それぞれ20件のドキュメントと1,000個のチャンクを保持できます。セルフホスト管理者は、MAX_DOCUMENT_SIZE_MB、MAX_DOCUMENT_TEXT_LENGTH、MAX_DOCUMENT_CHUNKS、MAX_DOCUMENTS_PER_SERVER、MAX_DOCUMENT_CHUNKS_PER_SERVER でこれらの制限を変更できます。
チャット履歴からの学習
Section titled “チャット履歴からの学習”/learn history は、現在のチャンネルのメッセージを最大100件読み取り、そこに含まれる事実を抽出してドキュメントとして保存します。これには サーバーの管理 権限と、構造化出力をサポートするモデルが必要です。
履歴のインポートでは、会話、ロールプレイ、およびペルソナの視点に応じたプロンプトが用意されています。インポートを実行する前にプロンプトを確認および調整できます。learner で学習結果を誰が保持するかを選択します:1つのペルソナ(空欄の場合はメインペルソナ)、発言した各ペルソナ、またはすべてのペルソナで共有。