This article is published in English.
Practical notes: Semantic Search vs Vector Search: What’s the Difference, and
Operable walkthrough of Practical notes: Semantic Search vs Vector Search: What’s the Difference, and: contracts, checks, and drop-in code slots for teams shipping this pattern.
This walkthrough rebuilds the path from raw materials to a working system for: Semantic Search vs Vector Search: What’s the Difference, and Where Do They Fit in RAG?. The focus is operable steps, explicit checks, and code that you can drop into a repo without guessing intent. For the Overview stage, define the inputs, the owner of the step, and the exit criteria before changing code. Operators should be able to re-run the step from a known checkpoint without guessing hidden state. Prefer small, testable units over sprawling scripts. When a step fails, the failure should point at a single responsibility rather than a tangled pipeline.
1. Start With the Simplest Mental Model
When working through the 1 Start With the stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Treat this stage as a contract between inputs and validated outputs. Name the artifacts, define success checks, and refuse silent partial completion. Cache stable system instructions and tool schemas. Re-sending identical preamble is a common source of burn.
Keyword Search
When working through the Keyword Search stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Record timings and token or query cost next to functional results. Cost visibility early prevents surprise bills when the path moves from demo to shared environments. Measure recall on a fixed question set before tuning prompts. Prompt churn rarely fixes a weak retrieval surface.
Vector Search
When working through the Vector Search stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Keep configuration outside application code. Environment files, secret stores, and feature flags belong in one place operators can audit without reading the whole graph. Measure recall on a fixed question set before tuning prompts. Prompt churn rarely fixes a weak retrieval surface. When working through the Vector Search stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Prefer small, testable units over sprawling scripts. When a step fails, the failure should point at a single responsibility rather than a tangled pipeline.
Semantic Search
The Semantic Search stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Treat this stage as a contract between inputs and validated outputs. Name the artifacts, define success checks, and refuse silent partial completion. Separate chunking policy from retrieval policy. Changing one should not force a rewrite of the other when quality metrics move.
Keyword Search
↓
Match words
Vector Search
↓
Match embedding similaritySemantic Search
↓
Match meaning / relevance
2. What Is Keyword Search?
The 2 What Is Keyword stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Record timings and token or query cost next to functional results. Cost visibility early prevents surprise bills when the path moves from demo to shared environments. Separate chunking policy from retrieval policy. Changing one should not force a rewrite of the other when quality metrics move.
annual
leave
days
employees
Where keyword search works very well
The Where keyword search works stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Keep configuration outside application code. Environment files, secret stores, and feature flags belong in one place operators can audit without reading the whole graph. Separate chunking policy from retrieval policy. Changing one should not force a rewrite of the other when quality metrics move. The Where keyword search works stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Prefer small, testable units over sprawling scripts. When a step fails, the failure should point at a single responsibility rather than a tangled pipeline.
INC-10996
PROD-12345
LAPTOP-XPS-15
HTTP 401
API-OrderService
3. The Limitation of Keyword Search
For the 3 The Limitation of stage, define the inputs, the owner of the step, and the exit criteria before changing code. Operators should be able to re-run the step from a known checkpoint without guessing hidden state. Treat this stage as a contract between inputs and validated outputs. Name the artifacts, define success checks, and refuse silent partial completion. Cite the passages that actually grounded the answer. Without citations, operators cannot tell hallucination from an indexing gap.
annual leave
vacation time
4. What Is Vector Search?
For the 4 What Is Vector stage, define the inputs, the owner of the step, and the exit criteria before changing code. Operators should be able to re-run the step from a known checkpoint without guessing hidden state. Record timings and token or query cost next to functional results. Cost visibility early prevents surprise bills when the path moves from demo to shared environments. Cite the passages that actually grounded the answer. Without citations, operators cannot tell hallucination from an indexing gap.
"Employees are entitled to 20 days of annual leave."
↓
Embedding Model
↓
[0.12, -0.43, 0.78, 0.21, ...]
"How much vacation time can I take?"
↓
Embedding Model
↓
[0.15, -0.39, 0.75, 0.24, ...]
User Query
↓
Embedding
↓
Vector
↓
Compare with stored vectors
↓
Nearest / most similar vectors
↓
Relevant documents
annual leave
≈
vacation time
5. So Is Vector Search Semantic Search?
For the 5 So Is Vector stage, define the inputs, the owner of the step, and the exit criteria before changing code. Operators should be able to re-run the step from a known checkpoint without guessing hidden state. Keep configuration outside application code. Environment files, secret stores, and feature flags belong in one place operators can audit without reading the whole graph. Cite the passages that actually grounded the answer. Without citations, operators cannot tell hallucination from an indexing gap. For the 5 So Is Vector stage, define the inputs, the owner of the step, and the exit criteria before changing code. Operators should be able to re-run the step from a known checkpoint without guessing hidden state. Prefer small, testable units over sprawling scripts. When a step fails, the failure should point at a single responsibility rather than a tangled pipeline.
Not exactly.
When working through the Not exactly stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Treat this stage as a contract between inputs and validated outputs. Name the artifacts, define success checks, and refuse silent partial completion. Measure recall on a fixed question set before tuning prompts. Prompt churn rarely fixes a weak retrieval surface.
Semantic Search
│
├── Vector similarity
├── Query understanding
├── Semantic relevance
├── Ranking
└── Other relevance signals
6. Vector Search vs Semantic Ranking
When working through the 6 Vector Search vs stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Record timings and token or query cost next to functional results. Cost visibility early prevents surprise bills when the path moves from demo to shared environments. Measure recall on a fixed question set before tuning prompts. Prompt churn rarely fixes a weak retrieval surface.
User Query
↓
Vector Search
↓
50 candidate documents
↓
Semantic Ranking
↓
Top 5 most relevant documents
7. What Is Hybrid Search?
When working through the 7 What Is Hybrid stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Keep configuration outside application code. Environment files, secret stores, and feature flags belong in one place operators can audit without reading the whole graph. Measure recall on a fixed question set before tuning prompts. Prompt churn rarely fixes a weak retrieval surface. When working through the 7 What Is Hybrid stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Prefer small, testable units over sprawling scripts. When a step fails, the failure should point at a single responsibility rather than a tangled pipeline.
Keyword Search
+
Vector Search
User Query
│
┌─────────┴─────────┐
↓ ↓
Keyword Search Vector Search
│ │
└─────────┬─────────┘
↓
Combined Results
↓
Ranking / Reranking
↓
Relevant Documents
Natural language
The Natural language stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Treat this stage as a contract between inputs and validated outputs. Name the artifacts, define success checks, and refuse silent partial completion. Separate chunking policy from retrieval policy. Changing one should not force a rewrite of the other when quality metrics move.
INC-10996
Customer-1234
HTTP-500
Order-98765
8. A Real Enterprise Example
The 8 A Real Enterprise stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Record timings and token or query cost next to functional results. Cost visibility early prevents surprise bills when the path moves from demo to shared environments. Separate chunking policy from retrieval policy. Changing one should not force a rewrite of the other when quality metrics move.
INC-10231
Payment gateway timeout
INC-10287
Payment service unavailableINC-10492
Database connection pool exhaustedINC-10501
Payment API latency
Keyword Search
The Keyword Search stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Keep configuration outside application code. Environment files, secret stores, and feature flags belong in one place operators can audit without reading the whole graph. Separate chunking policy from retrieval policy. Changing one should not force a rewrite of the other when quality metrics move. The Keyword Search stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Prefer small, testable units over sprawling scripts. When a step fails, the failure should point at a single responsibility rather than a tangled pipeline.
payment
timeout
Vector Search
For the Vector Search stage, define the inputs, the owner of the step, and the exit criteria before changing code. Operators should be able to re-run the step from a known checkpoint without guessing hidden state. Treat this stage as a contract between inputs and validated outputs. Name the artifacts, define success checks, and refuse silent partial completion. Cite the passages that actually grounded the answer. Without citations, operators cannot tell hallucination from an indexing gap.
timeout
latency
unavailable
connection problems
Hybrid Search
For the Hybrid Search stage, define the inputs, the owner of the step, and the exit criteria before changing code. Operators should be able to re-run the step from a known checkpoint without guessing hidden state. Record timings and token or query cost next to functional results. Cost visibility early prevents surprise bills when the path moves from demo to shared environments. Cite the passages that actually grounded the answer. Without citations, operators cannot tell hallucination from an indexing gap.
Exact lexical relevance
+
Semantic relevance
9. Where Does Azure AI Search Fit?
For the 9 Where Does Azure stage, define the inputs, the owner of the step, and the exit criteria before changing code. Operators should be able to re-run the step from a known checkpoint without guessing hidden state. Keep configuration outside application code. Environment files, secret stores, and feature flags belong in one place operators can audit without reading the whole graph. Cite the passages that actually grounded the answer. Without citations, operators cannot tell hallucination from an indexing gap. For the 9 Where Does Azure stage, define the inputs, the owner of the step, and the exit criteria before changing code. Operators should be able to re-run the step from a known checkpoint without guessing hidden state. Prefer small, testable units over sprawling scripts. When a step fails, the failure should point at a single responsibility rather than a tangled pipeline.
Azure AI Search
│
┌────────────┼────────────┐
↓ ↓ ↓
Full-text Vector Semantic
Search Search Ranking
│ │ │
↓ ↓ ↓
Keywords Embeddings Relevance
10. Where Does RAG Fit?
When working through the 10 Where Does RAG stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Treat this stage as a contract between inputs and validated outputs. Name the artifacts, define success checks, and refuse silent partial completion. Measure recall on a fixed question set before tuning prompts. Prompt churn rarely fixes a weak retrieval surface.
User
↓
RAG System
↓
Azure AI Search
↓
Azure OpenAI
Retrieval
+
Augmentation
+
Generation
11. RAG Has Two Major Phases
When working through the 11 RAG Has Two stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Record timings and token or query cost next to functional results. Cost visibility early prevents surprise bills when the path moves from demo to shared environments. Measure recall on a fixed question set before tuning prompts. Prompt churn rarely fixes a weak retrieval surface.
Phase 1 — Knowledge Preparation
When working through the Phase 1 Knowledge Preparation stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Keep configuration outside application code. Environment files, secret stores, and feature flags belong in one place operators can audit without reading the whole graph. Measure recall on a fixed question set before tuning prompts. Prompt churn rarely fixes a weak retrieval surface. When working through the Phase 1 Knowledge Preparation stage, write down the contract first: required inputs, success signal, and what happens on partial failure. That checklist keeps later code changes honest. Prefer small, testable units over sprawling scripts. When a step fails, the failure should point at a single responsibility rather than a tangled pipeline.
PDFs
SharePoint
Confluence
SQL Server
Word documents
APIs
↓
Document extraction
↓
Chunking
↓
Embeddings
↓
Search / Vector Index
Document content
Embeddings
Document ID
Page number
Title
Metadata
Permissions
12. Phase 2 — User Query
The 12 Phase 2 User stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Treat this stage as a contract between inputs and validated outputs. Name the artifacts, define success checks, and refuse silent partial completion. Separate chunking policy from retrieval policy. Changing one should not force a rewrite of the other when quality metrics move.
User
↓
Application
↓
Retrieval
↓
Azure AI Search
↓
Relevant chunks
↓
Augmentation
↓
Azure OpenAI
↓
Answer
13. What Exactly Happens During Retrieval?
The 13 What Exactly Happens stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope. Record timings and token or query cost next to functional results. Cost visibility early prevents surprise bills when the path moves from demo to shared environments. Separate chunking policy from retrieval policy. Changing one should not force a rewrite of the other when quality metrics move.
Keyword Search
+
Vector Search
+
Semantic Ranking
+
Filters
14. What Does “Augmented” Mean?
The 14 What Does Augmented stage works best when treated as a measurable surface. Capture one golden transcript, one failure case, and the rollback note before expanding scope.
System:
Answer using the provided company information.
Context:
Employees are entitled to 20 days of annual leave.User:
How many vacation days can I take?
15. Then Comes Generation
Retrieved Context
+
User Question
↓
Azure OpenAI
↓
Generated Answer
16. So Where Exactly Is RAG?
RAG
│
┌────────────┼────────────┐
↓ ↓ ↓
RETRIEVE AUGMENT GENERATE
│ │ │
↓ ↓ ↓
Azure AI Search Context Azure OpenAI
│
┌─────┼─────┐
↓ ↓ ↓
Keyword Vector Hybrid
Search Search Search
17. Is Azure AI Search the Same as RAG?
RAG
│
├── Retrieval → Azure AI Search
│
├── Augmentation → Add retrieved context
│
└── Generation → Azure OpenAI
18. Is Semantic Kernel RAG?
ASP.NET Core
↓
Semantic Kernel
│
├────→ Azure AI Search
│ ↓
│ Relevant chunks
│
└────→ Azure OpenAI
↓
Answer
19. Does RAG Require Vector Search?
Keyword-based RAG
User
↓
Keyword Search
↓
Documents
↓
LLM
Vector-based RAG
User
↓
Vector Search
↓
Documents
↓
LLM
Hybrid RAG
User
↓
Keyword + Vector
↓
Hybrid Search
↓
Documents
↓
LLM
20. The Complete Enterprise Picture
KNOWLEDGE SOURCES
│
┌────────────────┼─────────────────┐
↓ ↓ ↓
PDFs SQL Server SharePoint
│ │ │
└────────────────┼─────────────────┘
↓
Ingestion
↓
Chunking
↓
Embeddings
↓
┌────────────────────┐
│ Azure AI Search │
│ │
│ Text + Vectors + │
│ Metadata/Indexes │
└─────────┬──────────┘
│
INDEX IS READY
│
════════════════════════╪════════════════════════
│
USER QUERY
│
↓
ASP.NET Core API
│
↓
RAG Orchestration
│
↓
┌─────────────────┐
│ Azure AI Search │
│ │
│ Keyword │
│ Vector │
│ Hybrid │
│ Semantic Rank │
└────────┬────────┘
│
↓
Relevant Chunks
│
↓
Augmentation
│
↓
Azure OpenAI
│
↓
Answer