diff --git a/object/vector_embedding.go b/object/vector_embedding.go index 7c380d4..c91a393 100644 --- a/object/vector_embedding.go +++ b/object/vector_embedding.go @@ -95,25 +95,26 @@ func addEmbeddedVector(authToken string, text string, storeName string, fileName } func addVectorsForStore(authToken string, provider string, key string, storeName string) (bool, error) { - timeLimiter := rate.NewLimiter(rate.Every(time.Minute), 3) + var affected bool + var err error objs, err := getFilteredFileObjects(provider, key) if err != nil { return false, err } - if len(objs) == 0 { - return false, nil - } + timeLimiter := rate.NewLimiter(rate.Every(time.Minute), 3) for _, obj := range objs { - f, err := getObjectFile(obj) + var f io.ReadCloser + f, err = getObjectFile(obj) if err != nil { return false, err } defer f.Close() filename := obj.Key - text, err := ai.ReadFileToString(f, filename) + var text string + text, err = ai.ReadFileToString(f, filename) if err != nil { return false, err } @@ -121,31 +122,19 @@ func addVectorsForStore(authToken string, provider string, key string, storeName textSections := ai.SplitText(text) for _, textSection := range textSections { if timeLimiter.Allow() { - ok, err := addEmbeddedVector(authToken, textSection, storeName, obj.Key) - if err != nil { - return false, err - } - if !ok { - return false, nil - } + affected, err = addEmbeddedVector(authToken, textSection, storeName, obj.Key) } else { - err := timeLimiter.Wait(context.Background()) + err = timeLimiter.Wait(context.Background()) if err != nil { return false, err } - ok, err := addEmbeddedVector(authToken, textSection, storeName, obj.Key) - if err != nil { - return false, err - } - if !ok { - return false, nil - } + affected, err = addEmbeddedVector(authToken, textSection, storeName, obj.Key) } } } - return true, nil + return affected, err } func getRelatedVectors(owner string) ([]*Vector, error) {