weaviate
34 строки · 913.0 Байт
1// _ _
2// __ _____ __ ___ ___ __ _| |_ ___
3// \ \ /\ / / _ \/ _` \ \ / / |/ _` | __/ _ \
4// \ V V / __/ (_| |\ V /| | (_| | || __/
5// \_/\_/ \___|\__,_| \_/ |_|\__,_|\__\___|
6//
7// Copyright © 2016 - 2024 Weaviate B.V. All rights reserved.
8//
9// CONTACT: hello@weaviate.io
10//
11
12package vectorizer
13
14import (
15"context"
16
17"github.com/pkg/errors"
18"github.com/weaviate/weaviate/entities/moduletools"
19libvectorizer "github.com/weaviate/weaviate/usecases/vectorizer"
20)
21
22func (v *Vectorizer) Texts(ctx context.Context, inputs []string,
23cfg moduletools.ClassConfig,
24) ([]float32, error) {
25vectors := make([][]float32, len(inputs))
26for i := range inputs {
27res, err := v.client.Vectorize(ctx, inputs[i])
28if err != nil {
29return nil, errors.Wrap(err, "remote client vectorize")
30}
31vectors[i] = res.Vector
32}
33return libvectorizer.CombineVectors(vectors), nil
34}
35