Brain
AI Agent 向け: このページの Markdown 版は https://ankole.agentbull.com/ja-JP/docs/brain/index.md にあります。ドキュメント索引は https://ankole.agentbull.com/ja-JP/llms.txt にあります。
Brain は GBrain に着想を得た長期記憶システムであり、Palantir に類似したオントロジーに基づいて構築された最新のエンタープライズ世界モデルを維持します。会話、ファイル、Web ページに含まれる長期的な価値のある情報を、出所を追跡できる組織知識として整理します。Agent は明確な開示境界の中で、その知識を想起、修正、忘却できます。
Brain は増え続けるチャット履歴を、そのまま記憶として扱いません。人物、組織、出来事、判断、それらの関係について、現在の見取り図を維持します。新しい証拠は以前の Claim を支持、修正、または置換できます。矛盾が見つかった場合も、証拠と以前の状態は人が確認できる形で残ります。
1 つの Ankole インスタンスに属するすべての Agent が、同じ知識空間を使います。Agent ごとに個別のデータベースを複製する仕組みではありません。各記憶は独自の開示範囲を持つため、保存場所の共有が無制限の開示を意味することはありません。
Brain が学習できる情報
現在の学習経路は 3 つです。
| 経路 | 結果 | 条件 |
|---|---|---|
Agent が remember を呼び出す |
1 つの事実または判断が直ちに永続記憶になる | Agent は 1 つの原子的な Claim、出所、有効な開示範囲を指定する |
| Signals 学習が会話を処理する | 明示的な remember がなくても、長期的な価値のある事実、判断、未完了の約束を学習できる |
Channel はダイレクトメッセージまたは IM グループであり、Brain メンテナンス Agent に利用可能な light profile があること。グループ学習には、同期済みのメンバー権限グループも必要 |
| オペレーターが Source を登録する | ファイルまたは Web ページが検索対象になり、抽出された Claim を生成できる | Claim の抽出にはメンテナンス Agent の light profile が必要。ファイルはデプロイから読み取れること。ファイルと取得したページ本文は、有効な UTF-8 テキストで 10 MiB 以下であること。URL は Agent の web_fetch profile またはローカルの ankole-browser fallback を使う |
Signals 学習は、対象 Channel が一定時間アイドルになるか、関連する会話が終了した後にメッセージのまとまりを処理します。Agent の非公開なモデル会話履歴ではなく、Channel に保存されたメッセージを読みます。ダイレクトメッセージから得た知識の既定範囲は相手本人です。グループから得た知識の既定範囲は、その Channel のメンバー権限グループです。
remember が成功すると、その書き込みは確定します。その後に現在のターンが失敗、キャンセル、または再試行されても、記憶は取り消されません。確認済みの記憶は、最終応答の成功に依存しない永続的な結果です。
登録した各 Source には、既定の開示範囲があります。対象読者に必要な情報を届けられる、最も狭い範囲を指定してください。Source をアーカイブすると以後の学習は停止しますが、すでに学習した知識は削除されません。
Brain が知識を表す方法
Brain は、異なる問いに答えるために複数の形式で知識を保持します。
- ページは、人物、会社、出来事、プロジェクト、文書、概念など、1 つの安定した対象の現在の説明です。
- Factは、確認または更新できる 1 つの観察です。確信度、時刻、出所、保持者、開示範囲を持ちます。
- Takeは、人、Agent、または Brain が持つ判断、予測、賭け、仮説です。重みを持ち、後から採点または確定できます。
- Timelineは、ある対象にいつ何が起きたかを記録します。
- Linkは、2 つのページ間の関係を記録します。
holder は Claim を保持する人または Agent であり、文の主題ではありません。例えば、Alex がある仕入先を信頼できないと述べた場合、その Take の holder は Alex です。仕入先が保持する Fact ではありません。
1 つの Claim には、単独で変化できる 1 つの断言だけを含めます。Brain は各 Claim の出所を保存し、以前のページ版と置換済みの Claim も保持します。修正は現在の見取り図を変えますが、その形成過程を消しません。
Agent が記憶を使う方法
Brain は 2 つの方法で関連する記憶を提供します。会話の開始時とコンテキスト圧縮の後に、参加者、最近言及された対象、重要な現在の Fact、未完了の約束を含む、上限付きのコンテキストパックを用意します。各テキストターンでは、新しいメッセージ内の名称に一致するページも Agent に示せます。
これらの注入処理自体はモデルを呼び出しません。組み立てがタイムアウトまたは失敗した場合は空の結果を返し、ターンを続行します。想起された内容は背景データであり、命令ではありません。古い場合や不完全な場合もあります。
タスクで明示的な記憶操作が必要な場合、Agent は次のツールを使用できます。
| ツール | 結果 |
|---|---|
learn_source |
1 つの Web URL を Source として登録し、バックグラウンドで学習を開始する |
recall |
Token 上限の中で、現在の Fact と Take を先に返し、その後に関連するページ断片を返す |
get_page |
slug または自然言語名から、開示範囲で裁断した完全なページを読む。名前が曖昧な場合は推測せず候補を返す |
entity |
選択された Fact、関係、バックリンク数を含む対象カードを返す |
whoknows |
現在見える知識から、ある主題を知る人、Agent、会社を順位付けする |
delta |
指定期間に追加または失効した Claim と Timeline イベントを報告する |
synthesize |
想起した証拠を使い、1 つの問いに答える永続的な分析ページを書く |
forget |
理由を記録して、Fact を失効、Take を非アクティブ化、またはページをソフト削除する |
Brain からだけ想起する Skill を発見する
同梱 Skill の一部は、現在の作業に関連するときだけ必要になる SOP や方法論を含みます。Skill に brain-recall-only: true を宣言すると、各 Prompt の Skill カタログには表示されず、Brain から発見できる状態を保ちます。
Brain は Skill の name、description、tags だけを、lazyload-agent-skills/<skill-name> という world scope の発見レコードとしてインデックスします。Skill の本文、その他すべての Skill file、Agent 固有の教訓は既存の owner に残り、skill_view を通じて読み取られます。recall がこのレコードを返した場合、Agent は skill_view を呼び出します。loader は ankole-runtime に従い、互換性のある実行 surface では手順を読み込み、メイン Agent が background-only Skill を選んだ場合は Job への routing guidance を返し、それ以外の互換性のない読み取りは拒否します。このレコードに対する get_page も skill_view に委譲し、同じ結果を返します。
Brain は候補を選ぶ前に、現在の Agent に対する Agent Plugin と Skill の実効有効化状態を適用します。無効な Skill は発見も読み込みもできません。共有の発見 projection は無効化しても削除されないため、再び有効にすると再構築なしで利用できます。
Embedding モデルがある場合、検索は全文候補とベクトル候補を組み合わせます。Rerank モデルがある場合は、統合した結果を再順位付けできます。Embedding モデルがなくても全文検索は動作します。Rerank モデルがない場合は、統合後の順序を維持します。
知識境界と開示境界
保護された各本文セクション、Fact、Take、Timeline イベントは、次のいずれかの開示範囲を使います。
| 範囲 | 取得できる Principal |
|---|---|
world |
インスタンス内のすべての Principal |
group:<name> |
対応する権限グループの現在のメンバー |
principal:<uid> |
対応する Principal だけ |
Brain は読み書きの時点で、現在の権限グループ所属を確認します。後から所属チームが変わった場合、その変更は各記憶を書き直さなくても、以後の想起に反映されます。
作成者は、自分が書いた Claim と Timeline イベントを取得できます。Agent のオーナーは、その Agent の非公開範囲と、Agent が書いた、または保持する知識を監査できます。オーナーであることだけでは、Agent が所属するグループの共有知識を読めません。オーナー自身もそのグループに所属する必要があります。
グループ会話では 2 段目の開示確認も行います。
- Strict は既定値です。確認対象となるすべての参加者が元から取得できる場合に限り、グループ範囲の記憶を開示します。
- Relaxed は質問者だけを確認し、他の参加者によって結果を狭めません。
ダイレクトメッセージでは、両方のモードが同じように動作します。
Source または Channel は証拠の出所を記録しますが、学習した知識へのアクセスを付与しません。開示範囲は知識自体に設定します。ページの slug、タイトル、タイプ、存在はインスタンス内で見えます。保護された本文と構造化 Claim は開示範囲に従って裁断されます。
Agent が remember を能動的に呼び出すとき、機密保持の指針に従って開示範囲を選びます。この分類はモデルによる最善努力の判断であり、誤る可能性があります。アプリケーションは選択済みの範囲を決定論的に適用しますが、分類の正しさを証明するものではありません。コンプライアンス水準の分離が必要な場合は、記憶分類だけに頼らず、Principal と権限グループで Agent にアクセスできる主体を制限してください。
知識を現在に保つ方法
Dreaming は、判断を必要とする知識の定期メンテナンスです。次の処理を行えます。
- 関連する Fact から、Brain が保持する慎重な Take をまとめる。
- ページをまたぐパターンを見つけ、証拠への Link を持つ分析を書く。
- 関係と Timeline イベントを抽出する。
- 期限を迎えた Take を採点し、校正概要を更新する。
- 矛盾の可能性を検出する。
- 繰り返し現れる証拠に明確なタイプが必要な場合、Schema 用語を提案する。
Dreaming は矛盾を密かに解消せず、関連する Claim を書き換えません。発見を記録し、Console で人が解決または却下できるようにします。Schema の提案も、承認されるまでインスタンスの語彙を変えません。
Fact は種類と経過時間に応じて検索順位の重みを失います。この減衰は、保存された確信度や履歴を変えません。明示的な忘却だけが現在の状態を変えます。Fact は失効し、Take は非アクティブになり、ページはソフト削除されます。ソフト削除したページは、設定された完全削除期限まで復元できます。失効および置換済みの Claim は、監査と校正の履歴として残ります。
Self-healing は検索用投影を維持します。古いチャンクと Embedding を修復し、検索インデックスを確認し、未学習の対象 Channel を見つけます。この処理は推論モデルを呼び出しません。
Console で Brain を管理する
Console の Brain 領域は、知識空間を結果別に表示します。
- Objects では、ページ、表示本文、Fact、Timeline、Link、Tag、版、ロールバック、削除、復元を確認できます。
- Claims では、Fact と Take の出所と現在状態を確認し、修正、忘却、確定を実行できます。
- Contradictions には、人が確認する矛盾候補が入ります。
- Suggestions には、承認または却下する語彙提案が入ります。
- Sources では、ファイルと URL の登録、学習開始、アーカイブを行えます。
- Search preview は、指定した Principal と開示モードで想起を実行します。
- Principal audit は、ある Principal が holder、作成者、または対象者である知識を一覧表示します。
- Health は、モデルの準備状態、学習の滞留、Embedding の失敗、Channel の前提条件、投影の状態を表示します。
Brain の設定では、Brain のメンテナンスを担当する Agent を選択し、インスタンスの知識空間に属する 2 つのモデル設定を保持します。Brain のすべてのモデル呼び出しは、選択した Agent の ID で実行され、使用量もこの Agent に帰属します。この Agent は有効な状態を保つ必要があります。無効にすると Brain は異常を報告し、Agent を再度有効にするか変更するまで、すべてのモデル呼び出しとローカル URL 取得を停止します。保存済みの知識とテキスト検索は引き続き利用できます。
| 所有者と設定 | 有効になる結果 |
|---|---|
メンテナンス Agent の light profile |
Signals 学習と Source からの Claim 抽出 |
メンテナンス Agent の heavy profile |
モデルを必要とする Dreaming 処理と synthesize |
メンテナンス Agent の web_fetch profile |
URL Source から読みやすい本文を抽出。ローカルの ankole-browser が fallback |
| Brain の Embedding モデル | ベクトル検索と Fact の意味重複判定 |
| Brain の Rerank モデル | 検索結果を統合した後の再順位付け |
任意モデルがない場合、該当する能力だけが制限されます。状態が隠れることはなく、Health ページが利用できない能力を示します。Brain を無効にすると、記憶ツールとコンテキスト注入がなくなり、バックグラウンド処理が停止します。保存済みの知識は変わりません。
すべてのインスタンスに、共通語彙を提供する general Schema Pack が入ります。初期設定では、プライベートエクイティとベンチャーキャピタル、公開市場、消費者ビジネス、法務、ソフトウェア、コンサルティングの Pack も選択できます。すべての Agent が導入済みの語彙を共有します。繰り返し現れる概念は、無秩序な新タイプではなく、承認待ちの Schema 提案になります。
現在の対応範囲
Brain が会話のまとまりを自動学習できる Channel は、現在ダイレクトメッセージと IM グループだけです。登録できる Source はファイルと URL です。Connector、Webhook、Alert の Source から直接学習することはできません。
Brain は証拠を保存するシステムであり、保存内容がすべて正しい、または完全であることを保証しません。重要な判断では、出所、時刻、確信度、holder、矛盾状態を合わせて確認してください。
システム内での Brain の境界はアーキテクチャを参照してください。実行時設定は AppConfigure を参照してください。実際の作業履歴から手順上のガードレールを学ぶ仕組みは Skill Lessons を参照してください。