Skip to content

A repository of code samples for Vector search capabilities in Azure AI Search.

License

Notifications You must be signed in to change notification settings

admsolts/azure-search-vector-samples

 
 

Repository files navigation

Vector samples - Azure AI Search

This repository provides Python, C#, REST, and JavaScript code samples for vector support in Azure AI Search.

There are breaking changes from REST API version 2023-07-01-Preview to newer API versions. These breaking changes also apply to the Azure SDK beta packages targeting that REST API version. See Upgrade REST APIs for migration guidance.

Feature status

Vector support consists of generally available features and preview features.

Feature Status
vector indexing generally available (2023-11-01 and stable SDK packages)
vector queries generally available (2023-11-01 and stable SDK packages)
data chunking (Text Split skill) public preview (2023-10-01-preview and beta SDK packages)
embedding (AzureOpenAiEmbedding skill) public preview (2023-10-01-preview and beta SDK packages)
index projections in skillsets public preview (2023-10-01-preview and beta SDK packages)
vectorizer in index schema public preview (2023-10-01-preview and beta SDK packages)

Integrated data chunking, embedding, vectorizers and projections take a dependency on indexers and skills. These features are in preview under Supplemental Terms of Use.

demo-dotnet samples

Sample Description Status
DotNetVectorDemo A .NET console app that calls Azure OpenAI to vectorize data. It then calls Azure AI Search to create, load, and query vector data. Generally available (GA)
DotNetIntegratedVectorizationDemo A .NET console app that calls Azure AI Search to create an index, indexer, data source, and skillset. An Azure Storage account provides the data. Azure OpenAI is called by the skillset during indexing, and again during query execution to vectorize text queries. Public preview

demo-python samples

Sample Description Status
demo-python/code/*.ipynb A collection of nine notebooks that demonstrate aspects of vector search, including data chunking and vectorization of both text and image content. The most recent one, custom-embeddings/azure-search-custom-vectorization-sample.ipynb, demonstrates how to call custom embedding model from a skillset. GA and preview

demo-java samples

Sample Description Status
demo-vectors Basic workflow of vector indexing and querying on an Azure AI Search service. GA
demo-integrated-vectorization Demonstrates the integrated vectorization capabilities currently in preview, but also includes steps for indexing and querying vectors on an Azure AI Search service. GA and preview

demo-javascript samples

Sample Description Status
JavaScriptVectorDemo A single folder contains three code samples. The azure-search-vector-sample.js script calls just Azure OpenAI and is used to generate embeddings for fields in an index. The docs-text-openai-embeddings.js program is an end-to-end code sample that calls Azure OpenAI for embeddings and Azure AI Seach to create, load, and query an index that contains vectors. The query-text-openai-embeddings.js script generates an embedding for a vector query. GA and preview

postman-collection samples

Sample Description Status
postman-collection Two separate Postman collections of REST API calls for generally available (2023-11-01) and preview (2023-10-01-preview) capabilities. GA version shows you how to create, load, and query vector and non-vector content in an index. Preview version demonstrates integrated data chunking and vectorization through indexers and skillsets. Use the Postman app for these samples. GA and preview

Other vector samples and tools

  • chat-with-your-data-solution-accelerator A template that deploys multiple Azure resources for a custom chat-with-your-data solution. Use this accelerator to create a production-ready solution that implements coding best practices.
  • Azure Search OpenAI Demo A sample app for the Retrieval-Augmented Generation pattern running in Azure, using Azure AI Search for retrieval and Azure OpenAI large language models to power ChatGPT-style and Q&A experiences. Use the "vectors" branch to leverage Vector retrieval.
  • Azure Search OpenAI Demo - C# A sample app for the Retrieval-Augmented Generation pattern running in Azure, using Azure AI Search for retrieval and Azure OpenAI large language models to power ChatGPT-style and Q&A experiences using C#.
  • Azure OpenAI Embeddings QnA with Azure Search as a Vector Store (github.com) A simple web application for a OpenAI-enabled document search. This repo uses Azure OpenAI Service for creating embeddings vectors from documents. For answering the question of a user, using Azure AI Search for retrieval and Azure OpenAI large language models to power ChatGPT-style and Q&A experiences.
  • ChatGPT Retreival Plugin Azure Search Vector Database The ChatGPT Retrieval Plugin lets you easily find personal or work documents by asking questions in natural language. Azure AI Search now supported as an official vector database.
  • Azure Search Vector Search Demo Web App Template A Vector Search Demo React Web App Template using Azure OpenAI for Text Search and Cognitive Services Florence Vision API for Image Search.
  • Azure Cognitive Search Comparison Tool

Documentation

About

A repository of code samples for Vector search capabilities in Azure AI Search.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 93.2%
  • Bicep 1.9%
  • C# 1.5%
  • Java 1.4%
  • Python 1.1%
  • JavaScript 0.8%
  • PowerShell 0.1%