TTechSpecs

情境背景

你負責一個網站的內容管理系統,目前使用者反饹「很難找到相關的內容」。你需要探索不同的解決方案,找出最適合的設計方案。


對置步驟

步驟 1:探索解決方案 (20 分鐘)

目標:探索多種搜尋解決方案,進行比較分析

AI 對話

  • You:

    /brainstorming
  • AI:

    讓我們一起探索這個內容管理系統的搜尋設計。

    第一個問題:使用者說「很難找到相關的內容」,具體是什麼場景?

    • You:

    使用者需要在文章中找到相關的術語和概念,但目前的搜尋只支援精確匹配。

    AI: 好的,這是一個典型的語意搜尋問題。讓我繼續問。

    第二個問題:你考慮過哪些搜尋方案?

    • You:

    我看過這些方案:

    • 全文索引搜尋
    • 向量 embeddings 搜尋
    • LLM 語合搜尋

    AI: 好的。讓我比較這些方案。

    方案比較

    全文索引搜尋

    • 優點:快速、精確的精確匹配
    • 缺點:無法理解語意,只能匹配關字

    向量 embeddings 搜尋

    • 優點:理解語意、可以推薦相關內容
    • 缺點:需要 embeddings、維護成本高

    LLM 聯合搜尋

    • 優點:結合精確匹配和語意理解
    • 缺點:API 成本、需模型提示

    推薦方案:向量 embeddings 搜尋

    理由

    • 使用者需要語意搜尋,不只是關鍵字匹配
    • 可以推薦相關但用詞不同的內容
    • 現技術成熟,有很多開源實作

    下一步:要開始規劃嗎?


步驟 2:制定計畫 (15 分鐘)

目標:制定向量搜尋功能的實作計畫

AI 對話

  • You:

    /writing-plans
  • AI:

    讓我們一起制定向量搜尋功能的實作計畫。

    設計決策

    1. 前端

      • 使用向量資料庫(Qdrant)儲存向量
      • 使用 React 組件展示搜尋結果
    2. 後端

      • 使用 OpenAI embeddings API 生成向量
      • 使用 Qdrant 客戶端連接
    3. 更新流程

      • 內容發布時自動生成向量
      • 註式碼更新時重新生成向量

    實作步驟

    1. 建立向量資料庫(Qdrant)
    2. 實作 embeddings 生成 API
    3. 實作搜尋介面和元件
    4. 實作自動化向量更新流程
    5. 測試驗證

    時間估算:4 小時

    下一步:要開始實作嗎?


步驟 3:實作功能 (2-3 小時)

目標:根據計畫實作向量搜尋功能

AI 對話

  • You:

    /implement --spec=docs/plans/vector-search.md
  • AI:

    開始實作向量搜尋功能…

    實作狀況

    1. 建立 Qdrant 向量資料庫 ✓
    2. 實作 embeddings 生成 API ✓
    3. 實作搜尋介面 ✓
    4. 實作自動化更新流程 ✓
    5. 測試通過 ✓

    實作完成,準備驗證。


學活的決策

誇索引擎選擇

在探索過程中,你決定使用 向量 embeddings 搜尋 而非全文索引或 LLM 搜尋。

選擇依據

  • 使用者需要語意搜尋(推薦相關但用詞不同的內容)
  • 技術成熟度高,開源方案豐富
  • API 成本可接受(OpenAI)

自動化更新流程

你決定在內容發布和程式碼更新時,自動更新向量,確保向量與內容同步。

解決方案

  • 內容發布時:觸發 webhook → 生成向量 → 儲存到 Qdrant
  • 程式碼更新時:監聽程式碼庫 → 觸發 webhook → 重新生成向量 → 更新 Qdrant

工具使用摘要

Skill 用途 在本例的作用
brainstorming 探索多種解決方案 比較 3 種搜尋方案
writing-plans 制定詳細計畫 制定向量搜尋設計和實作步驟
implement 根據計畫實作功能 實作向量搜尋功能

結果

  • ✅ 探索到最佳解決方案(向量 embeddings 搜尋)
  • ✅ 制定完整的實作計畫
  • ✅ 成功實作並測試向量搜尋功能
  • ✅ 實作自動化更新流程
  • ✅ 搜尋準確度和使用者滿意度顯著提升

經驗

使用者回饋:「現在可以輕鬆找到相關內容了,推薦功能特別有用!」