ByteScope

Photo Search

輸入「海邊的狗」「生日蛋糕」,從整個資料夾裡把那張照片找出來。照片不會離開你的電腦。

檔案不會離開你的瀏覽器 — 全部在本機處理。

正在檢查 WebGPU…

老實說的限制

  • 搜尋是 AI 依「看起來像不像」排序,不是真的看懂照片;很抽象的詞(「開心的一天」)效果差。
  • 第一次建索引要花時間:中階顯示卡每張約 0.25 秒,1,000 張大約 4 分鐘。
  • 索引只存在這個瀏覽器裡。換電腦、換瀏覽器或清除網站資料,就要重建。
  • 選資料夾只有 Chrome、Edge 這類 Chromium 瀏覽器能用;其他瀏覽器請拖資料夾或直接選照片。
  • 照片不會上傳。結果會顯示檔名和路徑,但瀏覽器沒辦法幫你打開那個資料夾。

瀏覽器支援度

要原地重新命名和刪除檔案,需要 File System Access API,目前只有 Chromium 系列瀏覽器支援。不管支不支援,下面的操作都在你自己的電腦上完成——絕不會上傳任何東西。

功能ChromeEdgeFirefoxSafari
從硬碟開啟資料夾window.showDirectoryPicker——Chrome/Edge 86 以上,僅限桌面版✓支援✓支援✗不支援✗不支援
原地重新命名檔案FileSystemFileHandle.move——Chrome/Edge 111 以上✓支援✓支援✗不支援✗不支援
原地刪除檔案FileSystemDirectoryHandle.removeEntry✓支援✓支援✗不支援✗不支援
記住資料夾供下次使用控制代碼會存在這台裝置的 IndexedDB 裡;權限每次還是要重新授權✓支援✓支援✗不支援✗不支援

在這個瀏覽器偵測到

  • window.showDirectoryPicker …
  • FileSystemFileHandle.move …
  • indexedDB …

在 Firefox、Safari,或任何手機、平板上,這個頁面能說明怎麼做,但沒辦法實際執行。請用桌面版 Chrome 或 Edge 開啟。

關於這個工具

選一個照片資料夾(或直接拖進來),再用一句話描述你要找的照片:「海邊的狗」「插著蠟燭的生日蛋糕」「積雪的山路」。也可以拖、貼上或選一張圖,找出長得像的照片。頁面會讀進資料夾和子資料夾裡的每張照片,縮到 640 像素後,用你顯示卡上的 EmbeddingGemma 2 模型把它轉成向量;你打的字或給的圖也用同樣的方式轉成向量,再把最接近的 24 張列出來,附上縮圖、檔名、所在路徑和分數。第一批照片建好索引就能開始搜尋,建索引的過程可以暫停,之後再繼續。瀏覽器沒辦法幫你打開檔案總管,所以結果會顯示檔名和路徑,讓你自己去找。

需要什麼

第一次使用會下載約 344 MB 的模型檔,之後直接從瀏覽器載入。模型靠 WebGPU 執行,所以要用有顯示卡的電腦開 Chrome 或 Edge。沒有 WebGPU 的話,模型在這裡跑不動,頁面會直接告訴你,不會硬跑。選資料夾用的是 File System Access API,只有 Chrome、Edge 這類 Chromium 瀏覽器才有;其他瀏覽器可以把資料夾拖進頁面,或直接選照片。讀得到的格式是 JPEG、PNG、WebP、AVIF、GIF、BMP;HEIC 照片在 Chrome、Edge 通常解不開,會算成讀不到的檔案。照片不會上傳:解碼和建索引都在這個分頁裡完成,跟照片有關的任何東西都不會離開你的電腦。

老實說的限制

搜尋是 AI 依「看起來像不像」排序,不是真的看懂照片。看得到的東西最準,像動物、地點、顏色、物品;很抽象的詞(「開心的一天」)效果就差。第一次建索引要花時間:在中階顯示卡(GTX 1060)上每張約 0.25 秒,1,000 張大約 4 分鐘,一萬張大約 42 分鐘。索引只存在這個瀏覽器裡:之後再開同一個資料夾,會從上次停下的地方接著做;但換一台電腦、換瀏覽器,或清除網站資料,就要從頭重建。照片改過名字、搬過位置或編輯過,都會被當成新照片重新建索引。

常見問題

照片會上傳嗎?

不會。照片從你的硬碟讀進這個分頁解碼,AI 模型在你自己的顯示卡上跑。唯一的下載是第一次的模型檔;你的照片和打的字都不會傳到任何地方。

為什麼 Firefox、Safari 或手機不能用?

模型需要 WebGPU,目前只在電腦版的 Chrome 和 Edge 上測過。沒有 WebGPU 就完全跑不動,所以頁面會改顯示支援表。Safari、Firefox 和手機瀏覽器都還沒測,就算有 WebGPU 也不保證能用。另外,選資料夾的按鈕只有 Chromium 瀏覽器才有;其他瀏覽器可以把資料夾拖進頁面。

建索引要多久?

看你的顯示卡。在 GTX 1060 上每張照片約 0.25 秒,1,000 張大約 4 分鐘,一萬張大約 42 分鐘;第一次另外要下載 344 MB 的模型。建索引時隨時可以暫停,已經做完的照片照樣能搜尋。關掉頁面也沒關係,下次再開同一個資料夾,會從已經建好的地方繼續。

可以用中文或日文搜尋嗎?

可以,這個模型學過很多種語言。我們拿 4 張照片做過小測試,同樣的描述用英文、繁體中文、日文各問一次,正確的照片每次都排第一。500 張照片的大型測試還沒做,所以用中文找不到的話,可以換成英文再試一次。

為什麼點結果不能直接打開照片?

基於安全限制,瀏覽器沒辦法幫你打開檔案總管或 Finder。每個結果都會顯示檔名和它在資料夾裡的路徑,照著路徑就能找到原檔。

索引存在哪裡?要怎麼刪掉?

存在這個瀏覽器裡、這個網站專用的 IndexedDB,每張照片大約 3 KB,一萬張約 30 MB;照片本身不會被複製。清除 bytescope.dev 的網站資料,索引就會一起刪掉。