Couple of questions regarding file uploads, file search, and vector stores

I’m developing a Node.js application that calls the Assistants API. I would like to perform RAG by utilizing the FILE SEARCH and VECTOR STORE features.

  1. I intend for my app to have multiple users creating multiple agents. Should the vector store be at the user level or the agent level? I mean should a user’s agents all be able to access the same vector store, or should each vector store be particular to each agent?
  2. I’m currently uploading files using openai.files.create(), then creating a vector store with openai.beta.vectorStores.create() and passing in the newly created FILE IDs, and then creating the assistant with openai.beta.assistants.create() and passing the VECTOR STORE ID to the “tool_resources” property (tool_resources: {
    file_search: { vector_store_ids: […] },
    }). This is working great, but how do I update the vector store when the user uploads a new file at a later date?

Thanks,
Steve