public static IServiceCollection AddElasticsearchVectorStore()

in Elastic.SemanticKernel.Connectors.Elasticsearch/ElasticsearchServiceCollectionExtensions.cs [26:43]


    public static IServiceCollection AddElasticsearchVectorStore(this IServiceCollection services, ElasticsearchVectorStoreOptions? options = default, string? serviceId = default)
    {
        // If we are not constructing the ElasticsearchClient, add the IVectorStore as transient, since we
        // cannot make assumptions about how ElasticsearchClient is being managed.
        services.AddKeyedTransient<IVectorStore>(
            serviceId,
            (sp, _) =>
            {
                var elasticsearchClient = sp.GetRequiredService<ElasticsearchClient>();
                var selectedOptions = options ?? sp.GetService<ElasticsearchVectorStoreOptions>();

                return new ElasticsearchVectorStore(
                    elasticsearchClient,
                    selectedOptions);
            });

        return services;
    }