parse-community / parse-community/parse-server
Auto-embedding of text fields into vector fields
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 21.4k
- Forks
- 4.8k
- Avg merge
- 7h 45m
- Merged PRs (30d)
- 11
Description
New Feature / Enhancement Checklist
- Report security issues confidentially.
- Any contribution is under this license.
- Before posting search existing issues.
Current Limitation
Even with a vector field (#10605), developers have to generate embeddings themselves in Cloud Code and keep them in sync whenever the source text changes. That is boilerplate everyone building semantic search would have to repeat.
Feature / Enhancement Description
Declare in the schema that a string field gets embedded into a vector field on save, e.g. description -> descriptionEmbedding. Parse Server keeps the two in sync automatically via an internal save hook, using a server configured embedding provider (#10608).
Example Use Case
- Configure the mapping on a class in the schema
- Save objects normally, no embedding code anywhere
- Semantic search over that class just works via
$nearVector
Alternatives / Workarounds
DIY afterSave trigger that calls an embedding API and writes the vector back. Works, but every app reimplements the same sync, dirty checking and failure handling.
3rd Party References
- Supabase automatic embeddings
- Firebase "vector embeddings with Firestore" extension
Depends on #10605
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the related vector-field issue (#10605) and embedding-provider issue (#10608), then trace Parse Server's schema handling and internal save-hook entry points. Define how a schema mapping such as description -> descriptionEmbedding is configured, synchronized on save, and handles failures; done means semantic search via $nearVector works without application Cloud Code.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, nodejs
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100