Python: Adds a memory connector for Azure Cosmos DB for NoSQL
Motivation and Context
Azure Cosmos DB is adding Vector Similarity APIs to the NoSQL project, and would like Semantic Kernel users to be able to leverage them.
This adds a Memory Connector implementation for Azure Cosmos DB's, including support for the new vector search functionality coming soon in Cosmos DB.
Description
Contribution Checklist
- [ ] The code builds clean without any errors or warnings
- [ ] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
- [ ] All unit tests pass, and I have added new tests where possible
- [ ] I didn't break anyone :smile:
Need to update the pyproject.toml and poetry.lock file once the new version is released for azure-cosmos
@moonbox3 , can you please review this PR as priority, we need this to be merged by this Friday for the Build Conference.
The python SDK will be released today EOD, and I will update the azure-cosmos dependency accordingly.
I have tested the functionality in my local, where it works correctly.
@moonbox3 , can you please review this PR as priority, we need this to be merged by this Friday for the Build Conference.
The python SDK will be released today EOD, and I will update the azure-cosmos dependency accordingly.
I have tested the functionality in my local, where it works correctly.
@aayush3011 Yes, I will review first thing in the morning. Tagging @eavanvalkenburg if he can look during his morning, too, which is before mine.
@aayush3011 you need to run poetry lock --no-update and I'll have a look at the code now
Python 3.10 Test Coverage Report •
report-only-changed-files is enabled. No files were changed during this commit :)File Stmts Miss Cover Missing TOTAL 6176 1036 83%
Python 3.10 Unit Test Overview
| Tests | Skipped | Failures | Errors | Time |
|---|---|---|---|---|
| 1328 | 1 :zzz: | 0 :x: | 0 :fire: | 12.043s :stopwatch: |
@moonbox3 @eavanvalkenburg Please review again, once you get a chance.
Unfortunately the new integration tests for this integration were not updated for the new function names, please have a look @aayush3011