Hi, I’m curious about why it's necessary to have a database table or additional fields for storing embeddings. Isn’t it possible to obtain query results without saving the embedding data in the table?
Certainly, we need to create embedding data, but it's not essential to store it in the database. The VectorStoreIndex automatically generates embeddings, allowing us to retrieve query results from the index without needing to save the embedding data.
I might be mistaken, so please explain the overall process involving embeddings and similarity search. I'm trying to implement a RAG system, and all the data I want to reference for RAG is stored in PostgreSQL. I collect data from the database, create an index using vectorStoreIndex, and finally obtain query results from the vector index. Why is it necessary to save the embeddings?
I believe vector store index (by default) is just a vector db stored in memory, so the embeddings are being saved. If you're running queries (on the same data) in the future, you would want the embeddings to persist to avoid regenerating them. Please correct me if I'm mistaken
You might be right. However, while working with embeddings in LlamaIndex, I haven't seen any process for saving embeddings to the database or retrieving query results from embeddings that are already stored in the database.
I am focusing this one. this is the sample project with langchain, here, there is no part for saving embedding into the database, it only creates embedding data and retrieve the query result immediately.