-- Phase 4 飛輪修復 (ADR-067 延伸): Playbook Embeddings 持久化表 -- 2026-04-10 Claude Sonnet 4.6 Asia/Taipei -- 目的: 解決冷啟動飛輪斷層 — Playbook 語義相似度查詢 -- -- 前置: pgvector extension 已安裝 (phase28_rag_pgvector.sql) -- 向量模型: nomic-embed-text (Ollama 192.168.0.188:11434) → 768 維 -- -- 索引策略: -- < 100 筆: 線性掃描 (無需索引) -- > 100 筆: 執行 CREATE INDEX ivfflat (phase35 已示範) CREATE TABLE IF NOT EXISTS playbook_embeddings ( playbook_id TEXT PRIMARY KEY, embedding vector(768), -- nomic-embed-text 768 維 alert_names TEXT[] NOT NULL DEFAULT '{}', -- 索引時的 alert_names 快照 keywords TEXT[] NOT NULL DEFAULT '{}', -- 索引時的 keywords 快照 indexed_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW() ); COMMENT ON TABLE playbook_embeddings IS 'Playbook 向量索引 — Phase 4 飛輪修復 (2026-04-10) — nomic-embed-text 768 維'; -- 向量近鄰索引 (超過 100 筆後解開) -- CREATE INDEX IF NOT EXISTS ix_playbook_embeddings_vec -- ON playbook_embeddings USING ivfflat (embedding vector_cosine_ops) -- WITH (lists = 10);