- VectorVFS menyimpan embedding vektor sebagai metadata untuk setiap file, sehingga sistem file Linux itu sendiri dapat dimanfaatkan sebagai database vektor
- Tanpa indeks atau DB eksternal, solusi ini mewujudkan pengindeksan zero-overhead melalui fitur xattrs (extended attributes) pada sistem file
- Memungkinkan pencarian file serupa melalui pencarian embedding, dan dapat dihubungkan dengan berbagai model embedding tanpa bergantung pada model tertentu
- Menggunakan Perception Encoders (PE) dari Meta untuk menghasilkan embedding vektor berbasis gambar/video, yang menunjukkan performa zero-shot lebih baik dibanding model lain
- Dengan struktur yang ringan dan portabel, dapat langsung digunakan tanpa daemon atau layanan terpisah
Pengantar
- VectorVFS adalah library Python ringan yang memungkinkan penyimpanan dan pencarian embedding untuk file hanya dengan memanfaatkan fitur dasar sistem file Linux
- Tanpa database eksternal, nilai embedding disimpan di extended attributes (xattrs) milik tiap file
- Struktur direktori yang ada dapat dipertahankan apa adanya, sambil diperluas menjadi sistem yang mendukung pencarian semantik
Fitur utama
-
Zero-overhead indexing
- Embedding vektor disimpan langsung sebagai xattr pada file
- Tidak memerlukan layanan pengindeksan eksternal atau penyimpanan tambahan, hanya ada sebagai metadata di samping file
-
Seamless retrieval
- Dapat melakukan pencarian kemiripan berbasis vektor pada seluruh sistem file
- Contoh: dapat mencari file gambar serupa dengan cara seperti
find_similar_images('example.jpg')
-
Flexible embedding support
- Secara default menggunakan model Perception Encoders (PE) dari Meta
- Ke depan direncanakan dukungan untuk berbagai model embedding lain (misalnya teks, audio, multimodal)
- Model embedding kustom juga dapat diintegrasikan melalui mekanisme plugin
-
Lightweight and portable
- Berbasis fitur Linux VFS (xattr) sehingga tidak memerlukan daemon atau konfigurasi server tambahan
- Dengan pendekatan yang portabel, dapat digunakan pada direktori lokal maupun penyimpanan eksternal
-
Model embedding yang digunakan: Meta Perception Encoders
- PE adalah model vision-language berbasis gambar/video yang diperkenalkan Meta
- Dibanding model pesaing seperti InternVL3, Qwen2.5VL, dan SigLIP2, PE menunjukkan performa zero-shot yang lebih unggul
- Ke depan akan ditambahkan berbagai model embedding backend lainnya
Ringkasan
- Memungkinkan pembangunan sistem vektor dengan pencarian berbasis makna sambil tetap mempertahankan struktur file yang ada
- Biaya penyimpanan embedding nyaris tidak ada, dan dapat berjalan tanpa infrastruktur terpisah
- Cocok untuk menjaga privasi dan menerapkan fungsi pencarian pada perangkat offline/edge
1 komentar
Opini Hacker News
Membandingkannya dengan Vector Database terasa membingungkan. Database biasanya berarti dukungan indeks dan kueri
Ini adalah cara menempelkan metadata ke file agar alat yang dapat memahami LLM atau vektor embedding bisa memahami file tanpa membaca isinya
Menambahkan Weaviate dan flat-index secara opsional ke proyek ini mungkin menarik
Ide yang hebat
Jika VectorVFS menyembunyikan logika pencarian di balik embedding yang tidak transparan, saya jadi bertanya-tanya bagaimana pengguna bisa men-debug mengapa sebuah file muncul, atau tidak muncul
Perdebatan lama tentang sistem file dan database selalu menarik. Membaca hal seperti ini selalu memunculkan lebih banyak pertanyaan
Saya pernah melakukan sesuatu yang mirip, tetapi menggunakan persyaratan EXT4
Menyimpan embedding di inode adalah ide yang menarik. Sangat cerdas
Beberapa tahun lalu saya meneliti sesuatu yang mirip. Saya menyimpan embedding di xattrs