Софт

Microsoft представила библиотеку векторных абстракций для .NET

Microsoft представила библиотеку векторных абстракций для .NET

Компания Microsoft объявила о выпуске предварительной версии библиотеки Microsoft Extensions VectorData Abstractions, которая может быть использована для интеграции векторных хранилищ в приложения и библиотеки .NET.

Библиотека призвана облегчить разработчикам интеграцию их решений с Semantic Kernel и более широкой экосистемой .NET AI. Семантическое ядро Microsoft (SK) - это легкий фреймворк с открытым исходным кодом, позволяющий разработчикам сочетать обычные языки программирования с подсказками искусственного интеллекта.

семантическое ядро

Новая библиотека представляет собой набор основных библиотек .NET, обеспечивающих единый уровень абстракций C# для взаимодействия с векторными хранилищами. Ее цель - предоставить поставщикам векторных хранилищ возможность реализовать абстракции .NET в виде упрощенного и легкого пакета. Представляя новую библиотеку, Марк Уоллес, главный инженерный менеджер, сказал:

«Для тех, кто уже знаком с Semantic Kernel, считайте, что Microsoft.Extensions.VectorData - это развитие пакета Microsoft.SemanticKernel.Plugins.Memory, который вы сейчас используете для доступа к векторным хранилищам».

Векторное хранилище обычно находится в векторной базе данных и используется для хранения данных и выполнения векторного поиска. Это цифровая система хранения, в которой хранятся векторы - числа, обеспечивающие уникальный отпечаток для части данных, таких как текст или изображения.

Semantic Kernel и .NET предоставляют абстракцию для взаимодействия с векторными хранилищами и список готовых коннекторов, реализующих эту абстракцию. Функции включают создание, перечисление и удаление коллекций записей, а также загрузку, извлечение и удаление записей. Библиотеки предлагают унифицированный уровень абстракций C#, которые можно использовать для взаимодействия с векторными хранилищами.

На данный момент доступны готовые коннекторы Azure AI Search; Azure CosmosDB; MongoDB; Azure CosmosDB; NoSQL; Elasticsearch; In-memory; JDBC; Pinecone; Qdrant; Redis; SQLite; Volatile (in-memory) и Weaviate.

Основными интерфейсами в абстракции Vector Store являются IVectorStore, который содержит операции, охватывающие все коллекции в векторном хранилище, такие как ListCollectionNames. Он также предоставляет возможность получать экземпляры коллекций записей.

IVectorStoreRecordCollection представляет коллекцию и способ проверить, существует ли коллекция, создать ее или удалить. Интерфейс также предоставляет методы для апсерт, получения и удаления записей.

IVectorizedSearch предоставляет метод для выполнения векторного поиска, а IVectorizableTextSearch может использоваться для поиска, когда векторная база данных имеет возможность автоматически генерировать вкрапления.

Библиотека Microsoft.Extensions.VectorData.Abstractions доступна уже сейчас.

Читайте также