<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Drift-Adapter: A Practical Approach to Near Zero-Downtime Embedding Model Upgrades in Vector Databases · HackerPapers discussions</title><link>https://hackerpaper.kaipfister.de/p/2509.23471/</link><description>Collected HN comments and submissions linking this paper.</description><language>en</language><lastBuildDate>Mon, 02 Nov 2026 11:16:22 GMT</lastBuildDate><atom:link href="https://hackerpaper.kaipfister.de/p/2509.23471/feed.xml" rel="self" type="application/rss+xml" /><item><title>Drift-Adapter: A Practical Approach to Near Zero-Downtime Embedding Model Upgrades in Vector Databases — mentioned by aayush4vedi</title><link>https://news.ycombinator.com/item?id=48476032</link><guid isPermaLink="false">urn:hackerpapers:mention:2509.23471:48476032</guid><pubDate>Wed, 10 Jun 2026 13:30:58 GMT</pubDate><description>&lt;p&gt;Changing your embedding model usually doesn&amp;#x27;t need a reindex, and that surprised me enough to build around it. Two models&amp;#x27; vector spaces are close to a rotation of each other, so you can fit one orthogonal matrix (an SVD over a few thousand paired vectors, ~15s on CPU) and apply it to your query vectors at search time. An orthogonal transform preserves cosine exactly, so nearest-neighbour order is unchanged and the old index never moves. The whole &amp;quot;upgrade&amp;quot; is a 9 MB .npy. Drift wraps that plus the unglamorous parts of running embeddings in prod: embed() dedups across runs and tracks per-run…&lt;/p&gt;&lt;p&gt;&lt;a href="https://hackerpaper.kaipfister.de/p/2509.23471/"&gt;Paper and discussion history&lt;/a&gt;. A mention is not an endorsement.&lt;/p&gt;</description><category>cs.LG</category></item></channel></rss>
