MCPcopy
hub / github.com/docker/docker-agent / createAutoEmbeddingModel

Function createAutoEmbeddingModel

pkg/rag/strategy/embedding.go:75–98  ·  view source on GitHub ↗

createAutoEmbeddingModel creates an auto-detected embedding model.

(ctx context.Context, buildCtx BuildContext)

Source from the content-addressed store, hash-verified

73
74// createAutoEmbeddingModel creates an auto-detected embedding model.
75func createAutoEmbeddingModel(ctx context.Context, buildCtx BuildContext) (provider.Provider, error) {
76 var lastErr error
77
78 for _, autoModelCfg := range config.AutoEmbeddingModelConfigs() {
79 modelCfg := latest.ModelConfig{
80 Provider: autoModelCfg.Provider,
81 Model: autoModelCfg.Model,
82 }
83
84 model, err := buildCtx.NewProvider(ctx, &modelCfg)
85 if err != nil {
86 lastErr = err
87 continue
88 }
89
90 return model, nil
91 }
92
93 if lastErr == nil {
94 return nil, errors.New("failed to create auto embedding model: no candidates configured")
95 }
96
97 return nil, fmt.Errorf("failed to create auto embedding model: %w", lastErr)
98}
99
100// CreateEmbedder creates an embedder with the specified configuration.
101func CreateEmbedder(embedModel provider.Provider, batchSize, maxConcurrency int) *embed.Embedder {

Callers 1

CreateEmbeddingProviderFunction · 0.85

Calls 3

NewProviderMethod · 0.45
NewMethod · 0.45

Tested by

no test coverage detected