12 Learning semantic techniques and Atlas Vector Search

 

This chapter covers

  • Working with embeddings and vector databases
  • Creating an Atlas Vector Search
  • Exploring the $vectorSearch aggregation pipeline stage
  • Using Atlas Triggers to generate embeddings

Chapter 11 introduced Atlas Search, which is built with Apache Lucene. This powerful open source search engine enhances database functionality by providing full-text search capabilities integrated directly into MongoDB.

In this chapter, we explore Atlas Vector Search. This feature, also built on the foundation of Apache Lucene, extends MongoDB’s core server capabilities further by enabling vector-based search functionalities.

12.1 Starting with embeddings

12.1.1 Converting text to embeddings

12.1.2 Understanding vector databases

12.2 Using embeddings with Atlas Vector Search

12.2.1 Building an Atlas Vector Search index

12.2.2 Selecting a Vector Search source

12.2.3 Defining your Vector Search index

12.2.4 Creating an Atlas Vector Search index

12.3 Running Atlas Vector Search queries

12.3.1 Querying with embeddings

12.3.2 Using prefiltering with Atlas Vector Search

12.4 Executing vector search with programming languages

12.4.1 Using vector search with JavaScript

12.4.2 Using vector search and prefiltering with Python

12.4.3 Using vector search with prefilters in Ruby

12.5 Using Atlas Triggers for automated embeddings creation

12.6 Workload isolation with vector search dedicated nodes

12.7 Improving Atlas Vector Search performance

Summary