TE
TechEcho
StartseiteTop 24hNeuesteBesteFragenZeigenJobs
GitHubTwitter
Startseite

TechEcho

Eine mit Next.js erstellte Technologie-Nachrichtenplattform, die globale Technologienachrichten und Diskussionen bietet.

GitHubTwitter

Startseite

StartseiteNeuesteBesteFragenZeigenJobs

Ressourcen

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. Alle Rechte vorbehalten.

Show HN: VectorVFS, your filesystem as a vector database

269 Punktevon peronevor 3 Tagen

22 comments

jlhawnvor 3 Tagen
If I understand correctly, this is attaching metadata to files in a format that LLMs (or any tool that can understand the semantic embedding vector) can leverage to understand what a file is without having to actually read the contents of the file.<p>That obviously has a lot of interesting use cases, but my first assumption was that this could be used to quickly&#x2F;easily search your filesystem with some prompt like &quot;Play the video from last month where we went camping and saw a flock of turkeys&quot;. But that would require having an actual vector DB running on your system which you could use to quickly look up files using an embedding of your query, no?
评论 #43897289 未加载
评论 #43899718 未加载
评论 #43897169 未加载
malcolmgreavesvor 3 Tagen
Fun idea storing embeddings in inodes! Very clever!<p>I want to point out that this isn’t suitable for any kind of actual things you’d use a vector database for. There’s no notion of a search index. It’s always a O(N) linear search through all of your files: <a href="https:&#x2F;&#x2F;github.com&#x2F;perone&#x2F;vectorvfs&#x2F;blob&#x2F;main&#x2F;vectorvfs&#x2F;cli.py">https:&#x2F;&#x2F;github.com&#x2F;perone&#x2F;vectorvfs&#x2F;blob&#x2F;main&#x2F;vectorvfs&#x2F;cli....</a><p>Still, fun idea :)
评论 #43896358 未加载
评论 #43896265 未加载
评论 #43896346 未加载
评论 #43897125 未加载
评论 #43896863 未加载
anotherpaulvor 3 Tagen
Great idea indeed. The documentation needs a bit more information to be useful. What GPU backends are supported for example? How do I delete the embedding information after I decide to uninstall it? Will give it a try though.
评论 #43896356 未加载
thirdtriggervor 3 Tagen
Might be interesting to add an optional embedded Weaviate [1] with a flat-index [2] to the project. It wouldn&#x27;t use external services and is fully disk-based. Would allow you to search the whole filesystem (about 1.5kb per file (384 dimensions) which would be added to the metadata as well).<p>1. <a href="https:&#x2F;&#x2F;weaviate.io&#x2F;developers&#x2F;weaviate&#x2F;installation&#x2F;embedded" rel="nofollow">https:&#x2F;&#x2F;weaviate.io&#x2F;developers&#x2F;weaviate&#x2F;installation&#x2F;embedde...</a> 2. <a href="https:&#x2F;&#x2F;weaviate.io&#x2F;developers&#x2F;academy&#x2F;py&#x2F;vector_index&#x2F;flat" rel="nofollow">https:&#x2F;&#x2F;weaviate.io&#x2F;developers&#x2F;academy&#x2F;py&#x2F;vector_index&#x2F;flat</a>
评论 #43899984 未加载
ndsipa_pomuvor 2 Tagen
I&#x27;ve long wanted to have a linux filesystem that robustly supported &quot;tags&quot; for files so that I didn&#x27;t have to rely on the filesystem hierarchy to represent media files etc. e.g. I might want to tag a particular films as &quot;Scifi&quot; and also &quot;Horror&quot;. Of course, for films, NFO files are typically used for this kind of metadata, but I&#x27;d like a similar facility that could be applied to any type of file.
评论 #43904215 未加载
quantadevvor 3 Tagen
I&#x27;ve been wondering for about 20 years why File Systems basically died and stopped innovating. For example we have lots of hierarchical data structures in the world, and no one seems to have figured out how to let a folder be the storage, instead of always just databases.<p>For example, if we simply had the ability to have &quot;ordered&quot; files inside folders, that would instantly make it practical for a folder structure to represent &quot;Documents&quot;. After all, documents are nothing but a list of paragraphs and images, so if we simply had ordering in file systems we could have document editors which are using individual files for each paragraph of text or image. It would be amazing.<p>Also think about use cases like Jupyter Notebooks. We could stop using the XML file format, and just make it a folder structure instead. Each cell (node) being in a file. All social media messages and chatbot conversations could be easily saved as folders structures.<p>I&#x27;ve heard many file copy tools ignore XATTR so I&#x27;ve never tried to use it for this purpose, so maybe we&#x27;ve had the capability all along and just nobody thought to use it in a big way that became popular yet. Maybe I should consider XATTR and take it seriously.
评论 #43902998 未加载
yencabulatorvor 1 Tag
&gt; Zero-overhead indexing Embeddings are stored as extended attributes (xattrs) on each file, eliminating the need for external index files or services.<p>Ain&#x27;t no such thing as zero-overhead indexing. Just because you can&#x27;t articulate where the overhead is doesn&#x27;t make it disappear.
b0a04glvor 3 Tagen
If VectorVFS obscures retrieval logic behind opaque embeddings, how do users debug why a file surfaced—or worse, why one didn’t?
评论 #43897444 未加载
评论 #43900141 未加载
评论 #43897102 未加载
评论 #43896687 未加载
PeterZaitsevvor 3 Tagen
I think comparing it to Vector Database is confusing as database would typically mean indexes and some sort of query support.<p>Storing Embeddings with File is interesting concept... we already do it for some file formats (ie EXIF), where this one is generalized... yet you would need to have some actual database to load this data into to process at scale.<p>Another issue I see is support for different models and embedding formats to make this data really portable - like I can take my file drop it into any system and its embedding &quot;seamlessly&quot; integrates
gitroomvor 3 Tagen
Gotta say, the old school debate on filesystems vs databases will never get old for me - I always end up with more questions than answers after reading stuff like this.
评论 #43900168 未加载
bullenvor 3 Tagen
I did something similar, but I use these EXT4 requirements:<p><pre><code> - hard links (only tar works for backup) - small file size (or inodes run out before disk space) </code></pre> <a href="http:&#x2F;&#x2F;root.rupy.se" rel="nofollow">http:&#x2F;&#x2F;root.rupy.se</a><p>It&#x27;s very useful for global distributed real-time data that don&#x27;t need the P in CAP for writes.<p>(no new data can be created if one node is offline = you can login, but not register)
natasvor 3 Tagen
this is actually a great idea
评论 #43896622 未加载
PeterStuervor 3 Tagen
If there is no indexing, how will your search time not increase linear or worse with the number of files?
esafakvor 3 Tagen
Files-as-vector stores is LanceDB&#x27;s value proposition. How do you compare in performance, etc.?
评论 #43897474 未加载
asadawadiavor 3 Tagen
is the embedding for the whole file? or each 1024&#x2F;512 byte chunk?
javier2vor 3 Tagen
i looked into something similar a few years ago, where i stored embeddings in xattrs
adentavor 3 Tagen
I wonder if I could use this locally on my macbook. The finder applications built-in search is kinda meh.
评论 #43897501 未加载
badmonstervor 3 Tagen
interesting
pseudosavantvor 3 Tagen
This immediately made me nostalgic for BeOS&#x27;s BeFS or Windows Longhorn&#x27;s WinFS database filesystems, and how this kind of thing would have fit them perfect. So much cool stuff you could do with vectors for everything. Smart folders that include files for a project based on a description of the project. Show me all of my config files for appXYZ. Images of a black dog at the beach. At the OS-level for any other app to easily tap into.<p>I&#x27;d be surprised if cloud storage services like OneDrive don&#x27;t already do some kind of vector for every file you store. But an online web service isn&#x27;t the same as being built into the core of the OS.
评论 #43897517 未加载
评论 #43897581 未加载
评论 #43898234 未加载
tzuryvor 3 Tagen
I’ve found that starting with a plain old filesystem often outperforms fancy services - just as the Unix philosophy (“everything is a file” [1]) has preached for decades [2].<p>When BigQuery was still in alpha I had to ingest ~15 billion HTTP requests a day (headers, bodies, and metadata). None of the official tooling was ready, so I wrote a tiny bash script that:<p><pre><code> 1. uploaded the raw logs to Cloud Storage, and 2. tracked state with three folders: `pending&#x2F;`, `processing&#x2F;`, `done&#x2F;`. </code></pre> A cron job cycled through those directories and quietly pushed petabytes every week without dropping a byte. Later, Google’s own pipelines—and third-party stacks like Logstash—never matched that script’s throughput or reliability.<p>Lesson: reach for the filesystem first; add services only once you’ve proven you actually need them.<p>[1] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Everything_is_a_file" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Everything_is_a_file</a> [2] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Unix_philosophy" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Unix_philosophy</a>
评论 #43897487 未加载
评论 #43897089 未加载
评论 #43897077 未加载
评论 #43897042 未加载
评论 #43897087 未加载
评论 #43897173 未加载
评论 #43897165 未加载
Ericson2314vor 3 Tagen
The idea that filesystems are not just a flavor of database management systems was always a mistake.<p>Maybe with micro-kernels we&#x27;ll finally fix this.
评论 #43896647 未加载
评论 #43896611 未加载
评论 #43897061 未加载
评论 #43896531 未加载
评论 #43897056 未加载
评论 #43896779 未加载
评论 #43896887 未加载
colordropsvor 3 Tagen
Rt