Linux için Rust tabanlı Yerel Semantik Dosya Arama Aracı (EmbeddingGemma 2 ve llama.cpp)

Rust ile geliştirilen ve EmbeddingGemma 2 ile llama.cpp entegrasyonu kullanan yeni bir Linux uygulaması, PDF, Office, tarama, ekran görüntüsü, ses ve video dosyalarını içeriklerine göre indeksleyip anında bulabiliyor. Vektör benzerliği ve SQLite FTS5 kombinasyonu sayesinde sorgular milisaniyeler içinde yanıt veriyor ve tamamen çevrim dışı çalışıyor.
Öne Çıkan Başlıklar
- EmbeddingGemma 2 ve llama.cpp sayesinde metin, görsel ve ses verileri tek bir vektör uzayına gömülerek hibrit arama yapılabiliyor.
- Vulkan destekli indeksleme CPU'ya göre yaklaşık 3 kat daha hızlı, sorgular milisaniyeler içinde yanıt veriyor.
- Uygulama tamamen çevrim dışı çalışıyor; model indirildikten sonra ağ bağlantısına ihtiyaç duyulmuyor.
Recall adlı açık kaynak proje, Linux ortamında yerel semantik dosya araması sağlamak üzere Rust dilinde bir motor ve GTK 4 arayüzüyle sunuluyor. Uygulama, PDF, Office belgeleri, taranmış görüntüler, ekran görüntüleri, ses ve video dosyalarını indeksleyerek içerik bazlı arama imkanı tanıyor. Kullanıcı "when did they decide to freeze hiring" gibi bir sorgu girdiğinde, ilgili ses kaydı o anlık noktada açılıyor.
Metin, görsel, video kareleri ve 30 saniyelik ses pencereleri EmbeddingGemma 2 modeliyle tek bir vektör uzayına gömülüyor; bu işlem llama.cpp aracılığıyla CUDA, Vulkan ya da yalnızca CPU üzerinde gerçekleştirilebiliyor. Sıralama, vektör benzerliği ve SQLite FTS5 tabanlı tam metin arama sonuçlarının birleştirilmesiyle hibrit bir yaklaşım izliyor. OCR işlemleri PaddleOCR ile yapılırken, uygulama tamamen çevrim dışı çalışıyor; model indirildikten sonra ağ bağlantısına ihtiyaç duyulmuyor.
Performans testleri i5 işlemcili bir dizüstü bilgisayar (Iris Xe GPU) üzerinde yapıldı. Küçük bir test setinde doğru dosya ilk sırada %95 oranında bulunurken, anahtar kelime sorguları ortalama 4 ms, semantik aramalar ise 0.17 s sürede sonuç veriyor. Vulkan destekli indeksleme ise CPU tabanlı yönteme göre yaklaşık 3 kat daha hızlı. Eksik özellikler arasında ses transkripsiyonu, paket taraması ve eski masaüstü ortamları için Wayland kısayolu bulunmuyor.
Proje MIT lisansı altında GitHub'da (https://github.com/pdstn12/Recall) yayınlanmış ve macOS için geliştirilen DigUp uygulamasından ilham almış. Geliştiriciler, açık kaynak topluluğunun katkılarını bekleyerek aracın işlevselliğini ve performansını daha da artırmayı hedefliyor.
Benchmark Sonuçları
| Model | Benchmark | Skor | Ayar |
|---|---|---|---|
| Recall (EmbeddingGemma 2 + llama.cpp) | Doğru dosya sıralama oranı | 95 % | küçük test seti |
| Recall | Anahtar kelime sorgu süresi | 4 ms | keyword results |
| Recall | Semantik arama süresi | 0.17 s | semantic search |
| Recall | Vulkan indeksleme hız artışı | 3 x | CPU'ya göre |
YZ Yorumu
Bu araç, veri gizliliği ve düşük gecikme süresi isteyen geliştiriciler için güçlü bir seçenek sunuyor; açık kaynak yapısı sayesinde topluluk katkılarıyla daha da zenginleşebilir.
Yapay zekâ tarafından üretilmiştir.