Microsoft Introduces Vector Abstractions Library For .NET
Written by Kay Ewbank   
Thursday, 21 November 2024

Microsoft has announced a preview release of the Microsoft Extensions VectorData Abstractions library, which can be used to help integrate vector stores into .NET applications and libraries.

The library is designed to make it easier for developers to integrate their solutions with Semantic Kernel and the wider .NET AI ecosystem. Microsoft's Semantic Kernel (SK) is an open source lightweight framework that lets developers mix conventional programming languages with AI prompts.

semantic kernel

The new library is a set of core .NET libraries providing a unified layer of C# abstractions for interacting with vector stores. It aims to give vector store vendors a way to implement .NET abstractions through a streamlined, lightweight package. Introducing the new library, Mark Wallace, Principal Engineering Manager, said:

"For those already familiar with Semantic Kernel, think of Microsoft.Extensions.VectorData as the evolution of the Microsoft.SemanticKernel.Plugins.Memory package that you are currently using to access Vector Stores."

A vector store is typically found in a vector database, and is used to store data and perform vector searches. It is a digital storage system that holds vectors, numbers that provide a unique footprint for a piece of data such as text or images.

Semantic Kernel and .NET provide an abstraction for interacting with vector stores and a list of out-of-the-box connectors that implement these abstractions. Features include creating, listing and deleting collections of records, and uploading, retrieving and deleting records. The libraries offer a unified layer of C# abstractions that can be used for interacting with vector stores.

The out-of-the-box connectors available at the moment Azure AI Search; Azure CosmosDB; MongoDB; Azure CosmosDB;  NoSQL; Elasticsearch; In-memory; JDBC; Pinecone; Qdrant; Redis; SQLite;Volatile (in-memory) and Weaviate.

The main interfaces in the Vector Store abstraction are IVectorStore, which contains operations that spans across all collections in the vector store, such as ListCollectionNames. It also provides the ability to get recordcollection instances.

IVectorStoreRecordCollection represents a collection and a way to check if the collection exists, create it or delete it. The interface also provides methods to upsert, get and delete records.

IVectorizedSearch provides a method for doing vector searches, while IVectorizableTextSearch can be used for searches where the vector database has the ability to generate embeddings automatically.

The Microsoft.Extensions.VectorData.Abstractions library is available now.

semantic kernel

More Information

Microsoft.Extensions.VectorData.Abstractions On NuGet

Semantic Store Connectors Guide

Related Articles

MongoDB Adds Vector Search

MariaDB Introduces Vector Search

Semantic Kernel for Java Now GA

Apache Lucene Adds Similarity Vector Searches

Microsoft Goes All Out On Generative AI

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


Linux Foundation Launches Chromium Browser Support
10/01/2025

The Linux Foundation and Google have announced a partnership and launched an initiative in support of Chromium-based browsers.



How To Get More Time To Code
31/12/2024

Amazon recently disclosed that developers spend an average of just one hour per day coding. This finding was reported in an announcement that Amazon Q Developer can now document your code by [ ... ]


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info