Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(Pinecone Vector Store Node, Supabase Vector Store Node): Add update operation to vector store nodes #10060

Merged

Conversation

burivuhster
Copy link
Contributor

@burivuhster burivuhster commented Jul 15, 2024

Summary

This pull request adds the update operation to the vector store nodes.
To implement the update operation user needs to specify the ID of an existing embedding.

Important to note:

  1. Update operation could not be implemented the same way as insert operation. It requires input items to correspond 1-1 with the vector store entry (otherwise "update item by ID" operation would make little sense). This is why the vector store node in update mode doesn't have DocumentLoader input and do not split input into chunks.
  2. It uses LangChain VectorStore's upsert feature under the hood. Of the n8n vector store nodes only Pinecone and Supabase had upsert feature implemented so far.
  3. Update mode is disabled by default for new vector store integrations, it should be enabled case by case (i.e. when the vector store provider has upsert implemented in langchain).

Related Linear tickets, Github issues, and Community forum posts

https://linear.app/n8n/issue/AI-202/add-update-operations-to-vector-store-nodes
Docs: n8n-io/n8n-docs#2245

Review / Merge checklist

  • PR title and summary are descriptive. (conventions)
  • Docs updated or follow-up ticket created.
  • Tests included.
  • PR Labeled with release/backport (if the PR is an urgent fix that needs to be backported)

@n8n-assistant n8n-assistant bot added core Enhancement outside /nodes-base and /editor-ui n8n team Authored by the n8n team labels Jul 15, 2024
@burivuhster burivuhster changed the title feat(Vector Store Node) Add update operation to vector store nodes feat(Pinecone Vector Store Node, Supabase Vector Store Node): Add update operation to vector store nodes Jul 16, 2024
@burivuhster burivuhster marked this pull request as ready for review July 16, 2024 15:13
Copy link
Contributor

⚠️ Some Cypress E2E specs are failing, please fix them before merging

Copy link

cypress bot commented Jul 19, 2024

2 flaky tests on run #6005 ↗︎

0 399 0 0 Flakiness 2

Details:

🌳 🖥️ browsers:node18.12.0-chrome107 🤖 burivuhster 🗃️ e2e/*
Project: n8n Commit: fa78722ca7
Status: Passed Duration: 05:14 💡
Started: Jul 19, 2024 7:54 AM Ended: Jul 19, 2024 7:59 AM
Flakiness  5-ndv.cy.ts • 1 flaky test

View Output Video

Test Artifacts
NDV > should not retrieve remote options when required params throw errors Screenshots Video
Flakiness  10-undo-redo.cy.ts • 1 flaky test

View Output Video

Test Artifacts
Undo/Redo > should undo/redo adding nodes Test Replay Screenshots Video

Review all test suite changes for PR #10060 ↗︎

Copy link
Contributor

✅ All Cypress E2E specs passed

@burivuhster burivuhster added the node/improvement New feature or request label Jul 22, 2024
@burivuhster burivuhster merged commit 7e1eeb4 into master Jul 22, 2024
26 of 31 checks passed
@burivuhster burivuhster deleted the ai-202-add-update-operations-to-vector-store-nodes branch July 22, 2024 14:15
@github-actions github-actions bot mentioned this pull request Jul 24, 2024
@janober
Copy link
Member

janober commented Jul 24, 2024

Got released with [email protected]

cstuncsik pushed a commit that referenced this pull request Jul 31, 2024
cstuncsik pushed a commit that referenced this pull request Aug 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core Enhancement outside /nodes-base and /editor-ui n8n team Authored by the n8n team node/improvement New feature or request Released
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants