Files

29 lines
622 B
Go

package embedding
import (
"context"
"github.com/cloudwego/eino-ext/components/embedding/openai"
"github.com/cloudwego/eino/components/embedding"
)
type Embedder struct {
impl embedding.Embedder
}
func NewEmbedder(ctx context.Context, apiKey, baseURL, model string) (*Embedder, error) {
impl, err := openai.NewEmbedder(ctx, &openai.EmbeddingConfig{
APIKey: apiKey,
BaseURL: baseURL,
Model: model,
})
if err != nil {
return nil, err
}
return &Embedder{impl: impl}, nil
}
func (e *Embedder) Embed(ctx context.Context, texts []string) ([][]float64, error) {
return e.impl.EmbedStrings(ctx, texts)
}