Reputation: 6595
I'm building a prototype ML system using Postgres-based extension vectorscale
. It goes as follows:
I use a docker image timescale/timescaledb-ha:pg17
I've created a table for embeddings:
CREATE TABLE IF NOT EXISTS products.products_embedding ( embedding_id int8 NOT NULL PRIMARY KEY, "text" varchar(255), embedding vector(3072), metadata json );
I've installed a vectorscale
extension:
CREATE EXTENSION IF NOT EXISTS vectorscale CASCADE;
That all works well and I can see the extension created:
SELECT *
FROM pg_extension; - that lists my `vectorscale` extension
Now, as per documentation, when I attempt to creatre an index, as in:
CREATE INDEX argos_products_embedding_idx ON products.products_embedding
USING diskann (embedding) WITH(num_neighbors=20);
, that blows in my face with the following error:
SQL Error [XX000]: ERROR: assertion failed: meta_page.get_num_dimensions_to_index() > 0 && meta_page.get_num_dimensions_to_index() <= 2000
I tried all sort of values for num_neighbours
between 10 and 100, still getting the same error.
Any help please?
And the bigger question is: vector search on PgVector is rater slow, so I tried to speed that up using an index. Any better ideas on how to achive that than using what I'm doing?
Upvotes: 0
Views: 51