# 搜尋測試報告

**作者**：M4  
**日期**：2026-05-06  

---

## 測試環境

| 項目 | M5 測試 | M4 測試 |
|------|---------|---------|
| **機器** | M5 (192.168.110.201) | M4 (Mac Mini) |
| **BM25 search** | —（無 Rule 1 chunks） | ✅ dev.chunks 10546 rows |
| **Qdrant face search** | ✅ momentry_dev_face 32 points | —（Qdrant 無資料） |
| **Ollama embedding** | ✅ mxbai-embed-large(1024D) | —（未測試） |

---

## 1. M5：Qdrant Face Vector Search（向量搜尋）

測試環境：M5 dev playground, Qdrant port 6333

**Query**: face embedding from frame 840（trace 0）

| Rank | ID | Score | Frame | Trace | Bbox |
|------|----|-------|-------|-------|------|
| 1 | 12398 | 1.0000 | 840 | 0 | (901,151,215,215) |
| 2 | 12421 | 0.9841 | 1530 | 0 | (929,151,219,219) |
| 3 | 12400 | 0.9839 | 900 | 0 | (929,158,212,212) |
| 4 | 12399 | 0.9829 | 870 | 0 | (928,156,215,215) |
| 5 | 12401 | 0.9818 | 990 | 0 | (921,147,220,220) |

**結果**：✅ PASS — 同一人的 face vector 相似度全部 >0.98

### Ollama Embedding Test

| Model | Dim | Status |
|-------|-----|--------|
| mxbai-embed-large | 1024 | ✅ OK |

---

## 2. M4：BM25 Full-Text Search（全文搜尋）

測試環境：M4 dev database, `dev.chunks` (10546 rows, all with `search_vector`)

### 2.1 演員搜尋

| Query | 結果數 | Top-1 內容 | Score |
|-------|--------|------------|-------|
| `Cary Grant` | 5 | "[2103s-2106s] Cast: Cary Grant." | 0.289 |
| `Audrey Hepburn` | 5 | "[472s-474s] Cast: Audrey Hepburn." | 0.289 |

**結果**：✅ PASS — 正確回傳含有演員名稱的 chunk

### 2.2 對話搜尋

| Query | 結果數 | Top-1 內容 | Score |
|-------|--------|------------|-------|
| `how do you shave` | 3 | "[2035s-2038s] Cary Grant: \"how do you shave in there?\"" | 0.061 |
| `thank you` | 23 | "[1292s-1298s] Audrey Hepburn: \"got liverwurst...\"" | 0.076 |

**結果**：✅ PASS — 正確回傳含有對話原文的 chunk

### 2.3 多詞查詢

| Query | 結果數 | 說明 |
|-------|--------|------|
| `Hitchcock charade` | 2 | plainto_tsquery & 匹配兩 chunk |
| `classical Hollywood legends` | 1 | 精準匹配單一 chunk |

**結果**：✅ PASS — BM25 語意分詞正常

---

## 3. 未測試項目

| 項目 | 原因 |
|------|------|
| smart search (`/api/v1/search/smart`) | 需 LLM |
| universal search (`/api/v1/search/universal`) | 需 LLM |
| visual search (`/api/v1/search/visual`) | 需 Qdrant visual chunk 資料 |
| 5W1H (`/api/v1/agents/5w1h/analyze`) | 需 LLM + Rule 3 chunks |
| Rule 1 chunks BM25 | M5 pipeline 未產出 chunks |

---

## 4. 結論

| 搜尋類型 | 測試位置 | 結果 |
|----------|---------|------|
| BM25 全文搜尋 | M4 | ✅ PASS |
| Qdrant face vector search | M5 | ✅ PASS |
| Ollama embedding (mxbai-1024D) | M5 | ✅ PASS |
| Semantic search (LLM) | 皆未測試 | ❌ |
