世界を動かす技術を、日本語で。

LLM Wiki – 「アイデアファイル」の例

概要

  • LLMを活用した パーソナルナレッジベース構築パターン の紹介
  • 従来のRAG型検索ではなく、 永続的なWiki形式 で知識を蓄積・統合
  • LLMがWikiを自動生成・保守し、ユーザーは探索・指示に集中
  • 3層構造(生データ、Wiki、スキーマ)と 運用フロー の提案
  • 柔軟性が高く、個人・研究・ビジネスなど多様な応用が可能

LLMを用いたパーソナルナレッジベース構築パターン

  • 従来の知識検索(RAG)

    • ファイル群をアップロードし、クエリごとに該当部分を抽出・回答生成
    • 質問ごとに毎回ゼロから知識を再構築するため、 知識の蓄積や統合が進まない
    • NotebookLMやChatGPTファイルアップロード機能も同様の仕組み
  • 提案手法:永続的Wikiの構築

    • LLMが Markdown形式のWiki を自動生成・更新し、知識の統合・矛盾管理・要約を担う
    • 新たな情報源追加時、LLMが要点抽出・既存Wikiの該当ページへ統合・矛盾の指摘・クロスリファレンス強化を実施
    • 一度まとめた知識は蓄積され、以降の質問や追加情報で随時進化
    • ユーザーは 情報源の選定・探索・問いかけ に専念し、LLMが整理・記録・参照管理を自動化
  • 実際の運用例

    • 片側にLLMエージェント、もう一方にObsidianを配置し、LLMがWikiを編集
    • ユーザーはObsidianでWikiのリンクやグラフビューを閲覧し、LLMの成果をリアルタイムで確認
    • Obsidian=IDE、LLM=プログラマー、Wiki=コードベースという関係性
  • 応用事例

    • パーソナル用途:目標・健康・日記・自己分析などの蓄積・構造化
    • 研究用途:長期的な文献調査・論文要約・進化する仮説の管理
    • 読書記録:章ごとの要点整理・キャラクターやテーマの相互リンク化
    • ビジネス/チーム:Slack・会議記録・顧客対応から自動で内部Wiki生成・保守
    • 競合分析、旅行計画、講義ノート、趣味の深掘りなど、 知識が時間と共に蓄積・構造化される場面

アーキテクチャ

  • 3層構造
    • Raw sources :生データ(記事、論文、画像、データファイル等)
      • LLMは読み取りのみ、編集不可
      • 知識のソース・オブ・トゥルース
    • Wiki :LLM生成・管理のMarkdownディレクトリ
      • 要約、エンティティページ、概念ページ、比較、全体像、統合ページを保持
      • LLMがページ作成・更新・クロスリファレンス維持・一貫性担保を全自動で実施
      • ユーザーは閲覧、LLMは執筆・保守
    • Schema :Wikiの構造・規約・ワークフローを定義するドキュメント
      • 例:CLAUDE.md、AGENTS.mdなど
      • LLMがWiki運用時に参照し、 汎用チャットボットではなく“Wiki管理者”として振る舞う基準
      • ユーザーとLLMが協働で進化させる設定ファイル

運用フロー

  • Ingest(情報源取り込み)

    • 新規ソースを生データフォルダへ追加し、LLMに処理を指示
    • LLMが内容を読解し、要点をユーザーと議論
    • Wikiに要約ページ新規作成、インデックス更新、関連エンティティ・概念ページの修正、ログへの記録
    • 1ソースで10〜15ページが更新される場合も
    • ユーザーは要約確認・強調点の指示などで関与度を調整可能
  • Query(質問・探索)

    • ユーザーの質問に対し、LLMがWiki内の関連ページを検索・参照し、引用付きで回答生成
    • 回答形式はMarkdownページ、比較表、スライド(Marp)、グラフ(matplotlib)、キャンバス等多様
    • 良質な回答は新規Wikiページとして保管し、知識が連鎖的に蓄積
  • Lint(整合性チェック)

    • 定期的にLLMへWikiのヘルスチェックを依頼
    • ページ間矛盾、古い主張、孤立ページ、未作成の重要概念、クロスリファレンス漏れ、データギャップなどの検出・提案
    • LLMは新たな探索課題や追加ソースも提案可能

インデックス・ログ管理

  • index.md

    • Wiki全体のカタログ
    • 各ページのリンク・一行要約・メタデータ(日時、ソース数等)をカテゴリ別に整理
    • LLMが取り込みごとに自動更新し、質問時のナビゲーションに活用
    • 小〜中規模Wikiでは埋め込みベース検索不要、indexだけで十分な検索性
  • log.md

    • 時系列の操作記録(取り込み、質問、Lint実施など)
    • 各エントリを日付プリフィックスで統一すれば、Unixコマンドで簡単に解析可能
    • Wiki進化のタイムライン・直近の操作履歴の把握

補助ツール・TIPS

  • CLIツール

    • Wikiページ用のローカル検索エンジン(例:qmd。BM25/ベクトル検索+LLM再ランキング対応)
    • 小規模ならindex.mdで十分だが、規模拡大時は専用検索ツールが有効
    • LLMがシェル経由で検索コマンドを利用可能
  • Obsidian Web Clipper

    • Web記事をMarkdown化し、生データコレクションへ即追加
    • 画像はローカル保存推奨(Obsidian設定で添付フォルダ固定・ホットキー設定可)
    • LLMが画像を直接参照可能になり、リンク切れリスク低減
    • LLMはテキスト→画像の順で読み込み、追加情報取得が可能
  • Obsidianのグラフビュー

    • Wikiの全体構造・ハブ・孤立ページの可視化
  • Marpプラグイン

    • Wiki内容から直接スライド生成が可能
  • Dataviewプラグイン

    • YAMLフロントマター付きページ(タグ、日付、ソース数等)を動的に集計・一覧表示
  • Git管理

    • WikiはMarkdownファイルのGitリポジトリ
    • バージョン履歴、ブランチ、共同編集が容易

なぜこの仕組みが有効か

  • 知識ベース維持の最大の課題は「記録・整合性管理の手間」
    • クロスリファレンス更新、要約の最新化、矛盾の記録、全体一貫性の維持が煩雑
    • 人間だけだとメンテナンス負荷が価値を上回り、Wikiが放棄されがち
  • LLMは飽きず、忘れず、複数ファイルを一括で自動修正可能
    • メンテナンスコストがほぼゼロになり、Wikiが常に最新・統合的に進化
  • 人間はソース選定・分析指示・問いかけ・意味付けに集中できる
    • LLMは記録・統合・参照・矛盾管理など“雑務”を全自動化
  • Vannevar BushのMemex構想(1945)にも通じる
    • 個人が能動的にキュレーションし、文書間の結びつきを重視する知識ストア
    • Bushが解決できなかった「誰がメンテナンスするか」をLLMが担う

注意事項

  • 本ドキュメントは 抽象的なパターン の提示が目的
    • ディレクトリ構造、スキーマ規約、ページフォーマット、ツール選定は各自の領域・好みに応じて最適化
    • 画像不要なら画像処理省略、小規模なら検索エンジン不要、スライド不要ならMarkdownのみ等、 必要な要素だけ選択
  • 最適な運用方法は LLMエージェントと共同で調整・進化
    • 本パターンをLLMと共有し、カスタマイズして自分用の仕組みを構築

参考リンク

Hackerたちの意見

これは、1960年のリックライダーの「インテリジェンス・アンプリフィケーション:人間とコンピュータの共生」にすごく似てるね。

「人間は目標を設定し、動機を提供するだろう。もちろん、少なくとも初期の段階では。彼らは仮説を立て、質問をし、メカニズムや手順、モデルを考え出す。1947年に誰それが興味のあるトピックで関連する仕事をしたことを思い出すだろうし、少なくとも第二次世界大戦の直後には、どのジャーナルに掲載されたかのアイデアも持っている。一般的に、彼らは大まかで間違いもあるが、重要な貢献をし、基準を定義し、評価者として機能し、機器の貢献を判断し、思考の一般的な方向性を導く。」 「さらに、人間は非常に低確率の状況が実際に発生したときにそれを扱うだろう。(現在の人間と機械のシステムでは、これは人間のオペレーターの最も重要な機能の一つだ。非常に低確率の選択肢の確率の合計は、無視するには大きすぎることが多い。)人間は、コンピュータが特定の状況に適用できるモードやルーチンを持っていないときに、問題解決やコンピュータプログラムのギャップを埋めるだろう。」 「情報処理機器は、仮説をテスト可能なモデルに変換し、そのモデルをデータに対してテストする(人間のオペレーターが大まかに指定し、コンピュータが承認のために提示したときに関連性を特定することができる)。機器は質問に答え、メカニズムやモデルをシミュレートし、手順を実行し、結果をオペレーターに表示する。データを変換し、グラフを描き(人間のオペレーターが指定した方法で「ケーキを切る」か、オペレーターが何を望んでいるか確信がない場合は複数の代替方法で)、補間、外挿、変換を行う。静的な方程式や論理的な文を動的なモデルに変換し、人間のオペレーターがその挙動を調べられるようにする。一般的に、意思決定の間のルーチン化可能な事務作業を実行する。」 https://www.organism.earth/library/document/man-computer-sym...

すごい。彼の洞察は魅力的だね。例えば(他にもたくさんあるけど)デスクサーフェスの表示と制御について:

「確かに、効果的な人間とコンピュータのインタラクションのためには、人間とコンピュータが同じ表示面でグラフや絵を描いたり、メモや方程式を書いたりする必要がある。人間は、ラフだけど迅速にグラフを描くことでコンピュータに関数を提示できるべきだ。コンピュータは、人間の書いたものを読み取るべきで、明確なブロック体の大文字で書かれている場合に限るかもしれない。そして、手描きの各記号の位置に、解釈された対応する文字を正確なフォントで即座に表示するべきだ。」

これはただのRAGだね。確かにベクターデータベースは使ってないけど、意味的なつながりのインデックスファイルを作ってるし、検索を助けるためにファイルシステム内に階層的な意味構造を構築してる。これがRAGだよ。ちなみに、AIを使ったナレッジベースを作ってるんだけど(そう、RAGを使ってる)、ウィキ合成や似たようなアイデアがあるから、見てみて。 https://github.com/kenforthewin/atomic

「ただのRAG」には反論したいな。確かにリトリーバル・ジェネレーションのループはRAGの形をしてるけど、面白いのは書き込みループなんだよ。LLMがウィキ自体を作成・維持していて、バックリンクを作ったり、自分の出力をファイリングしたりしてる。これはリトリーバルじゃなくて、知識の合成だよ。バニラRAGではコーパスは静的だけど、ここではそうじゃないし、リンティングパスも本当に違うことをしてる。矛盾を監査したり、欠損データを補完したり、つながりを提案したりしてる。これは検索エンジンがトップKのチャンクを返すのとは違って、むしろゼッテルカステンを維持するアシスタントに近いね。面白いプロジェクトだね、チェックしてみるよ。

「このアプリにはいくつかの疑問がある」とコメントを始めるべきだったね。ずっと前から、真のウィングマン・エグゼクティブアシスタント・セカンドブレインとして機能するLLM-WIKIのようなものを考えてたけど、OPは俺のADHDな考えを超えて深く掘り下げてる。これが実現するのを楽しみにしてるよ。

マルチモーダルKB+エージェンティックRAGが個人用KBに適した解決策だと思う。たくさんのオフィスドキュメントがあって、その中で複雑なトピックを掘り下げたいと想像してみて。 https://github.com/JetXu-LLM/DocMason これを使えば、pptやエクセルからすべての図やチャート情報を完全に取得できるし、ネイティブAIエージェント(例えばCodex)を活用してエージェンティックRAGを実行できるよ。

RAGには埋め込みが必要ってわけじゃないよ。リトリーバル部分は、セマンティックサーチを気にしなければgrepでもいいし。

これはただのRAGだよ。もっと言うと、これはGitHub CopilotみたいなLLMアシスタントがカスタムインストラクションファイル、つまりcopilot-instructions.mdを使う方法だよ。https://docs.github.com/en/copilot/how-tos/configure-custom-...

これがモデルの崩壊につながらない理由がわからない。 https://www.nature.com/articles/s41586-024-07566-y LLMを使ってドキュメントを書くのに時間を費やしたことがあるなら、自分で確認できるよ。累積は有効な情報をより冗長な情報に書き換えるだけだと思う。カーパシーがこれを理解していないのは心配だ。でも驚きはしないな。AIマキシマリストは「普通」でいるのが本当に難しいみたいだから。 ルールオブサム:特別なLLMのソースを広める必要があると感じたら、なぜそう思うのか自問自答してみて。

この記事はLLMのトレーニングについてではなく、個人用のウィキを書くためにLLMを使うことについてだよ。この記事は、ChatGPTやClaudeのような完全にトレーニングされたLLMがすでに存在していることを前提にしている。

追記:karpathyの兄弟コメントがフラグされて消えちゃった。彼が削除したのか、フラグの数で削除されたのかは不明。彼はClaudeからのちょっと皮肉な返答をコピペして、「Claudeが君にこう言ってるよ:」って言った後に、すごく長い段落のスラップを続けてた。——— うわ、karpathyにはすごく敬意を表してるし、彼からたくさん学んだ。でも、彼が君に返した兄弟コメントって一体何なの?Claudeが書いたスラップな反論をコピペしてるだけ…悲しいね。もしかしたら「何か良いことを言えないなら、言わない方がいい」っていう古い格言を「人間らしいことを言えないなら、言わない方がいい」に更新する必要があるかも。知ってる本当に賢い人たちが「機械の中の幽霊」を見て、徐々に人間らしさを失っていった。エズラ・クラインが最近「サンフランシスコで新しいものを見た」という素晴らしい記事を書いてたよ(読みたいならギフトリンク):https://www.nytimes.com/2026/03/29/opinion/ai-claude-chatgpt...

俺も同じ経験した。シンプルなclaude.mdにもついていけないし、全体のwikiなんて無理だよ…

Hacker Newsで議論の続きを見る