Releases: tensorchord/pgvecto.rs
v0.2.0
New features:
-
VBASE Mode Integration: pgvecto.rs integrates the cutting-edge VBASE method from OSDI 2023 and set it as default, substantially refining vector search efficiency within PostgreSQL. This enhancement not only accelerates the standard search process but also ensures accurate results, even when complex filters and join operations are applied.
-
FP16 Support: Users can now store their embeddings in PostgreSQL using half the float32 size, significantly improving latency. Our experiments indicate that this optimization has a negligible impact on final recall less than 1%.
-
Asynchronous Indexing: Insertion operations are now non-blocking, ensuring a smoother, more efficient data insertion and indexing process.
-
Doubled Query Performance: pgvecto.rs 0.2 boasts a query performance that is twice as fast as that of 0.1, marking a significant leap forward in our system's efficiency.
-
Enhanced Visibility into Internal Status: The new
pg_vector_index_stat
v offers users a transparent view into the indexing internals of pgvecto.rs. This feature allows for real-time monitoring of index construction, configuration adjustments, and detailed statistical analysis, fostering a more intuitive and controlled environment.
Breaking Changes:
-
Schema Modification for Installation: pgvecto.rs has shifted its installation location from the public schema to the vectors schema. This change necessitates updates in schema references within your queries and scripts.
-
Default Search Mode Update: The default search mode has been updated to VBASE. To revert to the basic search mode, users must manually execute the command SET vectors.search_mode = basic;. This change ensures that users benefit from the enhanced performance and accuracy of VBASE by default.
-
Revised prefilter Option: The semantics of the prefilter option have been redefined. The prefilter option now specifically controls whether deleted points are skipped from the search process. Meanwhile, the filter scenarios previously handled by this option are now adeptly managed by the VBASE mode, which offers superior accuracy and performance.
-
Index Compatibility and Reindexing Requirement: Indexes created with versions prior to 0.2 are not compatible with the 0.2 update. Users upgrading from earlier versions must reindex their data to ensure compatibility and to take full advantage of the new features and improvements introduced in pgvecto.rs 0.2.
Improvements
We've improved pgvecto.rs's reliability in this major release by adding more tests, improving error messages for easier troubleshooting, and refactoring the code for increased stability and smoother performance.
v0.2.0-alpha.2
Full Changelog: v0.2.0-alpha.1...v0.2.0-alpha.2
v0.2.0-alpha.1
Full Changelog: v0.2.0-alpha...v0.2.0-alpha.1
v0.2.0-alpha
What's Changed
- ci: bump release version by @usamoi in #186
- ci: fix release ci by @usamoi in #187
- ci: fix nightly release timezone by @usamoi in #189
- fix: do not config cross compilation in config.toml, document it in docs by @usamoi in #198
- fix: fallback for memfd (kernel 3.17) by @usamoi in #204
- feat: allow user to set vbase range by @silver-ymz in #206
- chore: stable latest by @cutecutecat in #209
- fix: upgrade instructions by @usamoi in #203
- chore: move memfd detect to detect crate by @usamoi in #213
- feat: add nprobe into guc by @cutecutecat in #212
- feat: show index size in index info table by @kemingy in #222
- chore: fine-grained upgrade hint by @usamoi in #220
- chore: upgrade scripts for unsupported version by @usamoi in #221
- chore: fix python action image tag by @kemingy in #229
- chore: fix typos by @kemingy in #228
- chore: friendly OOM message by @usamoi in #223
- docs: development docs by @usamoi in #226
- docs: add cutecutecat as a contributor for code by @allcontributors in #235
- chore: Refine readme and replace docs with docs.pgvecto.rs by @gaocegege in #234
- fix: typo by @usamoi in #237
- fix: cosine distance by @kemingy in #231
- fix: simpler logic for IPC connection reusing by @usamoi in #240
- refactor: rework vbase by @usamoi in #238
- chore: add crash test by @cutecutecat in #242
- refactor: orthogonal support of vbase and prefilter by @usamoi in #248
- chore: stable schema generation by @usamoi in #254
- docs: advice developers to setup all PostgreSQL versions by @usamoi in #265
- feat: Add vector to vecf16 CAST by @JoePassanante in #266
- docs: add JoePassanante as a contributor for code by @allcontributors in #271
- chore: add test for partition/partial/fp16 index by @cutecutecat in #276
- docs: Refine readme by @VoVAllen in #274
- chore: set schema and search_path by @usamoi in #273
- fix: docker CMD instruction by @usamoi in #278
- feat: transactional CREATE/DROP by @usamoi in #279
- fix: promise flushing when committing by @usamoi in #280
- chore: Add test for dropping index when indexing by @xieydd in #283
- feat: add compat with pgvector by @cutecutecat in #256
- chore: upload 0.2.0 schema install script by @usamoi in #289
- fix: correct fp16 dot operation by @silver-ymz in #291
- chore: upload --0.2.0 schema update script by @usamoi in #290
- fix: prevent overflow at kmeans by @cutecutecat in #287
- fix: checking of user options by @usamoi in #297
- feat: support pgvector gucs compact by @cutecutecat in #296
- chore: update the release & nightly action by @kemingy in #288
- chore: fix release ci gh upload tag parameter by @kemingy in #300
- chore: allow tag to have a v-prefix by @kemingy in #301
- fix: check if prefilter enabled by @usamoi in #302
- chore: nightly token that can trigger the release workflow by @kemingy in #303
New Contributors
- @cutecutecat made their first contribution in #209
- @JoePassanante made their first contribution in #266
- @xieydd made their first contribution in #283
Full Changelog: v0.0.0-nightly.20231216...v0.2.0-alpha
v0.0.0-nightly.20240123
chore: release
v0.0.0-nightly.20240121
chore: release
v0.0.0-nightly.20240120
chore: release
v0.0.0-nightly.20240119
chore: release
v0.0.0-nightly.20240118
chore: release
v0.0.0-nightly.20240117
chore: release