Tag: AI-enabled database solutions

Implement vector search (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25โ€“30%)
ย ย  --> Design and implement intelligent search
ย ย ย ย ย  --> Implement vector search


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Implementing vector search is one of the foundational skills for building modern AI-enabled database applications. Vector search enables databases to retrieve information based on semantic meaning rather than exact keyword matches, making it essential for Retrieval-Augmented Generation (RAG), AI assistants, recommendation engines, semantic document search, knowledge management systems, and intelligent enterprise applications.


What Is Vector Search?

Traditional SQL queries search for exact values.

For example:

SELECT *
FROM Products
WHERE ProductName = 'Laptop';

or

WHERE Description LIKE '%wireless%'

These approaches rely on exact text matching.

However, AI applications often need to answer questions like:

“Find documents about reducing cloud costs.”

Relevant documents might contain:

  • Lower Azure spending
  • Optimize infrastructure expenses
  • Cloud cost optimization
  • Reduce operational costs

Although these documents contain different words, they share the same meaning.

Vector search enables databases to find these semantically related documents.


How Vector Search Works

Vector search consists of several stages.

User Query
โ†“
Embedding Model
โ†“
Query Vector
โ†“
Vector Similarity Search
โ†“
Nearest Neighbor Documents
โ†“
(Optional)
Large Language Model (LLM)

Instead of comparing text directly, the database compares numeric vector representations generated by an embedding model.


What Is a Vector?

A vector is a high-dimensional numerical representation of data.

Example:

"Azure SQL Database"
โ†“
[-0.134,
0.281,
0.998,
...
1536 dimensions]

Every document stored in the database has its own embedding vector.

When a user submits a query, the query is also converted into a vector.

The database then compares vectors mathematically to identify the most similar results.


Components of a Vector Search Solution

A complete vector search implementation includes several components.

1. Source Data

Examples include:

  • PDF files
  • Product catalogs
  • Emails
  • Knowledge articles
  • Web pages
  • Support tickets
  • SQL records

2. Embedding Model

The embedding model converts text into vectors.

Popular examples include:

  • Azure OpenAI Embeddings
  • OpenAI text embedding models
  • Sentence Transformers
  • Other compatible embedding models

The embedding model should remain consistent for both indexing and querying.


3. Vector Storage

Embeddings are stored inside the database.

Example table:

DocumentIDContentEmbedding
101Product Manual[1536 values]
102FAQ[1536 values]
103Warranty Guide[1536 values]

Modern SQL databases increasingly support dedicated vector data types.


4. Vector Index

Searching millions of vectors without an index would require comparing every vector.

Vector indexes organize embeddings for efficient similarity searches.

Common vector indexes include:

  • Flat (Exact Search)
  • HNSW
  • IVF
  • IVF + Product Quantization (PQ)

Approximate Nearest Neighbor (ANN) indexes are commonly used in production systems because they significantly reduce search latency while maintaining high recall.


5. Similarity Function

The database determines which vectors are closest.

Common similarity metrics include:

  • Cosine similarity
  • Euclidean distance
  • Dot product

Cosine similarity is the most common metric for semantic search.


Exact Search vs Approximate Search

Exact (Brute Force) Search

The database compares the query vector against every stored vector.

Advantages:

  • Perfect accuracy
  • Guaranteed nearest neighbors

Disadvantages:

  • Slow
  • Poor scalability

Best suited for:

  • Small datasets
  • Testing
  • Validation

Approximate Nearest Neighbor (ANN)

ANN indexes intelligently reduce the search space.

Advantages:

  • Extremely fast
  • Scales to millions or billions of vectors
  • Lower CPU utilization

Tradeoff:

Results are highly accurate but not mathematically perfect.

Most enterprise AI applications use ANN search.


Implementing Vector Search

A typical implementation follows these steps.

Step 1. Prepare Data

Collect the documents.

Examples:

  • Product manuals
  • Policies
  • Emails
  • Support articles

Clean the text by removing unnecessary formatting and duplicate content.


Step 2. Generate Embeddings

Use an embedding model to create vectors.

Example workflow:

Document
โ†“
Embedding Model
โ†“
1536-Dimensional Vector

Each document receives one or more embeddings.


Step 3. Store Embeddings

Store:

  • Original text
  • Metadata
  • Embedding vector

Example:

DocumentIDCategoryContentEmbedding
501HRVacation PolicyVector
502ITVPN SetupVector

Metadata enables additional filtering during searches.


Step 4. Create a Vector Index

The vector index accelerates similarity searches.

Without an index:

Query
โ†“
Compare to every vector

With an ANN index:

Query
โ†“
Index
โ†“
Small candidate set
โ†“
Best matches

Step 5. Convert User Query

The user’s search query is embedded using the same embedding model.

Example:

"How do I connect remotely?"
โ†“
Embedding Model
โ†“
Query Vector

Consistency is critical. Using a different embedding model for queries than for indexed documents can significantly reduce search quality.


Step 6. Perform Similarity Search

The database compares the query vector with stored vectors.

Example SQL pseudocode:

SELECT TOP 5
DocumentID,
SimilarityScore
FROM Documents
ORDER BY VECTOR_DISTANCE(Embedding, @QueryVector);

The exact syntax varies depending on the database platform and vector search implementation.


Step 7. Return Results

The application retrieves the closest documents.

Example:

RankDocument
1VPN Configuration Guide
2Remote Access FAQ
3Employee Network Policy

Vector Search Workflow

Documents
โ†“
Generate Embeddings
โ†“
Store Vectors
โ†“
Create Vector Index
โ†“
User Query
โ†“
Generate Query Embedding
โ†“
Similarity Search
โ†“
Top Matching Documents

Filtering Vector Search Results

Many applications combine vector search with traditional SQL filtering.

Example:

Semantic Search
+
WHERE Department = 'Finance'
+
ORDER BY Similarity

This approach is often called hybrid filtering, allowing organizations to limit searches by structured metadata while still leveraging semantic similarity.

Examples of filters include:

  • Department
  • Date
  • Customer
  • Region
  • Security classification
  • Language

Hybrid Search

Hybrid search combines:

  • Keyword search
  • Full-text search
  • Vector search

Example:

Keyword Search
+
Vector Search
โ†“
Combined Ranking
โ†“
Final Results

Benefits include:

  • Higher relevance
  • Better handling of synonyms
  • Stronger ranking
  • Improved user satisfaction

Many enterprise AI search systems use hybrid search instead of vector search alone.


Using Vector Search in RAG

Retrieval-Augmented Generation relies heavily on vector search.

Workflow:

User Question
โ†“
Embedding
โ†“
Vector Search
โ†“
Relevant Documents
โ†“
LLM
โ†“
Grounded Response

Instead of relying solely on the LLM’s training data, the model uses retrieved documents as grounding data.

Benefits:

  • More accurate responses
  • Reduced hallucinations
  • Access to current organizational knowledge

Common Vector Search Scenarios

Enterprise Knowledge Search

Users ask natural language questions.

Example:

“How do I reset my VPN password?”

The database retrieves the most semantically relevant documentation.


Customer Support

Support engineers search:

“Printer won’t connect.”

Relevant troubleshooting documents are retrieved even if they use different wording.


Product Recommendation

Customers searching for:

“Comfortable running shoes”

may receive products described as:

  • Lightweight trainers
  • Cushioned athletic footwear
  • Marathon shoes

Legal Document Search

Law firms search by legal concepts rather than exact wording.


Healthcare Knowledge Bases

Clinicians retrieve similar cases based on symptoms rather than identical terminology.


Performance Considerations

Database developers should evaluate:

Search Latency

Users expect responses within milliseconds.

ANN indexes dramatically reduce latency.


Recall

Recall measures how many of the true nearest neighbors are returned.

Higher recall generally improves RAG quality.


Index Size

Larger indexes often improve retrieval quality but require more memory.


Memory Consumption

HNSW indexes typically consume more RAM than compressed indexes.


Index Build Time

Large vector indexes may require significant time to build.

Plan for maintenance windows when rebuilding indexes.


Update Frequency

Applications with frequent inserts and deletes should use index types that efficiently support incremental updates.


Common Implementation Mistakes

Using Different Embedding Models

Documents embedded with one model should not be searched using vectors generated by a different model.


Using the Wrong Similarity Metric

Many embedding models assume cosine similarity.

Using Euclidean distance or dot product incorrectly may reduce search accuracy.


Not Creating a Vector Index

Searching without an index performs poorly on large datasets.


Ignoring Metadata

Metadata filtering significantly improves result quality.


Returning Too Many Documents

Retrieving excessive documents increases latency and may overwhelm downstream LLMs in RAG systems.


Best Practices

  • Use the same embedding model for indexing and querying.
  • Choose a similarity metric recommended for the embedding model.
  • Use ANN indexes for production environments.
  • Combine vector search with metadata filters when appropriate.
  • Consider hybrid search for the highest-quality results.
  • Benchmark recall, latency, and throughput using realistic workloads.
  • Monitor index growth and rebuild or optimize indexes when necessary.
  • Store both embeddings and the original source content.

DP-800 Exam Tips

Remember these key points for the exam:

  • Vector search retrieves data based on semantic similarity rather than exact text.
  • Embeddings are numerical representations generated by AI models.
  • The same embedding model should be used for both indexing and querying.
  • Vector indexes improve search performance by reducing the number of vector comparisons.
  • Approximate Nearest Neighbor (ANN) indexes provide fast searches with high recall.
  • Cosine similarity is the most commonly used metric for semantic search.
  • Hybrid search combines keyword search with vector search to improve relevance.
  • Vector search is a core component of Retrieval-Augmented Generation (RAG).

Practice Exam Questions

Question 1

A company is building a chatbot that answers employee questions using internal policy documents. The solution converts both documents and user queries into embeddings before searching for relevant information.

What is the primary purpose of generating embeddings?

A. To compress documents for storage

B. To represent text numerically so semantic similarity can be measured

C. To encrypt sensitive information

D. To improve SQL transaction performance

Answer: B

Explanation:
Embeddings convert text into high-dimensional numerical vectors that capture semantic meaning. These vectors enable similarity comparisons that go beyond exact keyword matching.


Question 2

A developer plans to implement vector search against a database containing 30 million document embeddings.

Which approach provides the best balance between scalability and query performance?

A. Sequentially compare every vector

B. Use a clustered index

C. Use an Approximate Nearest Neighbor (ANN) vector index

D. Create additional foreign keys

Answer: C

Explanation:
ANN indexes are specifically designed to support efficient vector similarity searches across very large datasets while maintaining high recall and low latency.


Question 3

A user searches for:

“Affordable cloud storage”

The returned documents discuss:

  • Cost-effective cloud backup
  • Low-cost online storage
  • Budget-friendly data storage

Why were these documents returned?

A. SQL wildcard matching

B. Lexical keyword matching

C. Primary key lookup

D. Semantic similarity using vector search

Answer: D

Explanation:
Vector search retrieves content based on semantic meaning rather than identical words, enabling related concepts and synonyms to be found.


Question 4

Which statement best describes hybrid search?

A. It combines vector search with keyword or full-text search.

B. It stores vectors in multiple databases.

C. It replaces embeddings with SQL indexes.

D. It searches only relational columns.

Answer: A

Explanation:
Hybrid search combines traditional lexical search with semantic vector search, often producing more relevant and comprehensive search results.


Question 5

Why should the same embedding model be used for both document indexing and query generation?

A. It reduces storage costs.

B. It eliminates the need for vector indexes.

C. It ensures vectors exist in the same semantic space for meaningful comparisons.

D. It automatically creates SQL indexes.

Answer: C

Explanation:
Embeddings generated by different models may occupy different vector spaces, making similarity calculations unreliable and reducing retrieval quality.


Question 6

What is the primary function of a vector index?

A. Encrypt embedding vectors

B. Reduce the number of vector comparisons during searches

C. Compress relational tables

D. Replace SQL indexes

Answer: B

Explanation:
Vector indexes organize embeddings so the search engine evaluates only the most promising candidates instead of comparing every stored vector.


Question 7

A Retrieval-Augmented Generation (RAG) application performs vector search before sending retrieved documents to a large language model.

Why is this retrieval step important?

A. It reduces SQL storage requirements.

B. It converts SQL tables into vectors.

C. It grounds the model with relevant information, improving response accuracy.

D. It eliminates the need for embeddings.

Answer: C

Explanation:
RAG retrieves relevant documents that provide context to the LLM, helping produce accurate, current, and evidence-based responses while reducing hallucinations.


Question 8

Which SQL capability is most commonly combined with vector search to narrow search results to specific business data?

A. Metadata filtering using WHERE clauses

B. ALTER TABLE statements

C. Transaction logging

D. Foreign key constraints

Answer: A

Explanation:
Combining vector search with structured SQL filters allows applications to restrict results by attributes such as department, region, or document type while maintaining semantic relevance.


Question 9

A developer performs vector similarity searches without creating a vector index.

What is the most likely consequence?

A. Embeddings become corrupted.

B. Query performance decreases significantly as the dataset grows.

C. SQL transactions stop working.

D. Documents cannot be embedded.

Answer: B

Explanation:
Without a vector index, the system typically performs an exhaustive comparison against every stored vector, resulting in much slower query performance on large datasets.


Question 10

Which statement best summarizes the role of vector search in AI-enabled database applications?

A. It replaces relational databases.

B. It removes the need for SQL queries.

C. It automatically generates embeddings.

D. It enables retrieval of information based on semantic meaning instead of exact text matching.

Answer: D

Explanation:
Vector search is designed to retrieve semantically similar information by comparing embedding vectors, making it a foundational capability for intelligent search, recommendation systems, and RAG-based applications.


Go to the DP-800 Exam Prep Hub main page

Implement hybrid search (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25โ€“30%)
ย ย  --> Design and implement intelligent search
ย ย ย ย ย  --> Implement hybrid search


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Hybrid search is a core capability for modern AI-enabled database solutions because it combines the strengths of traditional keyword search and vector (semantic) search. By leveraging both lexical and semantic matching techniques, hybrid search delivers more accurate, relevant, and context-aware search results than either approach alone. Hybrid search is widely used in Retrieval-Augmented Generation (RAG) applications, enterprise knowledge bases, AI assistants, recommendation systems, and intelligent search platforms.


What Is Hybrid Search?

Hybrid search combines multiple search techniques into a single query, typically including:

  • Keyword search
  • Full-text search
  • Vector (semantic) search

Instead of relying on only one search method, hybrid search retrieves candidates from multiple search engines and combines the results using a ranking algorithm.

For example, consider a user searching for:

“How do I reduce Azure storage costs?”

A keyword search might find documents containing the exact terms:

  • Azure
  • Storage
  • Costs

A vector search might retrieve documents discussing:

  • Lower cloud expenses
  • Optimize storage spending
  • Reduce infrastructure costs

Hybrid search combines both result sets and ranks the most relevant documents at the top.


Why Hybrid Search Is Important

Neither keyword search nor vector search is perfect by itself.

Keyword Search Strengths

Keyword search excels at finding:

  • Exact product names
  • Error codes
  • File names
  • Database object names
  • Technical terminology

Example:

SQL72014

A keyword search finds documents containing that exact error code.


Keyword Search Weaknesses

Keyword search struggles with:

  • Synonyms
  • Different wording
  • Natural language
  • Conceptual relationships

Example:

Search:

“Vacation policy”

Document:

“Paid time off guidelines”

Although both describe the same concept, keyword search may not find the document.


Vector Search Strengths

Vector search understands meaning.

Example:

Search:

“Improve application speed”

Documents discussing:

  • Performance optimization
  • Query tuning
  • Faster database execution

can all be returned because their embeddings are semantically similar.


Vector Search Weaknesses

Vector search may struggle with:

  • Product IDs
  • Version numbers
  • Error codes
  • Exact names
  • Highly specialized terminology

Example:

Searching for:

SQL71561

works better with keyword search.


Hybrid Search Combines Both Approaches

User Query
โ†“
Keyword Search
+
Vector Search
โ†“
Combined Results
โ†“
Ranking
โ†“
Top Results

This allows users to benefit from both lexical precision and semantic understanding.


How Hybrid Search Works

A hybrid search implementation generally follows these steps.

Step 1. User Submits a Query

Example:

“How do I configure Azure SQL backups?”


Step 2. Keyword Search Executes

The database searches for:

  • Azure
  • SQL
  • Backups
  • Configure

using:

  • Full-text indexes
  • SQL predicates
  • Traditional search indexes

Step 3. Vector Search Executes

The same query is converted into an embedding.

Query
โ†“
Embedding Model
โ†“
Vector

The vector is compared against stored document embeddings.


Step 4. Merge Results

Suppose keyword search returns:

DocumentScore
Backup Overview95
SQL Backup Guide90

Vector search returns:

DocumentScore
Disaster Recovery93
Data Protection88

The system merges these candidate sets.


Step 5. Rank Results

The ranking engine evaluates:

  • Keyword relevance
  • Semantic similarity
  • Metadata
  • Popularity
  • Freshness
  • Business rules

The highest-ranking documents are returned.


Components of a Hybrid Search Solution

Source Documents

Examples include:

  • PDFs
  • Product documentation
  • Knowledge articles
  • Support tickets
  • Policies
  • Emails
  • SQL records

Full-Text Index

Supports traditional keyword searching.

Optimized for:

  • Exact phrases
  • Words
  • Wildcards
  • Boolean searches

Embedding Model

Generates vector representations for documents and queries.

Examples:

  • Azure OpenAI Embeddings
  • OpenAI embedding models
  • Sentence Transformers

The same embedding model should be used during indexing and querying.


Vector Index

Stores embeddings for efficient semantic search.

Examples:

  • HNSW
  • IVF
  • Flat index
  • Product Quantization (PQ)

Ranking Engine

Combines multiple signals into a single relevance score.


Search Pipeline

User Query
โ†“
Keyword Search
\
\
Ranking Engine
/
/
Vector Search
โ†“
Combined Results

Both searches occur independently before the results are combined.


Ranking in Hybrid Search

Hybrid search is more than simply combining two result lists.

Each result receives a relevance score based on multiple factors.

Typical ranking signals include:

  • Keyword score
  • Vector similarity score
  • Document freshness
  • Popularity
  • User permissions
  • Metadata
  • Business importance

The ranking algorithm determines the final ordering.


Metadata Filtering

Hybrid search often includes structured SQL filters.

Example:

WHERE Department = 'Finance'

or

WHERE DocumentType = 'Policy'

The search becomes:

Keyword Search
+
Vector Search
+
Metadata Filters
โ†“
Ranking

Filtering improves both relevance and performance.


Hybrid Search in RAG

Hybrid search is commonly used in Retrieval-Augmented Generation.

Workflow:

User Question
โ†“
Hybrid Search
โ†“
Relevant Documents
โ†“
Large Language Model
โ†“
Grounded Response

Benefits include:

  • Higher-quality context
  • Reduced hallucinations
  • More complete retrieval
  • Better factual accuracy

Example Scenario

Suppose an employee asks:

“How do I access my benefits after changing jobs?”

Keyword search retrieves:

  • Benefits
  • Jobs

Vector search retrieves:

  • Employee transition
  • HR onboarding
  • Employment status changes

Hybrid search combines both sets, increasing the likelihood of returning the most relevant documents.


Hybrid Search vs Keyword Search

FeatureKeyword SearchHybrid Search
Exact termsExcellentExcellent
SynonymsPoorExcellent
Natural languageLimitedExcellent
Error codesExcellentExcellent
Semantic understandingNoneExcellent
AI applicationsLimitedExcellent

Hybrid Search vs Vector Search

FeatureVector SearchHybrid Search
Semantic understandingExcellentExcellent
Exact identifiersModerateExcellent
Error codesModerateExcellent
Product namesModerateExcellent
Natural languageExcellentExcellent
Overall relevanceHighVery High

Benefits of Hybrid Search

Better Relevance

Combines multiple search signals.


Handles Synonyms

Users don’t need exact wording.


Supports Technical Queries

Keyword search finds:

  • Error codes
  • File names
  • Product names

Supports Natural Language

Vector search understands concepts.


Improved User Satisfaction

Users receive better search results.


Better RAG Responses

The LLM receives more relevant context.


Challenges

Increased Complexity

Two search systems must be maintained.


Higher Resource Usage

Both keyword and vector searches execute.


Ranking Tuning

Determining the correct weighting between keyword and semantic scores may require experimentation.


Embedding Maintenance

Embeddings should be regenerated when source content changes significantly or when migrating to a new embedding model.


Common Hybrid Search Scenarios

Enterprise Knowledge Bases

Employees search documentation using natural language.


Customer Support

Support agents retrieve troubleshooting articles using both error codes and descriptive questions.


Product Catalogs

Customers search using product names, descriptions, or intent.


Healthcare

Clinicians search using symptoms while also matching standardized medical terminology.


Legal Research

Lawyers search using statutes, case numbers, and legal concepts.


Financial Services

Analysts search reports using account identifiers and descriptive business questions.


Best Practices

  • Combine full-text and vector search for production AI applications.
  • Use the same embedding model during indexing and querying.
  • Create appropriate full-text and vector indexes.
  • Apply metadata filters whenever possible.
  • Tune ranking weights using representative user queries.
  • Evaluate both precision and recall during testing.
  • Continuously monitor search quality and user feedback.
  • Refresh embeddings when source documents change significantly.
  • Secure search results using role-based access controls and document permissions.

DP-800 Exam Tips

Remember these key points for the exam:

  • Hybrid search combines traditional keyword search with vector search.
  • Keyword search excels at exact terms, identifiers, and technical strings.
  • Vector search excels at semantic meaning and natural language.
  • Hybrid search generally provides better relevance than either approach alone.
  • Ranking combines multiple signals, including lexical relevance, semantic similarity, and metadata.
  • Metadata filtering improves both performance and result quality.
  • Hybrid search is commonly used in Retrieval-Augmented Generation (RAG) systems.
  • The same embedding model should be used for both indexing and querying to ensure meaningful vector comparisons.

Practice Exam Questions

Question 1

A company is building an AI-powered knowledge base that must support searches for both exact error codes and natural language questions.

Which search approach is most appropriate?

A. Hybrid search

B. Keyword search only

C. Vector search only

D. Relational indexing only

Answer: A

Explanation:
Hybrid search combines keyword and vector search, enabling both exact matching for error codes and semantic matching for natural language queries.


Question 2

A user searches for:

“Improve database response time”

The system returns documents discussing query tuning, indexing strategies, and SQL optimization, even though those exact words were not used.

Which component enabled this behavior?

A. Full-text search

B. Vector search

C. Clustered indexes

D. Foreign key constraints

Answer: B

Explanation:
Vector search compares embeddings that capture semantic meaning, allowing conceptually related documents to be retrieved even when different wording is used.


Question 3

What is the primary purpose of the ranking engine in a hybrid search solution?

A. Generate document embeddings

B. Create vector indexes

C. Combine and order results from multiple search methods

D. Encrypt search results

Answer: C

Explanation:
The ranking engine merges results from keyword and vector searches and orders them using relevance signals such as lexical score, semantic similarity, freshness, and metadata.


Question 4

Which type of query is generally handled most effectively by keyword search?

A. “How can I reduce cloud expenses?”

B. “Best practices for disaster recovery”

C. “Ways to improve SQL performance”

D. “SQL71561”

Answer: D

Explanation:
Exact identifiers such as error codes, product names, and version numbers are best handled using keyword or full-text search.


Question 5

Why is hybrid search commonly used in Retrieval-Augmented Generation (RAG) applications?

A. It eliminates the need for embeddings.

B. It improves retrieval quality by combining lexical and semantic matching.

C. It replaces large language models.

D. It removes the need for vector indexes.

Answer: B

Explanation:
Hybrid search retrieves more comprehensive and relevant information than either keyword or vector search alone, providing higher-quality context to the LLM.


Question 6

A search solution first performs keyword search, then vector similarity search, and finally combines both result sets.

Which step typically follows next?

A. Delete duplicate documents from the database.

B. Recreate all vector indexes.

C. Rank the combined results using relevance signals.

D. Generate new embeddings for every document.

Answer: C

Explanation:
After gathering candidate documents, the ranking engine evaluates multiple relevance signals to determine the final ordering presented to the user.


Question 7

Which statement best describes metadata filtering in hybrid search?

A. It replaces vector search.

B. It restricts search results using structured attributes such as department or document type.

C. It converts SQL tables into embeddings.

D. It automatically updates document embeddings.

Answer: B

Explanation:
Metadata filters narrow the search scope using structured data while still allowing semantic and keyword search within the filtered dataset.


Question 8

A developer configures hybrid search using one embedding model for indexing documents and a different embedding model for processing user queries.

What is the most likely result?

A. Improved semantic accuracy.

B. Reduced index size.

C. Faster query execution.

D. Lower-quality semantic matches because vectors occupy different embedding spaces.

Answer: D

Explanation:
Embeddings produced by different models are generally not directly comparable, leading to poorer semantic similarity calculations and less relevant search results.


Question 9

Which advantage does hybrid search have over vector search alone?

A. It supports exact matching for identifiers while preserving semantic search capabilities.

B. It eliminates the need for full-text indexes.

C. It guarantees mathematically perfect search results.

D. It removes the need for metadata.

Answer: A

Explanation:
Hybrid search enhances vector search by adding lexical matching, making it more effective for exact terms such as product names, file names, and error codes.


Question 10

Which best practice should a database developer follow when implementing hybrid search?

A. Use different embedding models for documents and queries.

B. Disable metadata filtering to improve semantic search.

C. Combine full-text search, vector search, and structured filtering to improve relevance.

D. Use exhaustive vector search for every production workload regardless of size.

Answer: C

Explanation:
A well-designed hybrid search solution combines lexical search, semantic search, and structured metadata filtering to maximize relevance, scalability, and user satisfaction in AI-enabled database applications.


Go to the DP-800 Exam Prep Hub main page

Implement reciprocal rank fusion (RRF) (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25โ€“30%)
ย ย  --> Design and implement intelligent search
ย ย ย ย ย  --> Implement reciprocal rank fusion (RRF)


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Reciprocal Rank Fusion (RRF) is an important ranking technique used in modern hybrid search systems. It enables AI-enabled database solutions to combine results from multiple search algorithmsโ€”such as full-text search and vector searchโ€”into a single ranked result set. RRF is widely used in Retrieval-Augmented Generation (RAG), enterprise search, Azure AI Search, recommendation systems, and intelligent database applications because it consistently produces high-quality search results without requiring complex score normalization.


What Is Reciprocal Rank Fusion (RRF)?

Reciprocal Rank Fusion (RRF) is a rank aggregation algorithm that combines multiple independently ranked result lists into one unified ranking.

Instead of comparing the actual relevance scores produced by different search algorithms, RRF considers only the position (rank) of each document within each result list.

This makes RRF particularly effective when combining search methods that produce different types of scores.

For example:

  • Full-text search may produce BM25 relevance scores.
  • Vector search may produce cosine similarity scores.
  • Semantic rerankers may produce AI-generated relevance scores.

Because these scoring systems are different and often not directly comparable, RRF combines rankings instead of raw scores.


Why Is RRF Needed?

Modern AI search systems often execute multiple searches simultaneously.

Example:

User query:

“How do I secure Azure SQL backups?”

The search system performs:

  • Full-text search
  • Vector search
  • Metadata filtering
  • Optional semantic reranking

Each search returns different documents with different scoring methods.

Without RRF, combining these results would be difficult because:

  • BM25 scores are not directly comparable to cosine similarity scores.
  • Different algorithms have different score ranges.
  • Some algorithms produce probabilities.
  • Others produce similarity values.

RRF eliminates this problem by using document rankings instead of score values.


Traditional Score Combination Problems

Suppose two searches return:

Keyword Search

RankDocumentBM25 Score
1Doc A98
2Doc B91
3Doc C88

Vector Search

RankDocumentCosine Similarity
1Doc C0.95
2Doc D0.94
3Doc A0.92

Notice:

  • BM25 scores range around 90โ€“100.
  • Cosine similarity ranges between approximately -1 and 1 (typically 0โ€“1 for normalized embeddings).

Adding these scores directly would not produce meaningful results.


How RRF Works

RRF ignores the raw scores.

Instead, it assigns each document a score based on its ranking position.

Conceptually:

RRF Score = ฮฃ 1 / (k + rank)

Where:

  • rank = the document’s position in each result list.
  • k = a constant (commonly 60) that reduces the impact of very high rankings and smooths the score distribution.

The exact value of k is implementation-specific, but many search platformsโ€”including Azure AI Searchโ€”use a default value of 60.

The important DP-800 exam concept is that RRF combines rankings rather than raw relevance scores.


Example of RRF

Suppose two searches return:

Keyword Search

RankDocument
1A
2B
3C

Vector Search

RankDocument
1C
2A
3D

RRF rewards documents appearing in both lists.

Document A:

  • Rank 1 in keyword search
  • Rank 2 in vector search

Document C:

  • Rank 3 in keyword search
  • Rank 1 in vector search

Both receive relatively high RRF scores because they rank well in multiple searches.

Documents appearing in only one list receive lower combined scores.


RRF Search Pipeline

User Query
โ†“
Keyword Search
\
\
\
RRF
/
/
Vector Search
โ†“
Combined Ranked Results

Each search executes independently.

RRF merges the rankings.


Why Ranking Is Better Than Combining Scores

Consider two scoring systems.

Keyword search:

95
82
79

Vector search:

0.97
0.94
0.92

These values represent different measurements.

Instead of trying to normalize them, RRF simply uses:

Rank 1
Rank 2
Rank 3

This approach is:

  • Simpler
  • More stable
  • More reliable
  • Independent of score scales

RRF in Hybrid Search

Hybrid search commonly executes:

  • Keyword search
  • Full-text search
  • Vector search

Each produces candidate documents.

RRF combines them into one ranked list.

Example:

Keyword Results
โ†“
RRF
โ†‘
Vector Results
โ†“
Final Results

This is one of the most common implementations in enterprise AI search systems.


RRF in Retrieval-Augmented Generation (RAG)

RAG applications depend on retrieving the most relevant documents.

Workflow:

User Question
โ†“
Hybrid Search
โ†“
RRF Ranking
โ†“
Top Documents
โ†“
Large Language Model
โ†“
Grounded Response

Benefits include:

  • Better retrieval quality
  • Better grounding
  • More complete context
  • Reduced hallucinations

Advantages of RRF

Simple

No complex score normalization is required.


Algorithm Independent

Works with:

  • BM25
  • Vector similarity
  • AI ranking
  • Other retrieval algorithms

Better Retrieval Quality

Documents consistently ranked highly across multiple search methods naturally rise to the top.


Robust

Minor score differences between search algorithms do not significantly affect results.


Easy to Scale

Additional search algorithms can be incorporated into the fusion process without redesigning the ranking approach.


Example Enterprise Scenario

Suppose an employee searches:

“Configure disaster recovery”

Keyword search returns:

  • Disaster Recovery Guide
  • Backup Documentation

Vector search returns:

  • Business Continuity Planning
  • Disaster Recovery Guide
  • Failover Procedures

RRF recognizes that Disaster Recovery Guide appears near the top of both lists and promotes it in the final ranking.


RRF Compared to Score Averaging

Score Averaging

Requires:

  • Score normalization
  • Matching score scales
  • Additional tuning

Problems:

  • Different algorithms use different scoring methods.
  • Difficult to compare heterogeneous scores.

Reciprocal Rank Fusion

Uses:

  • Ranking positions only

Benefits:

  • Simpler
  • More reliable
  • Independent of scoring scales
  • Common in production AI search systems

RRF Compared to Semantic Reranking

These concepts are related but different.

Reciprocal Rank FusionSemantic Reranking
Combines multiple ranked listsReorders documents using an AI model
Uses document positionsUses semantic understanding
Doesn’t read document contentEvaluates document meaning
Runs before semantic reranking in many architecturesOften runs after candidate retrieval

Many enterprise AI search solutions use both techniques:

  1. Keyword search
  2. Vector search
  3. RRF
  4. Semantic reranking
  5. Return results

RRF in AI-Enabled Database Solutions

Modern AI-enabled SQL solutions increasingly combine:

  • SQL filtering
  • Full-text search
  • Vector search
  • Hybrid search
  • RRF
  • Retrieval-Augmented Generation

These capabilities enable intelligent applications to retrieve highly relevant information while leveraging existing relational database technologies.


Performance Considerations

Multiple Searches

Hybrid search requires multiple searches to execute.

This increases computational work compared to using only one search method.


Improved Relevance

The additional processing typically results in significantly better retrieval quality.


Candidate List Size

Most systems apply RRF to the top-ranked candidates from each search rather than the entire dataset.


Low Computational Overhead

RRF calculations are lightweight because they operate on rankings instead of comparing vector values or processing document contents.


Best Practices

  • Use RRF when combining keyword and vector search results.
  • Avoid directly comparing raw scores from different retrieval algorithms.
  • Retrieve an appropriate number of candidate documents from each search before applying RRF.
  • Combine RRF with metadata filtering when appropriate.
  • Use semantic reranking after RRF if supported by the platform.
  • Evaluate retrieval quality using representative business queries.
  • Monitor precision and recall when tuning hybrid search solutions.

DP-800 Exam Tips

Remember these key points for the exam:

  • Reciprocal Rank Fusion (RRF) combines ranked search results, not raw relevance scores.
  • RRF is commonly used in hybrid search systems.
  • RRF works well because keyword search scores and vector similarity scores are not directly comparable.
  • Documents ranked highly by multiple search algorithms receive higher final rankings.
  • RRF is lightweight, scalable, and independent of the underlying retrieval algorithms.
  • RRF is frequently used in Retrieval-Augmented Generation (RAG) to improve document retrieval before passing context to an LLM.
  • Semantic reranking and RRF are complementary techniques; RRF typically merges candidate lists before optional semantic reranking.

Practice Exam Questions

Question 1

A developer is combining results from a keyword search and a vector similarity search. The two searches produce different scoring scales.

Which ranking technique is specifically designed to combine these results without comparing the raw scores?

A. Reciprocal Rank Fusion (RRF)

B. Euclidean Distance

C. Product Quantization

D. HNSW

Answer: A

Explanation:
RRF combines ranked result lists instead of raw relevance scores, making it ideal for merging results from search algorithms that use different scoring methods.


Question 2

What information does Reciprocal Rank Fusion primarily use when calculating a document’s combined relevance?

A. The document’s embedding values

B. The raw BM25 score

C. The document’s position (rank) in each result list

D. The number of words in the document

Answer: C

Explanation:
RRF uses the ranking position of documents in each search result list rather than their raw scores, allowing it to combine heterogeneous search results effectively.


Question 3

Why is RRF commonly used in hybrid search?

A. It generates embeddings automatically.

B. It combines keyword and vector search results using document rankings.

C. It replaces vector indexes.

D. It eliminates full-text search.

Answer: B

Explanation:
Hybrid search often combines keyword and vector searches. RRF merges the ranked results without requiring score normalization.


Question 4

A document appears near the top of both keyword search and vector search results.

How will RRF typically treat this document?

A. It will remove it as a duplicate.

B. It will assign it a lower ranking because it appears twice.

C. It will ignore the vector search ranking.

D. It will rank the document higher in the final results.

Answer: D

Explanation:
Documents that consistently rank highly across multiple search methods receive higher combined RRF scores and are promoted in the final ranking.


Question 5

Which challenge does RRF help solve?

A. Encrypting document embeddings

B. Creating vector indexes

C. Combining search algorithms that produce different relevance score scales

D. Compressing embedding vectors

Answer: C

Explanation:
Because keyword search, vector search, and semantic search often use different scoring systems, RRF combines rankings instead of attempting to compare incompatible scores.


Question 6

Which statement best describes Reciprocal Rank Fusion?

A. It performs semantic reranking by analyzing document content.

B. It combines ranked search results from multiple retrieval methods.

C. It generates vector embeddings.

D. It creates Approximate Nearest Neighbor indexes.

Answer: B

Explanation:
RRF is a rank aggregation algorithm that merges multiple ranked lists into a single ordered result set.


Question 7

In a Retrieval-Augmented Generation (RAG) solution, where is RRF typically applied?

A. After the large language model generates its response

B. Before document retrieval begins

C. During the combination of candidate search results before providing context to the LLM

D. During embedding generation

Answer: C

Explanation:
RRF is used after multiple retrieval methods return candidate documents and before the final context is passed to the LLM.


Question 8

Which statement accurately compares RRF and semantic reranking?

A. They perform the same function.

B. RRF replaces semantic reranking.

C. Semantic reranking combines ranked lists using reciprocal values.

D. RRF merges ranked results, while semantic reranking uses AI to evaluate document meaning.

Answer: D

Explanation:
RRF aggregates ranked lists from multiple search methods, whereas semantic reranking analyzes document content and query meaning to reorder results.


Question 9

What is a key advantage of using RRF instead of averaging raw search scores?

A. It requires complex score normalization.

B. It is independent of the underlying scoring scales used by different search algorithms.

C. It eliminates the need for vector search.

D. It always returns mathematically exact nearest neighbors.

Answer: B

Explanation:
RRF avoids the complexities of comparing different scoring systems by relying solely on ranking positions.


Question 10

A database developer is implementing hybrid search in an AI-enabled SQL solution.

Which sequence best reflects a common enterprise retrieval pipeline?

A. Generate embeddings โ†’ LLM โ†’ Vector search โ†’ Keyword search

B. Semantic reranking โ†’ Embedding generation โ†’ Keyword search

C. Keyword search โ†’ Vector search โ†’ Reciprocal Rank Fusion โ†’ Optional semantic reranking โ†’ Return results

D. Product Quantization โ†’ SQL backup โ†’ Semantic reranking

Answer: C

Explanation:
A common enterprise hybrid search workflow retrieves candidate documents using keyword and vector search, combines them using RRF, optionally applies semantic reranking, and then returns the highest-quality results for use in applications such as RAG.


Go to the DP-800 Exam Prep Hub main page

Identify use cases for RAG (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25โ€“30%)
ย ย  --> Design and implement retrieval-augmented generation (RAG)
ย ย ย ย ย  --> Identify use cases for RAG


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Retrieval-Augmented Generation (RAG) is one of the most important architectural patterns in modern AI-enabled database applications. Rather than relying solely on the knowledge contained within a Large Language Model (LLM), RAG retrieves relevant information from trusted data sources at query time and supplies that information to the model before it generates a response.

For the DP-800 exam, you should understand when RAG is appropriate, which business problems it solves, its advantages and limitations, and the types of applications that benefit most from its use.


What Is Retrieval-Augmented Generation (RAG)?

Retrieval-Augmented Generation (RAG) is an AI architecture that combines:

  • Information retrieval
  • Vector search
  • Large Language Models (LLMs)

Instead of asking an LLM to answer a question solely from its training data, a RAG system first retrieves relevant information from a database, document repository, or knowledge base.

The retrieved information is then included in the prompt sent to the LLM.

The workflow looks like this:

User Question
โ”‚
โ–ผ
Generate Query Embedding
โ”‚
โ–ผ
Vector or Hybrid Search
โ”‚
โ–ผ
Retrieve Relevant Documents
โ”‚
โ–ผ
Build Prompt with Retrieved Context
โ”‚
โ–ผ
Large Language Model
โ”‚
โ–ผ
Grounded Response

This process enables the model to answer using current, organization-specific, and trusted information.


Why RAG Is Needed

LLMs have several limitations when used independently.

These include:

  • Knowledge is limited to training data.
  • Information may become outdated.
  • Models cannot automatically access private organizational data.
  • Responses may contain hallucinations (confident but incorrect information).

RAG addresses these limitations by retrieving external information before response generation.

For example:

Without RAG:

“What is our company’s parental leave policy?”

The LLM has no knowledge of an organization’s private HR documents.

With RAG:

The system retrieves the latest HR policy document and provides it to the LLM, enabling it to generate an accurate, grounded response.


When Should You Use RAG?

RAG is most valuable when answers depend on information that is:

  • Frequently updated
  • Organization-specific
  • Too large to include in prompts directly
  • Stored in databases or documents
  • Required to be accurate and traceable

Typical sources include:

  • SQL databases
  • Knowledge bases
  • PDFs
  • SharePoint libraries
  • Wikis
  • Product documentation
  • Policies
  • Support articles
  • Contracts
  • Technical manuals

Common Business Use Cases

1. Enterprise Knowledge Management

One of the most common RAG implementations is an internal knowledge assistant.

Employees can ask questions such as:

“How do I request family medical leave?”

The system retrieves HR documentation and generates a conversational answer.

Benefits include:

  • Faster information access
  • Reduced HR workload
  • Consistent answers
  • Always uses the latest documents

2. Customer Support

Support organizations often maintain thousands of troubleshooting articles.

Example question:

“Why won’t my VPN connect?”

Instead of requiring agents to manually search documentation, RAG retrieves relevant articles and generates a summarized answer.

Benefits:

  • Faster issue resolution
  • Improved customer satisfaction
  • Reduced training requirements
  • Consistent troubleshooting guidance

3. Technical Documentation Assistants

Software vendors publish extensive documentation.

Example:

“How do I configure Transparent Data Encryption?”

RAG retrieves:

  • Product documentation
  • Configuration guides
  • Best practices

The LLM produces a concise explanation grounded in the documentation.


4. SQL Database Assistants

Database developers may ask:

  • Explain this stored procedure.
  • Which table stores customer addresses?
  • Show the indexing strategy.
  • What permissions exist on this database?

A RAG system retrieves schema information, documentation, and metadata before generating responses.


5. Help Desk Automation

IT departments frequently answer repetitive questions.

Examples:

  • Password resets
  • VPN setup
  • Printer installation
  • Software installation
  • MFA enrollment

RAG enables intelligent self-service portals.


6. Legal Research

Law firms manage:

  • Contracts
  • Regulations
  • Case law
  • Internal legal guidance

RAG retrieves relevant documents before generating summaries.

Benefits:

  • Faster legal research
  • Improved consistency
  • Reduced manual searching

7. Healthcare Knowledge Systems

Healthcare organizations maintain:

  • Clinical guidelines
  • Treatment protocols
  • Internal procedures

RAG retrieves the latest guidance to support clinicians while ensuring answers are based on approved information.


8. Financial Services

Financial institutions use RAG for:

  • Compliance documentation
  • Regulatory guidance
  • Investment research
  • Internal policies

Because regulations change frequently, RAG provides more current information than relying solely on a model’s training data.


9. Product Recommendation Systems

Instead of searching manually through product catalogs:

Customer asks:

“I’m looking for a waterproof hiking backpack.”

RAG retrieves product specifications before the LLM generates recommendations.


10. Research Assistants

Researchers query:

  • Scientific papers
  • Internal reports
  • Publications
  • Technical documents

RAG retrieves relevant documents and summarizes findings.


Industry Examples

IndustryExample RAG Use Case
HealthcareClinical guideline assistant
BankingRegulatory compliance assistant
InsurancePolicy document assistant
ManufacturingEquipment maintenance assistant
RetailProduct recommendation assistant
EducationCourse material assistant
GovernmentCitizen information portal
LegalContract and legal research assistant
TechnologyDocumentation chatbot
Human ResourcesEmployee policy assistant

When RAG Is NOT Necessary

RAG is not the best solution for every AI application.

Examples where RAG may not be required include:

  • Creative writing
  • Brainstorming ideas
  • Poetry generation
  • Fiction writing
  • General conversations
  • Language translation
  • Grammar correction

These tasks rely primarily on the language capabilities of the LLM rather than external knowledge.


RAG vs Fine-Tuning

A common exam topic is distinguishing RAG from fine-tuning.

RAGFine-Tuning
Retrieves external informationModifies model weights
Uses current dataLearns from training data
No retraining required for document updatesRequires retraining for new knowledge
Best for dynamic informationBest for changing model behavior
Uses databases and documentsUses training datasets

Example:

Company updates its vacation policy.

With RAG:

Simply update the knowledge base.

With fine-tuning:

The model would need to be retrained to incorporate the new policy.


Benefits of RAG

Current Information

Answers reflect the latest available documents.


Reduced Hallucinations

The LLM is grounded with trusted information before generating responses.


Organization-Specific Knowledge

Private business data remains outside the foundation model and is retrieved only when needed.


No Model Retraining

Updating documents updates the knowledge available to the system.


Better Accuracy

Responses are based on authoritative content rather than the model’s memory.


Explainability

Many RAG systems cite or link to the documents used to generate responses.


Limitations of RAG

Dependent on Retrieval Quality

Poor retrieval leads to poor responses.


Requires Search Infrastructure

Organizations must maintain:

  • Embeddings
  • Vector indexes
  • Search indexes
  • Metadata
  • Documents

Additional Latency

Searching for documents adds time before the LLM generates a response.


Token Limits

Too many retrieved documents may exceed the LLM’s context window.

Systems typically retrieve only the most relevant documents.


Selecting Good RAG Use Cases

Ideal RAG scenarios include:

  • Large document collections
  • Frequently changing information
  • Private organizational knowledge
  • Regulatory documentation
  • Technical documentation
  • Search-heavy workloads
  • Question-answering systems

Less suitable scenarios include:

  • Pure text generation
  • Entertainment applications
  • Creative storytelling
  • Static knowledge with no need for external sources

RAG in SQL-Based AI Solutions

Modern SQL platforms increasingly support capabilities that enable RAG solutions, including:

  • Vector data types
  • Embedding storage
  • Vector indexes
  • Hybrid search
  • Similarity search
  • Integration with Azure AI services
  • Secure access to structured and unstructured enterprise data

This allows developers to build AI applications that combine relational data with semantic search in a single solution.


Best Practices

  • Use RAG for applications requiring current or organization-specific information.
  • Build high-quality vector indexes and embeddings to improve retrieval accuracy.
  • Combine vector search with keyword search using hybrid search when appropriate.
  • Retrieve only the most relevant documents to stay within LLM context limits.
  • Apply security trimming so users retrieve only documents they are authorized to access.
  • Regularly update embeddings and indexes when source content changes.
  • Monitor retrieval quality using metrics such as precision, recall, and user feedback.
  • Include citations or source references whenever possible to increase trust.

DP-800 Exam Tips

Remember these key points for the exam:

  • RAG retrieves external information before the LLM generates a response.
  • RAG is ideal for organization-specific, frequently changing, or private knowledge.
  • RAG reduces hallucinations by grounding responses in retrieved documents.
  • RAG is commonly used with vector search and hybrid search.
  • RAG differs from fine-tuning because it does not modify the model’s weights.
  • Updating a knowledge base is typically sufficient to provide new information to a RAG system.
  • Common RAG use cases include enterprise search, customer support, technical documentation, compliance, and knowledge management.
  • Strong retrieval quality is essential because poor retrieval leads to poor AI responses.

Practice Exam Questions

Question 1

A company wants an AI assistant that answers employee questions using the latest HR policies stored in an internal document repository.

Which AI architecture is the most appropriate?

A. Fine-tune a language model every time a policy changes.

B. Use Retrieval-Augmented Generation (RAG).

C. Train a new embedding model monthly.

D. Use only keyword search without an LLM.

Answer: B

Explanation:
RAG retrieves the latest HR documents at query time and provides them to the LLM, allowing responses to reflect current policies without retraining the model.


Question 2

Which scenario is the best candidate for implementing a RAG solution?

A. Generating original poetry

B. Creating fictional stories

C. Answering questions using frequently updated product documentation

D. Producing creative marketing slogans

Answer: C

Explanation:
RAG excels when responses depend on current, external, or organization-specific information, such as product documentation that changes over time.


Question 3

Why does RAG generally reduce hallucinations compared to using an LLM alone?

A. It increases the model’s parameter count.

B. It permanently stores retrieved documents inside the model.

C. It grounds responses using relevant retrieved information.

D. It eliminates vector search.

Answer: C

Explanation:
By providing the LLM with relevant documents before response generation, RAG enables the model to base its answers on trusted information instead of relying solely on its training data.


Question 4

A legal firm needs an AI assistant that answers questions using thousands of contracts and regulatory documents that change regularly.

Which solution is most appropriate?

A. Static prompting only

B. Fine-tuning only

C. Rule-based automation

D. Retrieval-Augmented Generation (RAG)

Answer: D

Explanation:
RAG is well suited for dynamic document collections because updated documents become available to the AI system without requiring model retraining.


Question 5

Which statement correctly distinguishes RAG from fine-tuning?

A. RAG modifies the model’s internal weights.

B. Fine-tuning retrieves external documents during every query.

C. RAG retrieves external information at query time, while fine-tuning changes the model through additional training.

D. There is no practical difference between the two approaches.

Answer: C

Explanation:
RAG supplements a model with retrieved context, whereas fine-tuning changes the model’s learned behavior through additional training.


Question 6

A company updates its employee handbook every month.

What is typically required for a RAG solution to use the latest information?

A. Retrain the large language model.

B. Replace the vector database.

C. Update the document repository, regenerate embeddings if needed, and refresh the search index.

D. Reinstall the AI application.

Answer: C

Explanation:
RAG systems rely on current indexed content. When documents change, embeddings and indexes should be refreshed so the retrieval system can locate the updated information.


Question 7

Which use case is generally least appropriate for a RAG implementation?

A. Internal IT help desk assistant

B. Regulatory compliance assistant

C. Technical documentation chatbot

D. Creative short story generation

Answer: D

Explanation:
Creative writing tasks primarily depend on the language generation capabilities of the model and typically do not require retrieval from external knowledge sources.


Question 8

A financial institution wants an AI solution that always references the latest compliance documents before answering user questions.

What is the primary advantage of using RAG?

A. It permanently stores compliance documents inside the LLM.

B. It enables responses based on current external documents without retraining the model.

C. It eliminates the need for search indexes.

D. It automatically fine-tunes the LLM after every document update.

Answer: B

Explanation:
RAG retrieves current compliance documentation during each query, ensuring responses reflect the latest available information while avoiding repeated model retraining.


Question 9

Which technology is most commonly paired with RAG to retrieve semantically relevant documents?

A. Primary key indexes

B. Trigger-based replication

C. Vector search

D. Transaction log backups

Answer: C

Explanation:
Vector search retrieves semantically similar documents using embeddings and is a foundational component of most modern RAG implementations.


Question 10

A database developer is evaluating potential AI projects.

Which project would benefit the most from a RAG architecture?

A. A calculator that performs arithmetic operations

B. A chatbot that answers questions using an organization’s internal SQL documentation and knowledge base

C. A utility that formats SQL code

D. A script that generates random passwords

Answer: B

Explanation:
A chatbot that relies on organization-specific documentation is an ideal RAG use case because it requires access to current, trusted knowledge that is not contained within the LLM’s training data.


Go to the DP-800 Exam Prep Hub main page

Convert structured data to JSON for language model processing (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25โ€“30%)
ย ย  --> Design and implement retrieval-augmented generation (RAG)
ย ย ย ย ย  --> Convert structured data to JSON for language model processing


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

Modern AI-enabled database applications frequently need to send structured data stored in relational tables to Large Language Models (LLMs). Because LLMs interact with text or structured payloads such as JSON rather than relational tables, developers must transform SQL query results into JSON before sending them to AI services.

For the DP-800 exam, you should understand how to convert relational data into JSON using SQL, why JSON is the preferred interchange format for AI services, how JSON is used in Retrieval-Augmented Generation (RAG) workflows, and the best practices for preparing structured data for language model processing.


Why Convert Structured Data to JSON?

Relational databases organize information into:

  • Tables
  • Rows
  • Columns
  • Relationships

Large Language Models, however, consume:

  • Natural language
  • JSON documents
  • API payloads
  • Structured text

JSON (JavaScript Object Notation) provides a lightweight, hierarchical format that is easy for applications, APIs, and AI models to process.

Instead of sending an entire table, developers typically send only the relevant records formatted as JSON.


Role of JSON in AI Applications

JSON serves as the common data exchange format between SQL databases and AI services.

Typical workflow:

SQL Database
โ”‚
โ–ผ
Query Structured Data
โ”‚
โ–ผ
Convert to JSON
โ”‚
โ–ผ
Build AI Prompt
โ”‚
โ–ผ
REST API Request
โ”‚
โ–ผ
Large Language Model
โ”‚
โ–ผ
AI Response

This process allows structured business data to become part of an AI prompt or API request.


What Is JSON?

JSON is a text-based format consisting of key-value pairs and arrays.

Example:

{
"CustomerID": 1001,
"CustomerName": "Contoso Ltd.",
"Country": "USA",
"CreditLimit": 50000
}

Nested objects are also supported.

Example:

{
"OrderID": 1055,
"Customer": {
"Name": "Contoso Ltd.",
"Country": "USA"
}
}

Hierarchical structures like these are easier for language models to interpret than tabular data.


Why AI Models Prefer JSON

JSON provides several advantages:

  • Human-readable
  • Machine-readable
  • Structured
  • Flexible
  • Widely supported
  • Easily serialized
  • Easily parsed

Most AI REST APIs accept JSON request bodies and return JSON responses.


Converting SQL Query Results to JSON

Modern SQL platforms support generating JSON directly from query results.

For example, SQL Server and Azure SQL Database provide the FOR JSON clause.

Example:

SELECT CustomerID,
CustomerName,
Country
FROM Customers
FOR JSON AUTO;

Sample output:

[
{
"CustomerID":1001,
"CustomerName":"Contoso Ltd.",
"Country":"USA"
},
{
"CustomerID":1002,
"CustomerName":"Fabrikam",
"Country":"Canada"
}
]

This JSON can be incorporated into prompts or REST API requests.


FOR JSON AUTO

FOR JSON AUTO automatically generates JSON based on the structure of the SELECT statement.

Advantages:

  • Minimal configuration
  • Quick generation
  • Good for simple queries

Example:

SELECT ProductID,
ProductName,
Price
FROM Products
FOR JSON AUTO;

FOR JSON PATH

FOR JSON PATH provides greater control over the resulting JSON structure.

Example:

SELECT
CustomerID AS 'Customer.ID',
CustomerName AS 'Customer.Name'
FOR JSON PATH;

Output:

[
{
"Customer": {
"ID":1001,
"Name":"Contoso Ltd."
}
}
]

FOR JSON PATH is preferred when a specific JSON schema is required by an application or AI service.


Creating Nested JSON

Nested JSON is useful for representing parent-child relationships.

Example:

Customer

โ†“

Orders

โ†“

Order Items

Instead of returning multiple unrelated tables, developers can build a hierarchical JSON document that mirrors the business object.

This format is often easier for an LLM to understand.


Using JSON in Prompts

Rather than embedding raw SQL results, developers can include JSON as structured context.

Example prompt:

Use the following customer information:
{
"CustomerID":1001,
"Name":"Contoso Ltd.",
"Country":"USA",
"CreditLimit":50000
}
Summarize the customer's profile.

The structured format enables the model to identify fields and values more reliably.


JSON in Retrieval-Augmented Generation (RAG)

In RAG applications, retrieved information often comes from:

  • SQL queries
  • Vector search
  • Hybrid search
  • APIs

Structured query results can be converted to JSON before being added to the prompt.

Workflow:

SQL Query
โ”‚
โ–ผ
FOR JSON
โ”‚
โ–ผ
Prompt Construction
โ”‚
โ–ผ
LLM
โ”‚
โ–ผ
Grounded Response

Combining Structured and Unstructured Data

Many AI applications combine relational data with documents.

Example:

Structured data:

{
"OrderID":1055,
"Status":"Shipped"
}

Retrieved documentation:

Orders typically arrive within three business days after shipment.

Prompt:

Order Information:
{
"OrderID":1055,
"Status":"Shipped"
}
Documentation:
Orders typically arrive within three business days.
Answer the customer's question.

This approach gives the LLM access to both factual business data and supporting context.


Reducing Token Usage

Large JSON payloads increase:

  • Prompt size
  • Latency
  • API cost
  • Token consumption

Best practice:

Include only relevant fields.

Instead of:

{
"CustomerID":1001,
"Name":"Contoso",
"Country":"USA",
"Phone":"...",
"Fax":"...",
"CreatedDate":"...",
"LastLogin":"...",
...
}

Use:

{
"CustomerID":1001,
"Country":"USA",
"CreditLimit":50000
}

Only include information required to answer the user’s question.


Security Considerations

Before converting SQL data to JSON:

  • Remove sensitive columns.
  • Exclude personally identifiable information (PII) unless required and authorized.
  • Apply row-level security (RLS).
  • Enforce column-level permissions.
  • Mask confidential values when appropriate.
  • Validate user authorization before retrieving data.

AI models should receive only the data necessary to perform the requested task.


Data Quality Considerations

Language model responses are only as good as the input data.

Ensure that:

  • Missing values are handled appropriately.
  • Duplicate rows are removed.
  • Invalid records are excluded.
  • Data types are consistent.
  • Field names are meaningful.
  • JSON is well-formed and valid.

Poor-quality JSON often leads to inaccurate or confusing AI responses.


Processing AI Responses

Most AI services also return JSON.

Example:

{
"summary":
"Contoso Ltd. is a U.S. customer with a credit limit of $50,000."
}

SQL JSON functions such as:

  • JSON_VALUE
  • JSON_QUERY
  • OPENJSON

can extract values from the response for further processing or storage.


Common Mistakes

Sending Entire Tables

Avoid sending unnecessary rows.

Instead:

Retrieve only relevant records.


Including Too Many Columns

Large prompts increase token usage and cost.


Using Poor Field Names

Prefer:

CustomerName

instead of:

C_Name

Clear field names help improve model understanding.


Ignoring Security

Never expose confidential information unnecessarily.


Creating Invalid JSON

Malformed JSON causes REST API failures and prevents AI services from processing requests.


Best Practices

  • Use FOR JSON AUTO for simple JSON generation.
  • Use FOR JSON PATH when custom JSON structures are required.
  • Return only relevant rows and columns.
  • Keep JSON concise to reduce token consumption.
  • Use meaningful field names.
  • Remove confidential or unnecessary information.
  • Validate JSON before sending it to AI services.
  • Combine structured JSON with retrieved documents for RAG scenarios.
  • Parse AI responses using SQL JSON functions.
  • Test prompts using realistic business data.

DP-800 Exam Tips

Remember these key points for the exam:

  • JSON is the standard format for exchanging structured data with AI services.
  • SQL Server and Azure SQL Database support JSON generation using FOR JSON.
  • FOR JSON AUTO automatically formats query results.
  • FOR JSON PATH provides greater control over JSON structure.
  • RAG solutions often include JSON generated from SQL queries as contextual information.
  • Smaller, focused JSON payloads reduce token usage and improve performance.
  • Protect sensitive information before converting data to JSON.
  • SQL JSON functions can parse AI responses returned as JSON.

Practice Exam Questions

Question 1

A database developer needs to send customer records from SQL Server to a Large Language Model through a REST API.

Which format is most appropriate?

A. XML

B. CSV

C. JSON

D. Binary data

Answer: C

Explanation:
JSON is the standard format accepted by most AI REST APIs because it is lightweight, structured, and easy for both applications and language models to process.


Question 2

Which SQL clause automatically converts query results into JSON using the default structure of the SELECT statement?

A. FOR JSON AUTO

B. FOR XML

C. OPENJSON

D. JSON_VALUE

Answer: A

Explanation:
FOR JSON AUTO automatically generates JSON based on the query structure with minimal configuration.


Question 3

A developer needs complete control over the hierarchy and property names in the generated JSON document.

Which SQL feature should be used?

A. FOR XML

B. FOR JSON PATH

C. JSON_QUERY

D. OPENJSON

Answer: B

Explanation:
FOR JSON PATH allows developers to customize the JSON structure, including nested objects and property names.


Question 4

Why is JSON commonly used when interacting with Large Language Models?

A. It permanently stores embeddings.

B. It replaces vector indexes.

C. It provides a structured, machine-readable format that AI services commonly accept.

D. It automatically encrypts database records.

Answer: C

Explanation:
JSON is widely supported by REST APIs and AI services, making it the preferred format for exchanging structured data.


Question 5

In a Retrieval-Augmented Generation (RAG) solution, why might structured SQL query results be converted to JSON?

A. To include structured business data as context in the prompt sent to the language model.

B. To train the language model.

C. To replace vector embeddings.

D. To eliminate REST APIs.

Answer: A

Explanation:
Structured SQL data converted to JSON can be included in the prompt, allowing the LLM to generate grounded responses using current business information.


Question 6

A developer includes every column from a customer table in the JSON payload, even though only two fields are required.

What is the most likely consequence?

A. Improved retrieval accuracy.

B. Lower API costs.

C. Increased prompt size, token consumption, and latency.

D. Automatic JSON compression.

Answer: C

Explanation:
Sending unnecessary data increases the size of the prompt, which leads to higher token usage, longer response times, and increased cost.


Question 7

Which SQL functions are commonly used to extract values from a JSON response returned by an AI service?

A. ROW_NUMBER and MERGE

B. JSON_VALUE, JSON_QUERY, and OPENJSON

C. PIVOT and UNPIVOT

D. STRING_AGG and GROUP BY

Answer: B

Explanation:
SQL Server provides JSON functions such as JSON_VALUE, JSON_QUERY, and OPENJSON for parsing JSON documents and extracting data.


Question 8

Which practice best improves both security and efficiency when preparing JSON for an AI service?

A. Include every available database column.

B. Return the entire table regardless of the user’s request.

C. Remove unnecessary and sensitive information before generating JSON.

D. Convert the JSON into XML before sending it.

Answer: C

Explanation:
Limiting the JSON payload to only necessary, authorized data reduces token usage, improves performance, and protects sensitive information.


Question 9

What is the primary advantage of using nested JSON structures?

A. They reduce the need for SQL joins.

B. They represent hierarchical relationships in a format that is easier for applications and language models to interpret.

C. They automatically generate embeddings.

D. They eliminate the need for REST APIs.

Answer: B

Explanation:
Nested JSON naturally represents parent-child relationships, making complex business objects easier for both applications and AI models to process.


Question 10

A database application receives a JSON response from an AI service.

What is the next step if the application needs to store the generated summary in a SQL table?

A. Convert the JSON to XML.

B. Rebuild the vector index.

C. Parse the JSON response using SQL JSON functions and extract the required value.

D. Generate new embeddings for the response.

Answer: C

Explanation:
After receiving a JSON response, SQL functions such as JSON_VALUE or OPENJSON can extract the generated content for storage or further processing.


Go to the DP-800 Exam Prep Hub main page

Send results to a language model (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25โ€“30%)
ย ย  --> Design and implement retrieval-augmented generation (RAG)
ย ย ย ย ย  --> Send results to a language model


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

One of the final steps in a Retrieval-Augmented Generation (RAG) workflow is sending retrieved data to a Large Language Model (LLM). After retrieving relevant information from a SQL database, vector index, or hybrid search system, the application packages the data into a prompt and submits it to an AI model through a REST API. The quality of this process directly affects the accuracy, relevance, security, and efficiency of the generated response.

For the DP-800 exam, you should understand how to prepare retrieved results for language model processing, construct effective prompts, submit requests to AI services, handle responses, and follow best practices for security, performance, and reliability.


Where This Step Fits in a RAG Workflow

A Retrieval-Augmented Generation solution consists of several stages.

User Question
โ”‚
โ–ผ
Generate Query Embedding
โ”‚
โ–ผ
Vector or Hybrid Search
โ”‚
โ–ผ
Retrieve Relevant Documents
โ”‚
โ–ผ
Prepare Context
โ”‚
โ–ผ
Build Prompt
โ”‚
โ–ผ
Send Request to Language Model
โ”‚
โ–ผ
Receive AI Response
โ”‚
โ–ผ
Return Answer to User

Sending the retrieved results to the language model is the bridge between the retrieval system and the AI model.


Why Send Retrieved Results?

Large Language Models do not automatically have access to:

  • SQL databases
  • Internal documentation
  • Company policies
  • Product catalogs
  • Customer records
  • Knowledge bases

Instead, developers retrieve the necessary information and include it in the prompt sent to the model.

This process grounds the AI response in trusted, current information.


Components of a Request

A typical request sent to a language model includes several elements.

System Instructions

The system message defines the model’s role and behavior.

Example:

You are an expert SQL database assistant.
Answer only using the supplied context.

System instructions establish the rules the model should follow.


Retrieved Context

The retrieved context contains the information found during vector or hybrid search.

Example:

Document:
Clustered indexes physically store rows according to the index key.

Only relevant context should be included.


User Question

The original user request is included.

Example:

Why do clustered indexes improve query performance?

The language model combines the retrieved context with the user question to generate an answer.


Output Instructions

Developers may specify:

  • Response length
  • Formatting
  • Tone
  • JSON output
  • Markdown output
  • Bullet lists

Example:

Provide a concise answer in three bullet points.

Preparing Retrieved Results

Retrieved documents often require preprocessing before being sent to the model.

Common preprocessing tasks include:

  • Removing duplicate documents
  • Eliminating irrelevant information
  • Trimming excessively long content
  • Combining related results
  • Filtering unauthorized information
  • Formatting structured data as JSON when appropriate

Proper preparation improves both response quality and efficiency.


Selecting Relevant Context

Sending too much information can reduce answer quality and increase cost.

Best practice:

Retrieve only the top-ranking documents.

For example:

Instead of sending:

  • 50 documents

Send:

  • Top 3โ€“10 highly relevant documents

The exact number depends on the application’s requirements and the model’s context window.


Structuring the Prompt

A well-organized prompt improves response quality.

A common structure is:

System Instructions
Retrieved Context
User Question
Expected Response Format

Example:

You are a SQL expert.
Context:
Clustered indexes physically organize table rows according to the key.
Question:
Why do clustered indexes improve query performance?
Answer only using the provided context.

Sending Structured Data

Sometimes the retrieved information is relational data rather than documents.

Example SQL output:

CustomerCountryCredit Limit
ContosoUSA50000

Instead of sending the table directly, developers often convert it to JSON.

Example:

{
"Customer":"Contoso",
"Country":"USA",
"CreditLimit":50000
}

JSON provides a structured format that AI services process efficiently.


Calling the Language Model

Most AI services expose REST APIs.

A request typically includes:

  • HTTPS endpoint
  • HTTP POST method
  • Authentication
  • JSON payload

Conceptually:

Prompt
โ†“
JSON Request
โ†“
REST API
โ†“
Language Model
โ†“
JSON Response

SQL Server and Azure SQL Database can call supported REST endpoints using the sp_invoke_external_rest_endpoint stored procedure where available.


Processing the Response

Most AI services return JSON.

Example:

{
"choices":[
{
"message":{
"content":"Clustered indexes improve performance because..."
}
}
]
}

SQL applications can extract the generated text using JSON functions such as:

  • JSON_VALUE
  • JSON_QUERY
  • OPENJSON

The application can then display, store, or further process the generated response.


Managing Context Windows

Every language model has a maximum context window.

The context window includes:

  • System instructions
  • Retrieved documents
  • User question
  • Previous conversation
  • Generated response

If too much information is included, requests may fail or important information may be truncated.

Developers should:

  • Remove irrelevant content.
  • Retrieve fewer documents.
  • Summarize long documents.
  • Limit prompt size.

Token Usage

Language models process text as tokens.

More retrieved content means:

  • More input tokens
  • Longer inference time
  • Higher API costs
  • Increased latency

Reducing unnecessary context improves both performance and cost efficiency.


Security Considerations

Developers should never send sensitive information unnecessarily.

Examples include:

  • Passwords
  • Authentication secrets
  • Personal identifiers
  • Confidential financial records
  • Protected health information
  • Internal security credentials

Before sending data to an external AI service:

  • Apply row-level security (RLS).
  • Apply column-level security.
  • Remove confidential fields.
  • Mask sensitive values when appropriate.
  • Verify user authorization.

Grounding the Response

One of the primary goals of RAG is grounding.

Grounding means that the model bases its answer on retrieved information rather than relying solely on its internal training.

Example instruction:

Answer only using the supplied documents.
If the answer is unavailable, say you do not know.

This helps reduce hallucinations.


Handling Errors

Common issues include:

Authentication Failures

Examples:

  • Expired tokens
  • Invalid credentials
  • Missing permissions

Network Problems

Examples:

  • Endpoint unavailable
  • Timeouts
  • DNS failures

Rate Limits

AI services may return:

429 Too Many Requests

Applications should implement retry logic using exponential backoff.


Invalid Requests

Examples:

  • Malformed JSON
  • Missing prompt
  • Unsupported parameters

Performance Considerations

Factors affecting performance include:

  • Prompt size
  • Number of retrieved documents
  • Network latency
  • AI model size
  • Token count
  • Response length
  • Concurrent requests

Performance can often be improved by:

  • Sending fewer documents.
  • Using concise prompts.
  • Removing duplicate information.
  • Optimizing retrieval quality.

Common Mistakes

Sending Irrelevant Documents

The language model may generate inaccurate or confusing responses.


Including Entire Database Records

Large prompts increase token usage and cost.


Poor Prompt Design

Ambiguous instructions often produce inconsistent responses.


Ignoring Security

Sensitive information should never be included unless necessary and authorized.


Missing Grounding Instructions

Without guidance, the model may rely on general knowledge instead of retrieved context.


Best Practices

  • Retrieve only the most relevant documents.
  • Use clear system instructions.
  • Include the user’s original question.
  • Organize prompts consistently.
  • Limit prompt size to reduce token usage.
  • Convert structured data to JSON when appropriate.
  • Remove sensitive information before sending requests.
  • Validate JSON payloads.
  • Monitor latency and token consumption.
  • Evaluate AI responses for accuracy and relevance.

Real-World Example

A company stores warranty information in SQL Server.

Workflow:

  1. Customer asks:”Is my laptop still under warranty?”
  2. SQL retrieves:
Product: X500
Purchase Date: January 10, 2025
Warranty: 2 Years
  1. JSON is generated:
{
"Product":"X500",
"PurchaseDate":"2025-01-10",
"Warranty":"2 Years"
}
  1. Prompt sent to the language model:
Use the following warranty information:
{
"Product":"X500",
"PurchaseDate":"2025-01-10",
"Warranty":"2 Years"
}
Answer whether the warranty is still valid.

The language model generates a grounded response using the supplied business data.


DP-800 Exam Tips

Remember these key points for the exam:

  • Sending results to the language model is the final step before AI response generation in a RAG workflow.
  • Retrieved documents should be relevant, concise, and properly formatted.
  • System instructions help guide model behavior.
  • Structured SQL data is often converted to JSON before being included in prompts.
  • Smaller prompts reduce latency and token costs.
  • Grounding instructions help reduce hallucinations.
  • Responses from AI services are typically returned as JSON.
  • Sensitive information should be removed before sending requests to external AI services.

Practice Exam Questions

Question 1

A developer is building a Retrieval-Augmented Generation (RAG) application.

After retrieving relevant documents from a vector search, what is the next logical step?

A. Send the retrieved context to the language model as part of the prompt.

B. Retrain the language model.

C. Rebuild the vector index.

D. Delete duplicate embeddings.

Answer: A

Explanation:
After retrieval, the relevant documents are incorporated into the prompt and sent to the language model so it can generate a grounded response.


Question 2

Why should retrieved documents be included in a prompt sent to a language model?

A. To permanently update the model’s training data.

B. To ground the model’s response using relevant information.

C. To reduce embedding dimensions.

D. To replace vector indexes.

Answer: B

Explanation:
Including retrieved context enables the model to generate responses based on current, authoritative information rather than relying solely on pre-trained knowledge.


Question 3

Which prompt component defines the behavior the language model should follow?

A. Retrieved context

B. User question

C. System instructions

D. JSON response

Answer: C

Explanation:
System instructions establish the role, behavior, and constraints for the language model, such as answering only from the supplied context.


Question 4

A developer sends fifty retrieved documents to a language model, even though only five are relevant.

What is the most likely consequence?

A. Improved grounding accuracy.

B. Reduced API costs.

C. Faster inference.

D. Increased token usage, latency, and potential reduction in response quality.

Answer: D

Explanation:
Including excessive context increases prompt size, consumes more tokens, raises costs, and may dilute the relevance of the information presented to the model.


Question 5

Which format is commonly used to send structured SQL query results to a language model?

A. Binary

B. XML

C. JSON

D. CSV

Answer: C

Explanation:
JSON is the standard format for exchanging structured data with AI services because it is lightweight, hierarchical, and widely supported.


Question 6

What is the primary purpose of grounding instructions such as “Answer only using the supplied context”?

A. Increase the embedding dimension.

B. Reduce hallucinations by limiting the model to retrieved information.

C. Eliminate authentication requirements.

D. Automatically compress prompts.

Answer: B

Explanation:
Grounding instructions encourage the model to base its responses on the retrieved documents instead of relying on unsupported assumptions or prior training.


Question 7

A language model returns its response as JSON.

Which SQL functions can be used to extract the generated answer?

A. MERGE and GROUP BY

B. ROW_NUMBER and RANK

C. STRING_AGG and PIVOT

D. JSON_VALUE, JSON_QUERY, and OPENJSON

Answer: D

Explanation:
SQL Server provides JSON functions that allow applications to parse AI responses and extract specific values from JSON documents.


Question 8

Which security practice is most appropriate before sending retrieved results to an external AI service?

A. Include every available column to maximize context.

B. Remove sensitive or unauthorized information from the retrieved data.

C. Disable row-level security.

D. Send authentication credentials within the prompt.

Answer: B

Explanation:
Only the information necessary for the AI task should be sent. Sensitive data should be removed or masked, and normal security controls should remain in effect.


Question 9

Why is prompt size an important consideration when sending results to a language model?

A. Larger prompts always improve response quality.

B. Prompt size has no effect on AI services.

C. Larger prompts increase token usage, cost, and response latency.

D. Prompt size determines the embedding algorithm.

Answer: C

Explanation:
Every token contributes to processing time and cost. Keeping prompts concise improves performance while reducing API expenses.


Question 10

A company wants an AI assistant to answer questions using current warranty information stored in SQL Server.

Which approach best supports this requirement?

A. Fine-tune the language model every time warranty records change.

B. Store warranty records directly inside the model.

C. Build a RAG workflow that retrieves the current warranty data, formats it appropriately, and sends it to the language model.

D. Disable retrieval and rely only on the model’s training data.

Answer: C

Explanation:
A RAG solution retrieves current business data at query time, formats it (often as JSON), and sends it to the language model, allowing responses to remain accurate without requiring model retraining.


Go to the DP-800 Exam Prep Hub main page

Extract language model responses (DP-800 Exam Prep)

This post is a part of the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub.
This topic falls under these sections:
Implement AI capabilities in database solutions (25โ€“30%)
ย ย  --> Design and implement retrieval-augmented generation (RAG)
ย ย ย ย ย  --> Extract language model responses


Note that there are 10 practice questions (with answers) at the end of each section to help you solidify your knowledge of the material. Also, there are 4 practice tests with 30 questions each available from the hub's main page below the exam topics section.

Introduction

After a Large Language Model (LLM) generates a response, database applications must extract the returned content so it can be displayed to users, stored in the database, or used by downstream processes. Because most AI services return results in JSON format, developers must understand how to parse JSON, extract relevant values, handle errors, validate responses, and integrate the output into SQL-based applications.

For the DP-800 exam, you should understand the structure of language model responses, how to extract values using SQL JSON functions, how to handle different response formats, and the best practices for securely and efficiently processing AI-generated output.


Where Response Extraction Fits in a RAG Workflow

Extracting the language model response is one of the final stages in a Retrieval-Augmented Generation (RAG) pipeline.

User Question
โ”‚
โ–ผ
Retrieve Relevant Documents
โ”‚
โ–ผ
Build Prompt
โ”‚
โ–ผ
Send Request to AI Model
โ”‚
โ–ผ
Receive JSON Response
โ”‚
โ–ผ
Extract Generated Content
โ”‚
โ–ผ
Display or Store Results

Without response extraction, the application cannot effectively use the AI-generated answer.


Why AI Responses Are Returned as JSON

Most AI services expose REST APIs.

REST APIs typically exchange data using JSON because it is:

  • Lightweight
  • Human-readable
  • Machine-readable
  • Widely supported
  • Easy to parse

Whether using Azure AI Foundry models, Azure OpenAI Service, or other AI providers, JSON is the standard response format.


Typical Language Model Response

Although the exact schema varies by provider and API version, chat completion APIs commonly return a structure similar to the following:

{
"choices": [
{
"message": {
"role": "assistant",
"content": "Clustered indexes improve performance because the table rows are stored in key order."
}
}
]
}

The application typically extracts only the generated text, while ignoring metadata unless it is needed for monitoring or diagnostics.


Common Elements in AI Responses

A language model response may include:

  • Generated text
  • Response identifier
  • Model name
  • Completion reason
  • Token usage statistics
  • Timestamps
  • Metadata

Example (simplified):

{
"id": "chatcmpl-123",
"model": "gpt-4.1",
"choices": [
{
"message": {
"content": "Answer text..."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 125,
"completion_tokens": 38,
"total_tokens": 163
}
}

Developers often extract both the generated answer and token usage for logging or cost monitoring.


Parsing JSON in SQL

SQL Server and Azure SQL Database provide built-in JSON functions.

The most commonly used are:

  • JSON_VALUE
  • JSON_QUERY
  • OPENJSON

These functions enable developers to retrieve values from JSON returned by an AI service.


Using JSON_VALUE

JSON_VALUE extracts a single scalar value.

Example:

SELECT JSON_VALUE(@Response,
'$.choices[0].message.content');

Result:

Clustered indexes improve performance because...

This is the most common method for retrieving the generated response.


Using JSON_QUERY

JSON_QUERY extracts JSON objects or arrays.

Example:

SELECT JSON_QUERY(@Response,
'$.choices');

This returns the complete choices array rather than a single value.

Use JSON_QUERY when you need an entire object or array for further processing.


Using OPENJSON

OPENJSON converts JSON into relational rows and columns.

Example:

SELECT *
FROM OPENJSON(@Response, '$.choices');

This is useful when:

  • Multiple completions are returned
  • Arrays must be processed
  • Nested JSON must be flattened

Extracting Token Usage

Many AI services report token consumption.

Example:

{
"usage": {
"prompt_tokens":125,
"completion_tokens":40,
"total_tokens":165
}
}

Developers can extract these values.

Example:

SELECT JSON_VALUE(@Response,
'$.usage.total_tokens');

Tracking token usage helps monitor:

  • API costs
  • Performance
  • Resource consumption

Processing Multiple Choices

Some APIs may return multiple candidate responses.

Example:

{
"choices":[
{"message":{"content":"Option 1"}},
{"message":{"content":"Option 2"}}
]
}

Developers can use OPENJSON to iterate through the array and select the preferred response.


Storing AI Responses

Generated responses may be:

  • Displayed to users
  • Saved to SQL tables
  • Logged for auditing
  • Indexed for future retrieval
  • Used by downstream workflows

Example table:

RequestIDUserQuestionAIResponseDateGenerated

Proper storage supports auditing, analytics, and troubleshooting.


Validating Responses

Applications should validate AI responses before using them.

Check for:

  • Missing content
  • Empty responses
  • Malformed JSON
  • Unexpected schema
  • API errors

Validation improves application reliability.


Handling API Errors

Not every REST call succeeds.

Possible errors include:

Authentication Failure

Examples:

  • Invalid token
  • Expired credentials

Network Errors

Examples:

  • Timeout
  • DNS failure
  • Connection failure

Invalid Request

Examples:

  • Malformed JSON
  • Missing prompt
  • Unsupported parameters

Rate Limiting

Example:

429 Too Many Requests

Applications should implement retry logic using exponential backoff where appropriate.


Finish Reasons

Many chat completion APIs include a finish reason.

Examples:

  • stop
  • length
  • content_filter

Meaning:

Finish ReasonDescription
stopNormal completion
lengthMaximum token limit reached
content_filterResponse filtered by safety system

Applications may use this information to determine whether a response is complete.


Processing Structured Output

Some prompts request JSON output rather than plain text.

Example response:

{
"summary":"Order shipped.",
"priority":"High"
}

SQL JSON functions can extract each property individually.

Example:

SELECT JSON_VALUE(@Response,
'$.summary');

Structured outputs are particularly useful for workflow automation.


Security Considerations

When processing AI responses:

  • Validate all returned data.
  • Do not assume responses are always correct.
  • Avoid executing generated SQL without validation.
  • Protect sensitive information.
  • Log responses securely.
  • Apply least-privilege access controls.

Even trusted AI services should be treated as external systems whose outputs require validation.


Performance Considerations

Large responses require:

  • More network bandwidth
  • More parsing time
  • More storage
  • More tokens

Developers should:

  • Limit response length where appropriate.
  • Extract only required fields.
  • Avoid storing unnecessary metadata.
  • Archive logs according to retention policies.

Common Mistakes

Assuming Every Response Has the Same Schema

Different AI services and API versions may return different JSON structures.


Ignoring Errors

Applications should always check for API failures before attempting to parse the response.


Parsing Entire JSON Documents

Extract only the required values to improve efficiency.


Not Validating Responses

Malformed or incomplete responses should be handled gracefully.


Ignoring Token Usage

Monitoring token consumption helps control costs.


Best Practices

  • Parse responses using SQL JSON functions.
  • Use JSON_VALUE for scalar values.
  • Use JSON_QUERY for objects and arrays.
  • Use OPENJSON for arrays and complex JSON.
  • Validate response schemas before processing.
  • Log errors separately from successful responses.
  • Track token usage for monitoring and optimization.
  • Limit stored data to what is necessary.
  • Handle rate limits and transient failures gracefully.
  • Design applications to tolerate API schema changes when possible.

Real-World Example

A customer asks:

“Summarize this support ticket.”

The application:

  1. Retrieves ticket information from SQL.
  2. Sends it to a language model.
  3. Receives:
{
"choices":[
{
"message":{
"content":"The customer reports intermittent login failures caused by expired authentication tokens."
}
}
]
}

The application extracts:

SELECT JSON_VALUE(@Response,
'$.choices[0].message.content');

The extracted summary is displayed to the support agent and optionally stored for future reference.


DP-800 Exam Tips

Remember these key points for the exam:

  • Most language model APIs return JSON responses.
  • JSON_VALUE extracts individual scalar values.
  • JSON_QUERY retrieves JSON objects or arrays.
  • OPENJSON converts JSON arrays and objects into relational data.
  • Applications should validate AI responses before using them.
  • Token usage information helps monitor API costs.
  • Finish reasons indicate how the model completed generation.
  • Handle API errors, rate limits, and malformed responses gracefully.
  • Store only the data needed for business purposes.
  • AI-generated output should always be treated as data that requires validation before use.

Practice Exam Questions

Question 1

A SQL application receives a JSON response from a language model and needs to extract the generated answer.

Which SQL function is most appropriate for retrieving a single text value?

A. JSON_VALUE

B. JSON_QUERY

C. OPENJSON

D. STRING_SPLIT

Answer: A

Explanation:
JSON_VALUE extracts a single scalar value from a JSON document, making it ideal for retrieving the generated response text.


Question 2

A developer wants to retrieve the entire choices array from a language model response.

Which SQL function should be used?

A. ROW_NUMBER

B. JSON_QUERY

C. MERGE

D. JSON_VALUE

Answer: B

Explanation:
JSON_QUERY returns JSON objects or arrays rather than individual scalar values, making it appropriate for extracting the complete choices array.


Question 3

When is OPENJSON most useful?

A. When extracting a single property value.

B. When converting JSON arrays into relational rows and columns.

C. When generating embeddings.

D. When creating vector indexes.

Answer: B

Explanation:
OPENJSON parses JSON arrays and objects into tabular data that can be queried using SQL.


Question 4

Why should applications validate AI responses before using them?

A. JSON responses are always encrypted.

B. Validation reduces database storage requirements.

C. AI responses may be malformed, incomplete, or contain unexpected structures.

D. Validation automatically reduces token usage.

Answer: C

Explanation:
Applications should verify that responses are valid, complete, and conform to the expected schema before processing them.


Question 5

A developer wants to monitor AI service costs.

Which information should be extracted from the response?

A. The database transaction log.

B. Vector dimensions.

C. Token usage statistics.

D. Query execution plans.

Answer: C

Explanation:
Many AI APIs return token usage information, which is useful for monitoring API consumption and estimating costs.


Question 6

What does a finish reason of stop typically indicate?

A. The request exceeded the maximum token limit.

B. The response was blocked by a content filter.

C. The model completed the response normally.

D. Authentication failed.

Answer: C

Explanation:
A finish reason of stop indicates that the model reached a natural completion point without interruption.


Question 7

A developer receives multiple candidate responses from an AI service.

Which SQL feature is best suited for processing all returned responses?

A. JSON_VALUE

B. OPENJSON

C. GROUP BY

D. FOR JSON AUTO

Answer: B

Explanation:
OPENJSON can iterate through arrays, making it ideal for processing multiple response choices.


Question 8

Which practice best improves the reliability of applications consuming AI responses?

A. Assume every response follows the same JSON schema.

B. Execute AI-generated SQL statements without review.

C. Validate the response structure and handle errors gracefully.

D. Ignore API error messages.

Answer: C

Explanation:
Validating responses and implementing robust error handling help applications remain reliable even when API responses change or errors occur.


Question 9

Why should developers avoid storing unnecessary metadata from AI responses?

A. Metadata prevents JSON parsing.

B. It can increase storage requirements without providing business value.

C. Metadata invalidates embeddings.

D. Metadata reduces retrieval accuracy.

Answer: B

Explanation:
Storing only the required information minimizes storage costs and simplifies downstream processing.


Question 10

A SQL application receives the following JSON:

{
"choices":[
{
"message":{
"content":"The shipment will arrive tomorrow."
}
}
]
}

Which value should typically be presented to the end user?

A. The complete JSON document.

B. The choices array.

C. The generated text contained in message.content.

D. The API response identifier.

Answer: C

Explanation:
The value stored in message.content contains the natural-language response generated by the language model and is typically the information displayed to users.


Go to the DP-800 Exam Prep Hub main page

Exam Prep Hub for DP-800: Developing AI-Enabled Database Solutions

Welcome to the DP-800: Developing AI-Enabled Database Solutions Exam Prep Hub!

Welcome to the one-stop hub with information for preparing for the DP-800: Developing AI-Enabled Database Solutions certification exam. The content for this exam helps prepare you to have “subject matter expertise in designing and developing AI-enabled database solutions across Microsoft SQL platforms, including Microsoft SQL Server, Azure SQL, and SQL databases in Microsoft Fabric”.
Upon successful completion of the exam, you earn the Microsoft Certified: SQL AI Developer Associate certification.

This hub provides information directly here (topic-by-topic as outlined in the official study guide), links to a number of external resources, tips for preparing for the exam, practice tests, and section questions to help you prepare. Bookmark this page and use it as a guide to ensure that you are fully covering all relevant topics for the DP-800 exam and making use of as many of the resources available as possible.


Audience profile (from Microsoft’s site)

As a candidate for this Microsoft Certification, you should have subject matter expertise in designing and developing AI-enabled database solutions across Microsoft SQL platforms, including Microsoft SQL Server, Azure SQL, and SQL databases in Microsoft Fabric.
You should also have experience writing T-SQL code and developing databases in Microsoft SQL platforms. Plus, you need to be familiar with continuous integration and continuous deployment (CI/CD) practices in GitHub, AI-assisted development tools, and AI concepts, such as embeddings, vectors, and models.
Your responsibilities include:
- Designing and developing database solutions that include both structured and semi-structured data.
- Integrating AI features into modern and highly scalable enterprise applications.
- Securing, optimizing, and deploying database solutions.
- Implementing AI capabilities in database solutions.
You work closely with application developers; database administrators (DBAs); architects; AI engineers; development, security, operations (DevSecOps) engineers; security and compliance administrators; and other stakeholders to deliver robust, high-performance database solutions that power modern applications and AI-driven experiences.

Skills at a glance (as specified in the official study guide)

  • Design and develop database solutions (35โ€“40%)
  • Secure, optimize, and deploy database solutions (35โ€“40%)
  • Implement AI capabilities in database solutions (25โ€“30%)


Topic-by-Topic Exam Content

[click a topic link to access the content and practice questions for that topic]

Design and develop database solutions (35โ€“40%)

Design and implement database objects

Implement programmability objects

Write advanced T-SQL code

Design and implement SQL solutions by using AI-assisted tools

Secure, optimize, and deploy database solutions (35โ€“40%)

Implement data security and compliance

Optimize database performance

Implement CI/CD by using SQL Database Projects

Integrate SQL solutions with Azure services

Implement AI capabilities in database solutions (25โ€“30%)

Design and implement models and embeddings

Design and implement intelligent search

Design and implement retrieval-augmented generation (RAG)


DP-800 Practice Exams


Important DP-800 Resources

Link to the free, comprehensive, self-paced course on Microsoft Learn:
Course: Develop AI-enabled database solutions

Course DP-800T00-A: Develop AI-enabled database solutions – Training | Microsoft Learn

This course has 3 learning paths. The 3 learning paths and their modules are listed with links below:

(1) Design and develop database solutions

This learning path has 4 modules:
(i) Design and implement database objects with SQL
(ii) Implement programmability objects with SQL
(iii) Write advanced T-SQL code
(iv) Implement SQL solutions by using AI-assisted tools

(2) Secure, optimize, and deploy database solutions

This learning path has 4 modules:
(i) Implement data security and compliance with SQL
(ii) Optimize database performance
(iii) Implement CI/CD by using SQL Database Projects
(iv) Integrate SQL solutions with Azure services

(3) Implement AI capabilities in database solutions

This learning path has 3 modules:
(i) Design and implement models and embeddings with SQL
(ii) Design and implement intelligent search with SQL
(iii) Design and implement RAG with SQL

Link to the certification page:

Link to the “Microsoft Certified: SQL AI Developer Associate” certification page:
https://learn.microsoft.com/en-us/credentials/certifications/developing-ai-enabled-database-solutions/?practice-assessment-type=certification

Link to the study guide:

Link to the Study Guide for DP-800: Developing AI-Enabled Database Solutions:
https://learn.microsoft.com/en-us/credentials/certifications/resources/study-guides/dp-800

YouTube resources:

Get Certified: SQL AI Developer (DP-800) series by Microsoft Reactor

Courses:

These are two highly rated courses for DP-800 on Udemy:


Good luck to you passing the DP-800 Exam!
However, the more preparation you have, the less luck you will need. ๐Ÿ™‚

Visit this post to see the list of all the certification preparation hubs available on The Data Community.