feat: add OpenAI embedding wrapper and in-memory vector index

This commit is contained in:
2026-05-05 11:26:45 +08:00
parent deffe14e9c
commit efce0ea788
5 changed files with 375 additions and 0 deletions
+28
View File
@@ -0,0 +1,28 @@
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)
}