
シンプルに始め、時期尚早なインフラに抵抗する。次の場合はコンテキストレイヤーは不要の可能性が高い:
専用のコンテキストレイヤーが必要になるのは:
非構造化HTMLはマシンにとってノイズ。コンテキストレイヤーは手順、エンティティ、制約、ビジネスルールを構造化Know‑Howに変換する:明確なスキーマを持つJSONドキュメントとグラフ:
{
"entity": "PurchaseOrder",
"id": "PO-2026-1783",
"vendor": {"name": "Acme", "id": "V-882"},
"line_items": [
{"sku": "X12", "qty": 5, "unit_price": 49.00}
],
"approval_policy": {
"threshold": 10000,
"requires_dual_signoff": true,
"exceptions": ["emergency"]
},
"provenance": {"source": "ERP", "version": "v14.2", "ingested_at": "2026-02-06"}
}
このスキーマ化されたコンテキストにより、エージェントはもろいテキストスパンに依存せず、マシン可読なロジックと監査可能性のための出所を得る。
合わせて決定論的検索を可能にする:クラスタやグラフ近傍でルーティングし、最小・関連コンテキストを stitch。Weaviate best practices for hybrid search参照。

エージェントは生のノイズだらけのダンプを「考え」ようとすると失敗する。ランタイムは次のようであるべき:
# ハイブリッド検索+ステッチの疑似コード
plan = planner.make_plan(user_query)
results = []
for hop in plan.hops:
dense = dense_index.search(hop.query, k=10)
sparse = sparse_index.search(hop.query, k=10, filter=plan.filters)
graph_ctx = graph.walk(hop.entities, depth=2)
gated = gate.by_provenance(dense + sparse + graph_ctx)
stitched = stitch.compact(gated, budget_tokens=1200)
results.append(stitched)
final = synthesize(results, tools=plan.tools)
return final

この設計で3つの検索パターンを比較できる。小さく再現可能に保つ。
前提:5万ドキュメント(ポリシー、チケット、製品仕様);75の評価クエリ、うち40にground truth;同一LLM;ハードウェア同等;該当箇所でreranker。p50/p90中央値レイテンシとEM/F1または文書化LLMジャッジで品質を報告。
| パターン | 検索スタック | 期待特性 |
|---|---|---|
| ナイーブRAG | Denseのみ | 高速、グローバル一貫性は低め;横断ドキュメントで苦戦 |
| チューニングRAG | Dense + sparse + reranker | 中程度レイテンシ、ID・ポリシー用語で精度向上 |
| コンテキストレイヤー | Hybrid + graph + stitch + summaries | p50レイテンシはやや高めだがp90は絞れる;より安定したグローバル回答 |
解釈:チューニングRAGは多くの簡単な見逃しを修正;コンテキストレイヤーは横断ドキュメント・マルチステップタスクで光り、ルーティングとキャッシュでテイルレイテンシがより予測可能になる。
購入エージェントを構築し、ベンダー見積もりを集めながら承認ポリシーを適用する想定。ERPエクスポート、契約PDF、Slack承認、メール要約をインジェスト。インジェストパイプラインは共通スキーマ(PurchaseOrder、Vendor、Policy、Exception)にマップ。エンティティリンクでエンリッチし、各PurchaseOrderがVendorと該当Policyノードを把握。次にdense索引で意味的リコール、sparse索引でIDと法的用語、graph索引でPolicy→Exception→Approver経路をナビゲート。
このセットアップで、オーケストレーションループは「PO‑2026‑1783を本日承認可能か?」のクエリを:PO IDのsparseルックアップ、そのPOからPolicyと例外へのグラフウォーク、直近承認者ノートのdense検索でルート。ステッチャーは1.2Kトークンバンドルに圧縮し、エージェントは承認決定と出所リンク付きの簡潔な引用回答を生成。
Puppyoneのようなプラットフォームは、知識を構造化Know‑How(JSON/グラフ)として格納し、テキストと構造のハイブリッド索引をサポートするため役立つ。その組み合わせで、もろいテキストスクレイピングに依存せず、決定論的検索パターンと監査可能なトレースが可能になる。
コンテキストをコードのように扱う。変更ごとに出所、レビュー、テストを。バージョン管理されたスキーマ、アクセスポリシー、評価スイートを維持。ロールアウト前に検索忠実度チェックとタスクレベルテストを実行;説明可能トレースをキャプチャしロールバックを準備。エージェントが規制・機密データに触れる場合、NIST AI Risk Management FrameworkのGOVERNに合わせる。相互運用:Model Context Protocol。
問題がローカルで低リスクなら、チューニングRAGから始める。横断ドキュメントの質問、ガバナンスニーズ、変動コーパスが見えたら、1ワークフローに焦点を当てたコンテキストレイヤーパイロットを計画。まず構造化Know‑Howを構築;スキーマが安定すればハイブリッド索引とオーケストレーションは大幅に簡素化。評価を厳格かつ人間的に:実タスクをテスト、トレースをログ、改善をビジネスSLOに結びつける。
A: いいえ。まずdense + sparse;横断ドキュメント推論やグローバル要約のギャップが出たらグラフを追加。
A: スキーマに紐づく意味単位(エンティティ、手順)でチャンク。固定トークン数ではなく。リランカーと要約に残りを任せる。
A: できるが、代償を払う。評価とロールバックを可能にするため、初日から軽い出所とアクセス制御を追加。