mcpField
K
Knowledge Base Manager

Knowledge Base Manager

github.com/daffy0208データ・データベース38438 回インストール44 週間前に更新
リポジトリ

Knowledge Base Manager について

Knowledge Base Managerは、AIシステムやチーム向けのナレッジベースを設計・構築・維持するためのスキルです。ドキュメント型、グラフ型、ハイブリッド型を扱い、キュレーション、出典管理、品質検証、バージョン管理を案内します。

主な機能

  1. 01ドキュメント型・グラフ型・ハイブリッド型の比較
  2. 02情報源の監査と構成の設計
  3. 03情報の整理と出典の追跡
  4. 04ストレージと検索方式の選定
  5. 05品質・矛盾・古い情報の確認
  6. 06バージョン管理と継続保守の計画

活用シーン

  1. 01AIシステムの検証可能な根拠の構築
  2. 02複数の情報源の統合と重複・矛盾の解消
  3. 03知識の変更追跡とロールバック

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/daffy0208/ai-dev-standards --skill knowledge-base-manager

インストール後、Claude Code で/knowledge-base-managerを入力して読み込まれたか確認します。

同梱ファイルREADME.mdmanifest.yaml

詳細

ナレッジベースマネージャー

AI システムと人間が利用する、高品質なナレッジベースを構築、維持します。

基本原則

ナレッジベース = 構造化された情報 + 高品質なキュレーション + アクセシビリティ

ナレッジベースは単なるデータのダンプではありません。質問に答え、推論を可能にするために設計された、キュレーション、検証、バージョン管理済みの情報です。


ナレッジベースを使用する場面

ナレッジベースを使用する場合:
  • ✅ 事実に関する質問に一貫して答える必要がある
  • ✅ 情報が頻繁に変わり、バージョン管理が必要である
  • ✅ 複数の情報源を統合し、照合する必要がある
  • ✅ 出典情報と引用の追跡が重要である
  • ✅ 根拠があり、検証可能な情報を必要とする AI システムを構築する
  • ✅ 組織の知識を保存し、検索可能にする必要がある
  • ✅ 相互につながる概念を含む複雑な分野を扱う
ナレッジベースを使用しない場合:
  • ❌ 静的なドキュメントで十分である(ドキュメントと検索を使用)
  • ❌ 維持・更新する人がいない(知識の劣化が避けられません)
  • ❌ シンプルな FAQ ですべての質問に対応できる(50 項目未満)
  • ❌ 情報が変化しない(静的サイトのほうが高速で低コスト)
  • ❌ チームにキュレーションのリソースがない

ナレッジベースの種類:判断の枠組み

1. ドキュメントベースのナレッジベース(RAG)

概要: 意味検索のために分割・埋め込みされたドキュメントのコレクション

最適な用途:

  • 技術ドキュメント
  • サポート記事、FAQ
  • ポリシードキュメント
  • 研究論文
  • ブログコンテンツ
  • ユーザーマニュアル

長所:

  • 新しいドキュメントを簡単に追加できる
  • 完全な文脈を保持できる
  • テキスト中心のコンテンツに適している

短所:

  • 関係性に関する質問(「誰がどこで働いているか?」)への問い合わせが難しい
  • ドキュメント間で情報が重複する
  • 事実の一貫性を保つのが難しい

使用するもの: rag-implementer スキル + vector-database-mcp


2. エンティティベースのナレッジベース(ナレッジグラフ)

概要: 関係性でつながったエンティティ(人、場所、物)のネットワーク

最適な用途:

  • 組織図
  • 関係性を含む製品カタログ
  • ソーシャルネットワーク
  • レコメンデーションシステム
  • 不正検知
  • サプライチェーンの追跡

長所:

  • 「X と Y はどのような関係か?」という問い合わせに最適
  • 事実の一貫性が保たれる(信頼できる唯一の情報源)
  • 強力な探索が可能(「友達の友達」)

短所:

  • 事前のモデリングが必要(オントロジー設計)
  • 非構造化情報の追加が難しい
  • グラフクエリの習得に時間がかかる

使用するもの: knowledge-graph-builder スキル + graph-database-mcp


3. ハイブリッドナレッジベース(RAG + グラフ)

概要: 非構造化知識にはドキュメントを、構造化されたエンティティや関係性にはグラフを使用します

最適な用途:

  • エンタープライズのナレッジマネジメント
  • 引用や関係性を含む研究
  • 医療システム(ドキュメント + 患者・薬剤間の関係性)
  • 法律システム(判例 + 先例 + エンティティ)
  • E コマース(製品 + 仕様 + 関係性)

長所:

  • 両方の方式の長所を活用できる
  • さまざまな種類の知識に柔軟に対応できる
  • 豊富なクエリ機能を備える

短所:

  • 構築と維持が最も複雑
  • RAG とグラフの両方に専門知識が必要
  • インフラコストが高い

使用するもの: rag-implementer と knowledge-graph-builder の両方のスキル


判断ツリー:どの種類のナレッジベースを選ぶか?

What kind of knowledge do you have?

├─ Mostly unstructured text (docs, articles, content)?
│  └─ Document-Based KB (RAG)
│     Use: rag-implementer skill
│
├─ Mostly structured entities with relationships?
│  └─ Entity-Based KB (Graph)
│     Use: knowledge-graph-builder skill
│
└─ Mix of both?
   └─ Hybrid KB (RAG + Graph)
      Use: Both skills + This skill for integration

ナレッジベース実装の 6 フェーズ

フェーズ 1:ナレッジの監査とアーキテクチャ

目標:どのようなナレッジが存在し、どのように構成するかを把握します

アクション:

  1. 既存のナレッジソースを一覧化する

    • 内部:データベース、ドキュメント、ウィキ、Slack、メール
    • 外部:公開データ、API、サードパーティのソース
    • 暗黙知:専門家へのインタビュー、録音された会話
  2. ナレッジの種類を分類する

    • 事実:検証可能な事実(「製品 X の価格は 50 ドルです」)
    • 手順:方法に関するナレッジ(「デプロイ方法」)
    • 概念:定義と説明
    • 関係:エンティティ間のつながり
  3. ナレッジベースのアーキテクチャを選択する

    • ドキュメントベース?エンティティベース?ハイブリッド?
    • 決定:上記のフレームワークを使用します
  4. ナレッジスキーマを定義する

    • ドキュメントの場合:メタデータフィールド(ソース、日付、作成者、カテゴリ)
    • エンティティの場合:オントロジー(エンティティの種類、関係の種類、プロパティ)

検証:

  • すべてのナレッジソースを一覧化し、優先順位を設定済み
  • ナレッジベースのアーキテクチャを選択し、その根拠を明確化済み
  • スキーマを定義し、ユーザーとともに検証済み
  • 成功指標を設定済み

フェーズ 2:ナレッジのキュレーションと取り込み

目標:生の情報を高品質なナレッジに変換します

アクション:

  1. ソースからナレッジを抽出する

    • 自動:スクレイピング、API による取り込み、ファイルの解析
    • 手動:専門家の知見、アノテーション、検証
  2. クリーンアップして正規化する

    • 重複を削除する
    • 形式を標準化する
    • 不整合を修正する
    • メタデータを付与する
  3. ナレッジを構造化する

    • ドキュメントの場合:意味上の境界に沿って適切に分割する
    • エンティティの場合:エンティティ、関係、プロパティを抽出する
  4. 来歴情報を追加する

    • ソース URL または参照情報
    • 最終更新日時
    • 作成者/貢献者
    • 信頼度スコア(該当する場合)

キュレーションのベストプラクティス:

  • 単一の信頼できる情報源:各質問に対して正規の回答を 1 つ用意します
  • 重複排除:類似するナレッジ項目を統合します
  • 競合の解決:ソース間で意見が異なる場合は、優先順位のルールを定めます
  • 豊富なメタデータ:メタデータが多いほど、フィルタリングと検索の精度が向上します

検証:

  • ナレッジを抽出し、構造化済み
  • 品質指標がしきい値を上回っている(精度 >95%)
  • すべての項目の来歴情報を追跡済み
  • サンプルクエリで関連性の高い結果を取得可能

フェーズ 3:ストレージと検索のセットアップ

目標:ナレッジにアクセスするための技術インフラを実装します

アーキテクチャパターン:

ドキュメントベースのナレッジベースの場合:

// Vector database for semantic search
interface DocumentKB {
  store: 'Pinecone' | 'Weaviate' | 'pgvector'
  chunks: {
    content: string
    embedding: number[]
    metadata: {
      source: string
      title: string
      updated_at: string
      category: string
    }
  }[]
}

エンティティベースのナレッジベースの場合:

// Graph database for relationship queries
interface EntityKB {
  store: 'Neo4j' | 'ArangoDB'
  nodes: {
    id: string
    type: 'Person' | 'Organization' | 'Product' | 'Concept'
    properties: Record<string, any>
  }[]
  relationships: {
    from: string
    to: string
    type: string
    properties: Record<string, any>
  }[]
}

ハイブリッド型ナレッジベースの場合:

// Both vector DB + graph DB
interface HybridKB {
  vectorDB: DocumentKB
  graphDB: EntityKB
  linker: {
    // Links documents to entities mentioned in them
    linkDocumentToEntities(docId: string): string[]
    // Links entities to documents that mention them
    linkEntityToDocuments(entityId: string): string[]
  }
}

アクション:

  1. データベースを選択する

    • ドキュメント:Pinecone、Weaviate、pgvector
    • エンティティ:Neo4j、ArangoDB
    • ハイブリッド:両方と、それらをつなぐレイヤー
  2. 検索/クエリレイヤーを実装する

    • ベクトル類似性検索(ドキュメント向け)
    • グラフ探索(エンティティ向け)
    • ハイブリッドクエリ(両方を組み合わせる)
  3. キャッシュと最適化を追加する

    • 頻繁に実行されるクエリをキャッシュする
    • 一般的なアクセスパターンに合わせて最適化する

検証:

  • データベースをデプロイし、アクセス可能
  • 検索/クエリ機能が動作
  • パフォーマンスが要件を満たしている(ほとんどのクエリで <100ms)

フェーズ 4:品質管理と検証

目標:ナレッジベースの正確性と信頼性を確保します

品質指標:

  1. 正確性:テスト用の質問に対する正答率
  2. 網羅性:回答可能なユーザーの質問の割合
  3. 鮮度:ナレッジの平均経過期間
  4. 一貫性:矛盾がある情報の割合
  5. 情報源の品質:権威ある情報源に基づく情報の割合

検証戦略:

1. テスト用質問セット 正解が分かっているテスト用の質問を 100 件以上作成します:

interface TestQuestion {
  question: string
  expected_answer: string
  category: string
  difficulty: 'easy' | 'medium' | 'hard'
}

2. 人によるレビュー

  • ナレッジ項目を無作為に抽出して確認します
  • 分野の専門家による検証を行います
  • ユーザーフィードバックのループを作ります

3. 自動チェック

  • 重複の検出:ほぼ同一の項目を見つけます
  • 矛盾の検出:矛盾する事実を見つけます
  • 陳腐化の検出:古くなった情報にフラグを付けます
  • 引用の検証:情報源が現在も存在することを確認します

4. 継続的なモニタリング

interface KBHealthMetrics {
  accuracy_score: number // 0-100
  coverage_score: number // % questions answered
  freshness_score: number // avg days since update
  consistency_score: number // % no conflicts
  user_satisfaction: number // feedback rating
}

アクション:

  1. テスト用質問の検証を実行します(目標:正確性 >90%)
  2. 人によるレビューを実施します(項目の 10% を抽出)
  3. 検出された問題(重複、矛盾、陳腐化)を修正します
  4. モニタリングダッシュボードを構築します

検証:

  • テスト用質問の正確性が 90% 超
  • ユーザーの質問の 80% 超を網羅
  • 矛盾する情報が 5% 未満
  • モニタリングダッシュボードが稼働中

フェーズ 5:バージョン管理と進化

目標:時間の経過に伴うナレッジの変更を追跡し、ロールバックを可能にします

バージョン管理が重要な理由:

  • ナレッジは変化します(事実の更新、ポリシーの変更など)
  • 監査証跡が必要です(誰が、いつ、何を変更したか)
  • ロールバック機能が必要です(問題のある更新を取り消すため)
  • 過去の問い合わせに対応できます(「2023 年時点での X に関するポリシーは?」)

バージョン管理戦略:

1. スナップショットによるバージョン管理

interface KnowledgeEntry {
  id: string
  content: string
  version: number
  created_at: string
  updated_at: string
  updated_by: string
  changelog: string
  previous_version?: string // ID of prior version
}

2. イベントソーシング

interface KnowledgeEvent {
  event_id: string
  entity_id: string
  event_type: 'created' | 'updated' | 'deleted'
  timestamp: string
  changes: {
    field: string
    old_value: any
    new_value: any
  }[]
  author: string
}

3. Git 形式のバージョン管理

  • ナレッジをコードのように扱います
  • コミットベースで変更を管理します
  • 実験的なナレッジ用にブランチを作成します
  • 検証後にマージします

アクション:

  1. バージョン追跡を実装します
  2. すべての更新に変更履歴を追加します
  3. ロールバックの仕組みを作成します
  4. バージョン比較ツールを構築します

検証:

  • すべての変更がバージョン付きで追跡されている
  • ロールバックのテストが完了し、正常に動作する
  • 過去の問い合わせに対応できる
  • 監査証跡が完備されている

フェーズ 6:メンテナンスとガバナンス

目標:ナレッジベースを長期にわたって健全に保ちます

メンテナンス作業:

毎日:

  • エラーや障害を監視します
  • ユーザーフィードバックを確認します
  • 緊急の修正に対応します

毎週:

  • 新しいコンテンツの投稿を確認します
  • 時間に依存するナレッジを更新します
  • 自動品質チェックを実行します

毎月:

  • ナレッジの鮮度を監査します
  • 矛盾を確認して解決します
  • 利用パターンを分析します
  • 古くなったコンテンツを更新します

四半期ごと:

  • 包括的な品質監査
  • スキーマ/オントロジーのレビュー
  • パフォーマンスの最適化
  • ユーザー満足度調査

ガバナンスフレームワーク:

1. 役割と責任

  • ナレッジオーナー:コンテンツを担当する分野の専門家
  • キュレーター:変更を確認して承認します
  • 投稿者:新しいナレッジを提出します
  • 利用者:ナレッジを利用し、フィードバックを提供します

2. 変更プロセス

Submit → Review → Approve → Publish → Monitor

3. 品質基準

  • 情報源の品質に関する最低要件
  • 引用に関する要件
  • 更新頻度に関する要件
  • 矛盾の解決プロセス

アクション:

  1. メンテナンススケジュールを策定します
  2. 役割と責任を割り当てます
  3. ガバナンスに関するドキュメントを作成します
  4. プロセスについてチームをトレーニングします

検証:

  • メンテナンススケジュールが設定されている
  • ガバナンスが文書化され、周知されている
  • チームがプロセスについてトレーニングを受けている
  • 品質が向上傾向にある

ナレッジベースのアンチパターン

❌ アンチパターン 1:キュレーションなしのデータ投入

問題:品質によるフィルタリングを行わず、すべてを取り込むこと

影響:シグナル対ノイズ比が低下し、検索結果の品質が悪化し、ユーザーの不満につながります

解決策:取り込む前にキュレーションします。量より質を重視します


❌ アンチパターン 2:バージョン管理がない

問題:ナレッジが変更されても、履歴が追跡されないこと

影響:変更を監査できず、誤りをロールバックできず、説明責任も果たせません

解決策:フェーズ 5 からバージョン管理を実装します


❌ アンチパターン 3:古いナレッジ

問題:ナレッジベースが古くなっていても、誰も気づきません。

影響:AI システムが古い情報を使って幻覚を起こし、ユーザーに誤った回答を返します。

解決策:鮮度のモニタリングと定期的な更新


❌ アンチパターン 4:情報の重複

問題:同じ事実が複数の場所にあり、内容に食い違いが生じます。

影響:回答が矛盾し、ユーザーが混乱します。

解決策:重複の排除と信頼できる唯一の情報源の確立


❌ アンチパターン 5:出典がない

問題:出典の引用がないナレッジ

影響:正確性を検証できず、エラーの原因を追跡できません。

解決策:出典、タイムスタンプ、作成者を必ず記録します。


他のスキルとの連携

rag-implementer との連携
  • ハイブリッド KB のドキュメントベース部分に使用します
  • RAG の実装フェーズに従います
  • ベクトル検索を KB クエリと統合します
knowledge-graph-builder との連携
  • ハイブリッド KB のエンティティベース部分に使用します
  • グラフ設計パターンに従います
  • グラフの走査を KB クエリと統合します
data-engineer との連携
  • ETL パイプライン(ナレッジの抽出、変換、読み込み)に使用します
  • データ品質のモニタリングに使用します
  • パフォーマンスの最適化に使用します
quality-auditor との連携
  • 品質チェックの自動化に使用します
  • テストと検証に使用します
  • 継続的なモニタリングに使用します
technical-writer との連携
  • ナレッジのドキュメント化に使用します
  • KB の使用方法に関するユーザーガイドに使用します
  • ガバナンスに関するドキュメントに使用します

ツールとテクノロジー

ドキュメントベース KB スタック
  • ベクトル DB:Pinecone、Weaviate、pgvector
  • 埋め込み:OpenAI、Cohere、カスタム
  • 検索:セマンティック検索とキーワード検索のハイブリッド
エンティティベース KB スタック
  • グラフ DB:Neo4j、ArangoDB
  • クエリ:Cypher、AQL
  • 可視化:Neo4j Bloom、Gephi
キュレーションツール
  • 重複排除:カスタムアルゴリズム、ファジーマッチング
  • 競合検出:ルールベース、ML ベース
  • 検証:テスト質問セット、人によるレビュー
モニタリング
  • メトリクス:カスタムダッシュボード(Grafana)
  • ロギング:クエリ/更新の構造化ログ
  • アラート:鮮度、正確性、エラー率のアラート

成功指標

ナレッジの品質
  • 正確性:テスト質問で 90% 超
  • 網羅率:ユーザーの質問の 80% 超に回答
  • 鮮度:平均経過日数 30 日未満
  • 一貫性:矛盾する情報が 5% 未満
ユーザー満足度
  • 関連性:クエリ結果の 85% 超が関連性ありと評価
  • 有用性:ユーザーの 80% 超が KB を有用と評価
  • 速度:クエリ時間の中央値が 100 ms 未満
運用の健全性
  • 稼働率:99.9% 超
  • 更新頻度:最低でも週 1 回
  • チームの参加状況:継続的な貢献

よくある落とし穴と解決策

落とし穴 1:「作れば使ってもらえる」

問題:ユーザーによる検証がなく、KB がニーズを満たしていません。

解決策:ユーザー調査から始め、継続的に検証します。

落とし穴 2:完璧主義

問題:KB が「完璧」になるまで公開を待ちます。

解決策:網羅率 80% で公開し、利用状況に基づいて改善を繰り返します。

落とし穴 3:過剰なエンジニアリング

問題:シンプルなドキュメントで十分なのに、複雑なハイブリッドシステムを構築します。

解決策:シンプルに始め、必要になった場合にのみ複雑さを加えます。

落とし穴 4:メンテナンスの軽視

問題:一度構築した後、更新しません。

解決策:初日からメンテナンスのスケジュールを確立します。


クイックスタートチェックリスト

開始前:

  • このスキル全体を読む
  • ドキュメント KB を使用する場合は rag-implementer を確認する
  • エンティティ KB を使用する場合は knowledge-graph-builder を確認する
  • ユースケースと成功指標を明確にする

フェーズ 1 - アーキテクチャ(第 1 週):

  • ナレッジソースを棚卸しする
  • KB の種類(ドキュメント/エンティティ/ハイブリッド)を選ぶ
  • スキーマ/オントロジーを定義する
  • インフラストラクチャをセットアップする

フェーズ 2 - 初期構築(第 2~3 週):

  • 初期ナレッジを取り込み、キュレーションする
  • 検索/クエリ機能を実装する
  • テスト質問セットを作成する
  • ユーザーとともに検証する

フェーズ 3 - 改善(継続):

  • 利用状況に基づいてナレッジを追加する
  • 品質指標をモニタリングする
  • 発見した問題を修正する
  • メンテナンスの頻度を確立する

関連リソース

  • スキル: rag-implementer、knowledge-graph-builder、data-engineer、quality-auditor
  • MCP: vector-database-mcp、graph-database-mcp、knowledge-base-mcp、semantic-search-mcp
  • パターン: STANDARDS/architecture-patterns/rag-pattern.md、knowledge-base-pattern.md(近日公開)
  • インテグレーション: INTEGRATIONS/pinecone/、INTEGRATIONS/graph-databases/neo4j/

さらに詳しく


覚えておいてください: ナレッジベースの品質は、キュレーションの質によって決まります。初日から品質に投資し、メンテナンスのプロセスを確立し、ユーザーからのフィードバックに基づいて改善を繰り返してください。目標は、すべての知識を網羅することではありません。_適切な_知識を整理し、簡単にアクセスできるようにすることです。

コメント