Pinecone Integration #914
Replies: 2 comments 2 replies
-
It seems someone is already in progress of a Pinecone contribution in #770 |
Beta Was this translation helpful? Give feedback.
-
@dluc This is a follow-up to our conversation during office hours. The above comment already has some context but I would like to add some more just to make sure. As of now, Pinecone.NET is feature-complete as far as parity with the official libraries goes. However, it targets .NET 7+, which is incompatible with NS2.0 target of SK. This is warranted by the intention to adhere to the modern C# experience (null safety, required properties, no reflection emit, concise/lean code style). After all, if someone works with cutting edge technologies, they should use newest .NET 😄 However, this means SK cannot use it directly. Current connector implementations in general could be significantly streamlined by naturally leaning on C# and its corelib, with Pinecone being the first since I could adapt Pinecone.NET to SKs codebase directly. Therefore, I was wondering if rewrites of this kind are accepted. Alternatively, I could look into adjusting Pinecone.NET to support NS2.0, and then referencing it from SemanticKernel's connector, if it's possible without sacrificing performance/features. |
Beta Was this translation helpful? Give feedback.
-
I have made a library for working with pinecone.io in C# (with both gRPC and REST transports): https://github.com/neon-sunset/Pinecone.NET
The next step is to provide fully-fledged integration with SemanticKernel. However, I wanted to hear out the suggestions on the best course of action to achieve this.
Considering the existing integrations in SK, would it be appropriate to contribute the integration referencing Pinecone.NET directly to SK or would it be better to publish it as a separate package that implements adapters for embeddings interfaces?
Beta Was this translation helpful? Give feedback.
All reactions