MVPilgrim
restore
6b502ec
raw
history blame
1.11 kB
// _ _
// __ _____ __ ___ ___ __ _| |_ ___
// \ \ /\ / / _ \/ _` \ \ / / |/ _` | __/ _ \
// \ V V / __/ (_| |\ V /| | (_| | || __/
// \_/\_/ \___|\__,_| \_/ |_|\__,_|\__\___|
//
// Copyright © 2016 - 2024 Weaviate B.V. All rights reserved.
//
// CONTACT: [email protected]
//
package vectorizer
import (
"context"
"github.com/pkg/errors"
"github.com/weaviate/weaviate/entities/moduletools"
"github.com/weaviate/weaviate/modules/text2vec-transformers/ent"
libvectorizer "github.com/weaviate/weaviate/usecases/vectorizer"
)
func (v *Vectorizer) Texts(ctx context.Context, inputs []string,
cfg moduletools.ClassConfig,
) ([]float32, error) {
vectors := make([][]float32, len(inputs))
for i := range inputs {
res, err := v.client.VectorizeQuery(ctx, inputs[i], ent.VectorizationConfig{
PoolingStrategy: NewClassSettings(cfg).PoolingStrategy(),
})
if err != nil {
return nil, errors.Wrap(err, "remote client vectorize")
}
vectors[i] = res.Vector
}
return libvectorizer.CombineVectors(vectors), nil
}