Vector Search Explained
Content: Vector Search Explained
User Intent
Operation
How Vector Search Works
TypeScript (Canonical)
import { Graphlit } from 'graphlit-client';
import { ContentTypes, FileTypes, ModelServiceTypes, SearchTypes, SpecificationTypes } from 'graphlit-client/dist/generated/graphql-types';
const graphlit = new Graphlit();
// Pure vector search
const results = await graphlit.queryContents({
search: "machine learning research papers",
searchType: SearchTypes.Vector,
limit: 10
});
console.log(`Found ${results.contents.results.length} semantically similar results`);
results.contents.results.forEach((content, index) => {
console.log(`\n${index + 1}. ${content.name}`);
console.log(` Relevance: ${content.relevance}`);
console.log(` Type: ${content.type}`);
// Show matching text chunk
if (content.pages && content.pages.length > 0) {
const topChunk = content.pages[0].chunks?.[0];
if (topChunk) {
console.log(` Match: "${topChunk.text.substring(0, 100)}..."`);
}
}
});
// Find similar documents to a specific one
const similar = await graphlit.queryContents({
similarContents: [{ id: 'content-id' }],
limit: 5
});
console.log(`\nDocuments similar to content-id:`);
similar.contents.results.forEach(content => {
console.log(`- ${content.name} (relevance: ${content.relevance})`);
});The Vector Search Pipeline
1. Ingestion Time (Embedding Creation)
2. Query Time (Semantic Search)
When to Use Vector Search
Examples: Vector vs Keyword
Embedding Models
Similarity Scoring
Vector search (snake_case)
Find similar documents
Developer Hints
Vector Search is Expensive
Chunk Size Matters
Query Quality Tips
Variations
1. Basic Vector Search
2. Vector Search with Filters
3. Find Similar Documents
4. Vector Search with Relevance Threshold
5. Multi-Collection Vector Search
6. Vector Search Pagination
Common Issues & Solutions
Production Example
Last updated