AIアンチパターン集
記事状態: 公開 · 最終確認: 未確認
要点
AIアンチパターンは、特定技術を使うこと自体ではなく、有効な技術を責務や適用条件を無視して万能化するところから生じる。長いコンテキスト、RAG、Agent、会話記憶情報はいずれも有用だが、正本、権限、状態、検証、復旧まで一つの層へ背負わせると、性能・安全性・監査性・費用のどこかで破綻しやすい。技術名ではなく、責務分離と失敗包絡で診断する。
現在の判断
AIアンチパターンは、特定技術を使うこと自体ではなく、有効な技術を責務や適用条件を無視して万能化するところから生じる。長いコンテキスト、RAG、Agent、会話記憶情報はいずれも有用だが、正本、権限、状態、検証、復旧まで一つの層へ背負わせると、性能・安全性・監査性・費用のどこかで破綻しやすい。技術名ではなく、責務分離と失敗包絡で診断する。
どこまで当てはまるか
AIアンチパターン集
詳しく理解する
診断カードのスキーマ
以下は PROPOSAL。各症例を「兆候 / なぜ魅力的か / 破綻条件 / 観測可能な症状 / 反証 / 代替pattern / TEST_PROFILE」の定型cardとして扱う。禁止リストではない。
AP-01 巨大プロンプト一本
兆候: policy、knowledge、状態、処理の流れ、例外処理を一つのpromptへ集中する。
破綻条件・症状: 変更差分、出典・来歴、testabilityが弱くなり、長文化が情報利用精度を保証しない。長文脈・入力情報では関連情報の位置による性能差が研究で報告されているが、特定task/モデル群の結果を全現行モデルへ外挿しない。
反証: 全文比較、法令・仕様横断、引用確認など入力全体が必要なtaskではlong 文脈・入力情報が合理的な場合がある。
代替pattern: システム policy、検索・取得、外部 状態、ツール データ形式の定義、評価へ責務を分離する。
AP-02 全部RAG
兆候: authoritative record、transactional 状態、権限 decision、決まった規則に従う lookupまでベクトル 検索・取得へ寄せる。
破綻条件・症状: RAG/ベクトル層固有の弱点、インデックスの鮮度、ACL(アクセス制御リスト)の伝播、検索範囲、出典・来歴が、正本・権限・トランザクションの責任と混同される。
反証: RAGは大量の外部knowledgeを必要時取得する有力patternであり、RAG自体を否定しない。
代替pattern: 出典 システムを正本に保ち、RAGを派生索引/grounding layerとして扱う。
AP-03 全部Agent
兆候: 決定論的な一連の処理や単純な変換までも、自律的な計画/ツールの実行へと寄せようとする。
破綻条件・症状: プロンプトインジェクションの攻撃面、過剰なエージェンシー、権限、費用、非決定性、および評価対象領域の拡大。エージェント化は、能力の追加と同時に影響範囲(blast radius)を拡大させる可能性がある。
反証: 曖昧なmulti-step task、動的ツール selection、環境feedbackが必要なtaskではAgentが価値を持つ。
代替pattern: workflow-firstとし、必要な曖昧判断部分だけagent化する。必要性、権限境界、評価を明示する。
AP-04 AIに正本を持たせる
兆候: conversation 記憶情報、文脈・入力情報、モデル内部状態を正式な 状態とみなす。
破綻条件・症状: versioning、同時実行数、ACL、durability、以前の状態へ戻す操作、監査の保証が不足する。
反証: 外部 状態にも同期、データ形式の定義 migration、ACL、backup等の運用負荷がある。外部化だけで自動的に安全になるわけではない。
代替pattern: 独立したversioned source-of-truthを持ち、AIはread / derive / propose / update-contract経由で扱う。長期taskでは外部 成果物をcontinuity anchorとして利用できる。
AP-05 全履歴投入
兆候: token windowに収まる限り、履歴、ツール定義、中間結果を全投入する。
破綻条件・症状: long-contextの位置依存、token/latency増加、tool-definition overload、中間ツール結果の肥大化、文脈・入力情報 limit超過、転記ミス等を招き得る。
反証: 文脈・入力情報 初期化、compaction、summaryにも情報損失と追加costがあり、taskごとの評価が必要。
代替pattern: bounded 検索・取得、structured 引継ぎ、外部 状態、必要ツールの遅延公開、summary/compaction/初期化をtask特性で使い分ける。
根拠 / 出典・来歴
- Liu et al., Lost in the Middle: How Language Models Use Long Contexts — multi-document QA / key-value 検索・取得におけるlong-context positional degradationの研究根拠。全現在の モデルへの普遍保証にはしない。
- Anthropic, Code 実行 with MCP: Building more efficient agents — ツール definitionsとintermediate resultsによる文脈・入力情報/token負荷のofficial engineering report。
PRODUCT_VOLATILE。 - Anthropic, Harness design for long-running アプリケーション development — long-running agentの文脈・入力情報 saturation、structured 引継ぎ/文脈・入力情報 初期化のengineering report。初期化のoverheadも保持する。
PRODUCT_VOLATILE。 - OWASP GenAI Security Project, LLM Top 10 2025 — Prompt Injection / Excessive Agency / ベクトル and 埋め込み Weaknesses / Unbounded Consumptionのsecurity taxonomy。特定提供元/組織の利用環境の脆弱性存在を直接証明するものではない。
- OpenAI, Designing AI agents to resist prompt injection — ブラウジング、検索、外部アクションを持つエージェントの攻撃面に関する公式なセキュリティエンジニアリングの証拠。
PRODUCT_VOLATILE。 - Anthropic prompting guidance — long-horizon taskで外部 ファイルへ状態を保存しfresh 文脈・入力情報からcontinuityを再構成する現在の 実装 guidance。
PRODUCT_VOLATILE。
利用できる条件
Long-context: モデル/context-window、mode、token budget、ツール result size、提供元 compaction behavior。
RAG: 出典 access、索引 情報の鮮度、ACL propagation、埋め込み/検索結果の再評価器/バージョン、検索・取得 適用範囲。
Agent: ツール 利用可能性、主体の識別/権限、承認 policy、sandbox、region/契約プラン、外部 service limits。
外部状態: ソースシステムのAPI、スキーマ/バージョン、書き込み権限、並行性/トランザクションのセマンティクス。
セキュリティとプライバシー
Security: excessive agency、prompt injection、RAG/ベクトル weaknessを各症例へ接続し、least privilegeとuntrusted-content 適用限界を必須欄とする。
Privacy: 全履歴投入は必要以上のdataをモデル/提供元/ツールへ渡し得るため、data minimizationを適用する。
監査: AI内部の状態を正式なもの(正本)とせず、バージョン管理された外部の成果物とツール/アクションのログを保持する。
Cost: 文脈・入力情報/ツール定義/中間結果の無制限投入とagent loopはtoken、latency、再試行 costを増やし得る。
Operability: 以前の状態へ戻す操作、重複実行を防ぐ性質、structured 引継ぎ、情報の鮮度、失敗 復旧をcardごとに記録する。
確認・評価方法
TEST_PROFILE は未実施。以下を同一業務fixtureで比較する。
- 全履歴投入 vs bounded 検索・取得 + 状態 引継ぎ
- 決まった規則に従う 処理の流れ vs agent
- RAG-only vs source-system lookup + RAG
精度やタスクの完了度だけでなく、トークン数、レイテンシ、ツール呼び出し、権限違反、引用・出典の正確性、復旧コストを計測する。未実施のため、結果や閾値は推測しない。
Cross-reference 適用限界
AP-01〜05はEA-020 architecture patternと対にし、anti-patternから代替patternへ接続する。RAG症例はEA-014/015、Agent症例はEA-006/020、TEST_PROFILEはEA-011、AI正本化症例は状態/source-of-truth原則へ接続する。ただし本packetで各関連EAの内容を再編集・再解釈しない。
失敗条件・反証
長いprompt/long 文脈・入力情報自体をアンチパターンとしない。
RAG自体を否定しない。
Agent自体を否定しない。
外部 状態を自動的に安全とはみなさない。
コンテキストのリセット、圧縮、要約を、情報の損失がないものとはみなさない。
研究用ベンチマークの結果を、現在のプロバイダーや組織の利用環境における保証へと外挿してはならない。
OWASP taxonomyを特定提供元/組織の利用環境の脆弱性存在の証明にしない。
提供元 記憶情報機能の存在とcanonical-record suitabilityを分離する。
PRODUCT_VOLATILEなモデル、文脈・入力情報、ツール、承認、compaction仕様はpublication時に現行性を再確認する。OPEN_UNKNOWN:現在の frontier modelsでのAP-01/AP-05閾値
提供元ごとの自動compaction/文脈・入力情報 初期化実装差
RAG ACL/情報の鮮度の製品別実挙動
agent 承認 UIがindirect prompt injectionに対して持つ実効防御
これらは推測で閉じない。
実務での使い方
Long-context: モデル/context-window、mode、token budget、ツール result size、提供元 compaction behavior。
RAG: 出典 access、索引 情報の鮮度、ACL propagation、埋め込み/検索結果の再評価器/バージョン、検索・取得 適用範囲。
Agent: ツール 利用可能性、主体の識別/権限、承認 policy、sandbox、region/契約プラン、外部 service limits。
外部状態: ソースシステムのAPI、スキーマ/バージョン、書き込み権限、並行性/トランザクションのセマンティクス。
Security: excessive agency、prompt injection、RAG/ベクトル weaknessを各症例へ接続し、least privilegeとuntrusted-content 適用限界を必須欄とする。
Privacy: 全履歴投入は必要以上のdataをモデル/提供元/ツールへ渡し得るため、data minimizationを適用する。
監査: AI内部の状態を正式なもの(正本)とせず、バージョン管理された外部の成果物とツール/アクションのログを保持する。
Cost: 文脈・入力情報/ツール定義/中間結果の無制限投入とagent loopはtoken、latency、再試行 costを増やし得る。
Operability: 以前の状態へ戻す操作、重複実行を防ぐ性質、structured 引継ぎ、情報の鮮度、失敗 復旧をcardごとに記録する。
まだ確認できていないこと
- EA-021-UNKNOWN-01
- 長いprompt/long 文脈・入力情報自体をアンチパターンとしない。
- RAG自体を否定しない。
- Agent自体を否定しない。
- 外部 状態を自動的に安全とはみなさない。
- コンテキストのリセット、圧縮、要約を、情報の損失がないものとはみなさない。
- 研究用ベンチマークの結果を、現在のプロバイダーや組織の利用環境における保証へと外挿してはならない。
- OWASP taxonomyを特定提供元/組織の利用環境の脆弱性存在の証明にしない。
- 提供元 記憶情報機能の存在とcanonical-record suitabilityを分離する。
PRODUCT_VOLATILEなモデル、文脈・入力情報、ツール、承認、compaction仕様はpublication時に現行性を再確認する。
OPEN_UNKNOWN: - 現在の frontier modelsでのAP-01/AP-05閾値 - 提供元ごとの自動compaction/文脈・入力情報 初期化実装差 - RAG ACL/情報の鮮度の製品別実挙動 - agent 承認 UIがindirect prompt injectionに対して持つ実効防御これらは推測で閉じない。
- EA-021-UNKNOWN-CURRENTNESS
外部根拠の再確認日が正式な本文・公開管理情報で確定していないため、現行性は未確認のまま保持する。確認日を推測して補わない。
根拠資料
この記事には、直接開ける外部出典が登録されていません。出典IDや検証情報は末尾で確認できます。
出典ID・検証情報・機械可読データ
根拠の種類と情報の鮮度は、ラベルとアイコンで確認できます。
- 記事ID
- EA-021
- 最終確認日
- —
- 提供元・モデル・プラン・利用環境
- —
- 対象地域
- —
元資料の全文と収録照合記録
Public claim
AIアンチパターンは、特定技術を使うこと自体ではなく、有効な技術を責務や適用条件を無視して万能化するところから生じる。長いコンテキスト、RAG、Agent、会話memoryはいずれも有用だが、正本、権限、状態、検証、復旧まで一つの層へ背負わせると、性能・安全性・監査性・費用のどこかで破綻しやすい。技術名ではなく、責務分離と失敗包絡で診断する。
Diagnostic card schema
以下は PROPOSAL。各症例を「兆候 / なぜ魅力的か / 破綻条件 / 観測可能な症状 / 反証 / 代替pattern / TEST_PROFILE」の定型cardとして扱う。禁止リストではない。
AP-01 巨大プロンプト一本
兆候: policy、knowledge、state、workflow、例外処理を一つのpromptへ集中する。
破綻条件・症状: 変更差分、provenance、testabilityが弱くなり、長文化が情報利用精度を保証しない。長contextでは関連情報の位置による性能差が研究で報告されているが、特定task/model群の結果を全現行modelへ外挿しない。
反証: 全文比較、法令・仕様横断、引用確認など入力全体が必要なtaskではlong contextが合理的な場合がある。
代替pattern: system policy、retrieval、external state、tool schema、evalへ責務を分離する。
AP-02 全部RAG
兆候: authoritative record、transactional state、permission decision、deterministic lookupまでvector retrievalへ寄せる。
破綻条件・症状: RAG/vector層固有の弱点、index freshness、ACL propagation、retrieval scope、source provenanceが正本・権限・transactionの責任と混同される。
反証: RAGは大量の外部knowledgeを必要時取得する有力patternであり、RAG自体を否定しない。
代替pattern: source systemを正本に保ち、RAGを派生index/grounding layerとして扱う。
AP-03 全部Agent
兆候: deterministic workflowや単純変換までautonomous planning/tool executionへ寄せる。
破綻条件・症状: prompt injectionの攻撃面、excessive agency、権限、費用、非決定性、評価面積が増える。agent化は能力追加と同時にblast radiusを増やし得る。
反証: 曖昧なmulti-step task、動的tool selection、環境feedbackが必要なtaskではAgentが価値を持つ。
代替pattern: workflow-firstとし、必要な曖昧判断部分だけagent化する。必要性、権限境界、evalを明示する。
AP-04 AIに正本を持たせる
兆候: conversation memory、context、model内部状態をcanonical stateとみなす。
破綻条件・症状: versioning、concurrency、ACL、durability、rollback、監査の保証が不足する。
反証: external stateにも同期、schema migration、ACL、backup等の運用負荷がある。外部化だけで自動的に安全になるわけではない。
代替pattern: 独立したversioned source-of-truthを持ち、AIはread / derive / propose / update-contract経由で扱う。長期taskではexternal artifactをcontinuity anchorとして利用できる。
AP-05 全履歴投入
兆候: token windowに収まる限り、履歴、tool定義、中間結果を全投入する。
破綻条件・症状: long-contextの位置依存、token/latency増加、tool-definition overload、中間tool結果の肥大化、context limit超過、転記ミス等を招き得る。
反証: context reset、compaction、summaryにも情報損失と追加costがあり、taskごとのevalが必要。
代替pattern: bounded retrieval、structured handoff、external state、必要toolの遅延公開、summary/compaction/resetをtask特性で使い分ける。
Evidence / provenance
- Liu et al., Lost in the Middle: How Language Models Use Long Contexts — multi-document QA / key-value retrievalにおけるlong-context positional degradationの研究根拠。全current modelへの普遍保証にはしない。
- Anthropic, Code execution with MCP: Building more efficient agents — tool definitionsとintermediate resultsによるcontext/token負荷のofficial engineering report。
PRODUCT_VOLATILE。 - Anthropic, Harness design for long-running application development — long-running agentのcontext saturation、structured handoff/context resetのengineering report。resetのoverheadも保持する。
PRODUCT_VOLATILE。 - OWASP GenAI Security Project, LLM Top 10 2025 — Prompt Injection / Excessive Agency / Vector and Embedding Weaknesses / Unbounded Consumptionのsecurity taxonomy。特定provider/tenantの脆弱性存在を直接証明するものではない。
- OpenAI, Designing AI agents to resist prompt injection — browsing/retrieval/external actionを持つagentの攻撃面に関するofficial security engineering evidence。
PRODUCT_VOLATILE。 - Anthropic prompting guidance — long-horizon taskでexternal fileへstateを保存しfresh contextからcontinuityを再構成するcurrent implementation guidance。
PRODUCT_VOLATILE。
Availability gates
Long-context: model/context-window、mode、token budget、tool result size、provider compaction behavior。
RAG: source access、index freshness、ACL propagation、embedding/reranker/version、retrieval scope。
Agent: tool availability、identity/permission、approval policy、sandbox、region/plan、external service limits。
External state: source-system API、schema/version、write permission、concurrency/transaction semantics。
Security / privacy / audit / cost / operability
Security: excessive agency、prompt injection、RAG/vector weaknessを各症例へ接続し、least privilegeとuntrusted-content boundaryを必須欄とする。
Privacy: 全履歴投入は必要以上のdataをmodel/provider/toolへ渡し得るため、data minimizationを適用する。
Audit: AI内部stateを正本化せず、versioned external artifactとtool/action logを保持する。
Cost: context/tool定義/中間結果の無制限投入とagent loopはtoken、latency、retry costを増やし得る。
Operability: rollback、idempotency、structured handoff、freshness、failure recoveryをcardごとに記録する。
Evaluation
TEST_PROFILE は未実施。以下を同一業務fixtureで比較する。
- 全履歴投入 vs bounded retrieval + state handoff
- deterministic workflow vs agent
- RAG-only vs source-system lookup + RAG
accuracy/task completionだけでなく、token、latency、tool calls、permission violations、citation/source correctness、recovery costを計測する。未実施のため結果や閾値を推測しない。
Failure envelope / OPEN_UNKNOWN
- 長いprompt/long context自体をアンチパターンとしない。
- RAG自体を否定しない。
- Agent自体を否定しない。
- external stateを自動的に安全とはみなさない。
- context reset/compaction/summaryを無損失とはみなさない。
- research benchmarkをcurrent provider/tenantの保証へ外挿しない。
- OWASP taxonomyを特定provider/tenantの脆弱性存在の証明にしない。
- provider memory機能の存在とcanonical-record suitabilityを分離する。
PRODUCT_VOLATILEなmodel、context、tool、approval、compaction仕様はpublication時にcurrentnessを再確認する。
OPEN_UNKNOWN: - current frontier modelsでのAP-01/AP-05閾値 - providerごとの自動compaction/context reset実装差 - RAG ACL/freshnessの製品別実挙動 - agent approval UIがindirect prompt injectionに対して持つ実効防御
これらは推測で閉じない。
Cross-reference boundary
AP-01〜05はEA-020 architecture patternと対にし、anti-patternから代替patternへ接続する。RAG症例はEA-014/015、Agent症例はEA-006/020、TEST_PROFILEはEA-011、AI正本化症例はstate/source-of-truth原則へ接続する。ただし本packetで各関連EAの内容を再編集・再解釈しない。
EA-021-R11-RESEARCH研究資料研究資料根拠の出所: AUDITED_CANONICAL_RESEARCH_PACKETEA-021 監査済みresearch / canonical revision binding
- 裏付ける内容
- AIアンチパターンは、特定技術を使うこと自体ではなく、有効な技術を責務や適用条件を無視して万能化するところから生じる。長いコンテキスト、RAG、Agent、会話memoryはいずれも有用だが、正本、権限、状態、検証、復旧まで一つの層へ背負わせると、性能・安全性・監査性・費用のどこかで破綻しやすい。技術名ではなく、責務分離と失敗包絡で診断する。
- 確認日
- —
- 出典・実験ID
- COMM-023-EA0021
- 検証箇所
- COMM-023-EA0021 · EA-021-R5-LEGACY-MIGRATION-20261008-R1 · content/staging/EA-021.md
- 適用範囲
- 監査済みEA本文・canonical revision・既存Source Graph relationの範囲。欠損currentnessは推測で閉じない。
- 出典・来歴
- AUDIT_PASS_CANONICAL_BINDING
- 限界
- canonical監査・revision bindingの存在を示す。外部ソースcurrentnessが本文またはcontrol-planeで確定していない場合は、currentnessをUNKNOWNのまま保持する。
EA-021-R11-WEB-READBACK実装資料実装資料根拠の出所: IMPLEMENTATION_READBACKEA-021 Web body identity / canonical readback
- 裏付ける内容
- canonical staging bodyのSHA-256一致とR9 canonical ledger readbackをProduction projectionの入力として検証する。
- 確認日
- —
- 出典・実験ID
- WEBBODY-EA0021-R8-7F9DBF9A
- 検証箇所
- WEBBODY-EA0021-R8-7F9DBF9A · content/staging/EA-021.md · EA-021-R5-LEGACY-MIGRATION-20261008-R1
- 適用範囲
- R9/R10 canonical readback後のProduction生成時body identity。
- 出典・来歴
- CANONICAL_READBACK_BODY_HASH_MATCH
- 限界
- body identity/readbackは本文claim自体の真偽や外部ソースの最新性を追加保証しない。
- 出典ID
- COMM-023-EA0021, WEBBODY-EA0021-R8-7F9DBF9A
- 追跡中のUNKNOWN ID
- EA-021-UNKNOWN-01, EA-021-UNKNOWN-CURRENTNESS
- 再確認のきっかけ
- 正式な 改訂版/publication 状態 change · 本文 成果物 hash change · 出典 現行性 change · new contradiction or 実装 結果の照合
機械検査: 通過 — 機械検査の結果です。情報の正確性や実行の承認を保証するものではありません。
同じ記事IDの機械可読データです。