tensorchord / pgvecto.rs

Scalable, Low-latency and Hybrid-enabled Vector Search in Postgres. Revolutionize Vector Search, not Database.
https://docs.pgvecto.rs/getting-started/overview.html
Apache License 2.0
1.53k stars 59 forks source link

epic: Support SDKs in different programming languages #440

Open gaocegege opened 3 months ago

gaocegege commented 3 months ago

These are the most popular language SDKs in pgvector.

mertalev commented 3 months ago

Would integration with ORMs be within scope for this? We're working on moving to Prisma for Node.js, but the lack of support for the vector type makes it hard to work with (related).

VoVAllen commented 3 months ago

@mertalev We're interested but lacks of knowledge with that so far. The error message seems related to rust but I didn't see any rust file in prisma. Is there any development guide we can look at for custom type?

mertalev commented 3 months ago

Prisma is split between a JS client and a Rust query engine. The client passes the JS options to the engine, which builds the query, sends it and transforms the response for JS.

The engine and development guide is here. They also have a more high-level explanation of the engine here.

They have experimental support for e.g. PostGIS, so it might help to look at how that was implemented.

Edit: Hmm, it looks like they just support having the PostGIS extension, but don't support the actual index or data type based on this issue.

mertalev commented 3 months ago

Probably the most helpful resource is this PR that adds PostGIS types. It's massive, though, so I'm not sure how big an undertaking this would be.