Update the Elasticsearch vector store connector for the latest MEVD changes
- Dominant language
- C#
- Stars
- 21
- Forks
- 4
- Avg merge
- 1h 18m
- Merged PRs (30d)
- 1
Description
Hello, Elastic team!
My name is Adam. I work on the .NET Libraries team and maintain [Microsoft.Extensions.VectorData](https://www.nuget.org/packages/Microsoft.Extensions.VectorData.Abstractions) (MEVD), which [Elastic.SemanticKernel.Connectors.Elasticsearch](https://www.nuget.org/packages/Elastic.SemanticKernel.Connectors.Elasticsearch) integrates with.
We have made several important changes to the MEVD ecosystem. Could you consider updating Elastic.SemanticKernel.Connectors.Elasticsearch to align with them?
- We have released replacement [packages](https://www.nuget.org/packages?q=CommunityToolkit.VectorData&includeComputedFrameworks=true&prerel=true&sortby=relevance) whose names no longer include “SemanticKernel.” They are maintained in the [CommunityToolkit.AI repository](https://github.com/CommunityToolkit/AI/tree/main/MEVD). This naming avoids suggesting that users must adopt Semantic Kernel to use MEVD providers. We plan to deprecate the old packages soon. Could you rename this connector using the recommended `$CompanyName.VectorData` pattern, such as `Elastic.Elasticsearch.VectorData`?
- We have published the MEVD conformance tests as a [NuGet package](https://www.nuget.org/packages/Microsoft.Extensions.VectorData.ConformanceTests). You can remove the [repository’s local copy](https://github.com/elastic/ai-dotnet/tree/af2ce9b727a7090a0c2a57a7179c9ee3b29604a3/test/VectorData.ConformanceTests) and reference Microsoft.Extensions.VectorData.ConformanceTests instead. Starting with version 10.8.2, the package targets xUnit v3, allowing tests to be skipped natively using `Assert.Skip` or `Assert.SkipUnless`. All test methods are virtual, so they can be overridden.
```csharp
public override Task Flat()
{
Assert.SkipUnless(!((CosmosNoSqlTestStore)fixture.TestStore).UsesLocalEmulator, "Not supported on emulator.");
return base.Flat();
}
```
- All MEVD packages are now marked as stable and reference the latest version of `Microsoft.Extensions.VectorData.Abstractions`. We don’t expect to introduce any major breaking changes to MEVD. Could you update the connector’s dependency accordingly?
Please let me know if you have any questions or if any of these changes would be difficult to adopt in this connector.
Thanks,
Adam
cc @Mpdreamz @flobernd @westey-m @roji @sammonort
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by inspecting the connector project files for package naming and Microsoft.Extensions.VectorData dependency declarations, then compare test/VectorData.ConformanceTests with the published Microsoft.Extensions.VectorData.ConformanceTests package. The work is complete when the connector uses the recommended package name and current stable dependency, the local conformance-test copy is removed, and the tests pass with any required skips or overrides.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp, elasticsearch
- Domain
- databases
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100