SVK Primitives
Stateless tooling primitives to interact with the TasteBrain model. Production-ready services for cross-modal search, taste initialization, sentiment reranking, and brand matching.
Overview
Level 1 provides the core service layer for building taste-aware applications. These primitives are:
- Stateless - No server-side session management required
- Production-ready - Battle-tested at scale with <100ms p50 latency
- Developer-friendly - HTTP services with comprehensive reference guides
Core Capabilities
Cross-Modal Search
Search products using images, text, or combinations. Map any media to matching products.
Learn more →Sentiment Reranking
Dynamically re-order results based on user sentiment signals or domain-level filters.
Learn more →Brand Matching
Assess which brands in the global corpus have the closest aesthetic signature to a given input.
Learn more →Domain Filtering
Scope searches to specific product catalogs, retailers, or brand families.
Learn more →Services
Level 1 consists of three complementary services:
Prism Service (Recommended)
Personalized, user-aware product search with sentiment-based reranking. Use Prism for:
- User-specific product recommendations
- Personalized discovery feeds
- Multi-modal searches combining images, text, and user history
- Brand/domain scoped searches with personalization
curl -X POST https://api-prism.bestomer.io/search/unified \
-H "Authorization: Bearer $PRISM_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"queries": [{"query": "minimalist ceramic vases"}],
"n_products": 30,
"user_id": "user-123",
"search_weight": 0.7,
"personalization_weight": 0.3
}' → Full Prism API Documentation
Mosaic Service
Taste initialization and structured seeding for downstream curation. Use Mosaic for:
- Capture-based onboarding and taste initialization
- Cluster-derived seed generation for windows and feeds
- Retailer/domain-targeted product seeding
const response = await fetch('https://api-mosaic.bestomer.io/onboarding/initialize_taste', {
method: 'POST',
headers: {
'Authorization': `Bearer ${process.env.MOSAIC_TOKEN}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
user_id: 'user-123',
capture_ids: ['capture-1', 'capture-2'],
force_rebuild: false
})
}); → Full Mosaic Service Documentation
Shopkeep Service
Non-personalized, generic product search. Use Shopkeep for:
- Anonymous/public product search (marketing pages, catalogs)
- One-off searches without user context
- High-performance requirements (<50ms latency)
curl -X POST https://api-shopkeep.bestomer.io/search/text \
-H "Authorization: Bearer $SHOPKEEP_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"queries": ["scandinavian oak furniture"],
"n_products": 20,
"n_pool": 200
}' → Full Shopkeep API Documentation
Example Applications
All example apps in the SVK are built using Level 1 primitives:
InstaShop
Instagram profile → curated product sets
insta.bestomer.com ↗BookTaste
Literary prose → aesthetic matches
ishmael.bestomer.com ↗Streams
Immersive feed experience
streams.bestomer.com ↗Dress Code
Wedding event parsing and personalized attire recommendations
Docs walkthroughNext Steps
- Prism API Reference - Personalized search endpoints
- Mosaic Service - Taste initialization and targeted seeding
- Shopkeep API Reference - Non-personalized search
- Code Examples - Ready-to-use snippets
- Level 2: Persona Services - Stateful, user-aware features