Partner Solution Hub
DEMO
Semantic Product Search with Vector Search Builder and IBM Bob
Build meaning-based product search on Milvus with IBM Bob's Vector Search Builder mode, then add images, a price filter, and recommendation reasons with short natural-language instructions.
Building Blocks used: data.lakehouse
Looking for Building Block skills?
Skills provide best practices for IBM technologies
Download skills →
1 Review use case

Shoppers search in their own words, but keyword search only matches the literal words in product names. At Fictional Online Store, a search for "red sneakers" misses the product "Red Running Shoes", so shoppers leave without finding it. Meaning-based search solves this, yet building it usually means choosing a vector database and an embedding model, wiring them into an API, and spending weeks on each new feature.

This hands-on kit uses the Vector Search Builder mode, a custom mode for IBM Bob, together with a Milvus instance that the instructor hosts and a local embedding model (paraphrase-multilingual-MiniLM-L12-v2, 384 dimensions), so participants need no API key. Participants connect to Milvus, load 12 sample products, and search by meaning on a search screen that a FastAPI app serves. They then ask IBM Bob to add product images, a price filter, and recommendation reasons. Each feature takes a short instruction, and IBM Bob changes the application code while the participant reviews and approves the steps.

The same pattern applies to enterprise document search, where titles use different words, and to customer support, where agents look for similar past questions. The hands-on runs in about 60 minutes, and every page is available in English and Japanese. It uses a local model and a shared Milvus for learning; for production, the summary page points to watsonx.ai for embeddings and watsonx.data for Milvus.

Start Here
Watch this short overview
Preview the application
Explore key screens from the demo
2 Try the interactive application
Experience the interactive demo and explore its features. A demo script is provided to help when presenting the application to partners.
Try the demo

Have questions, want a walkthrough or found a bug?

Contact the demo owner for assistance.

Submit a request →
3 Explore how it was built
Instructor side: Docker Compose runs Milvus standalone (embedded etcd and local storage) and the documentation server. The documentation is shared on the local network, through GitHub Pages, or through ngrok. Participant side: the participant zip holds the Vector Search Builder mode rules (.bob) and the participant scripts. Participants open it in IBM Bob and select Vector Search Builder mode. Data flow: the scripts connect to Milvus with the MilvusClient API. The embedding model runs locally and turns product text into 384-dimensional vectors. insert_sample_data.py creates a collection (IVF_FLAT index, COSINE metric) and inserts 12 products. app.py (FastAPI) serves /search and the search screen on port 8002. No API keys: embeddings are generated locally with Hugging Face Transformers.
Architecture
4 Download and modify with IBM Bob
Download the source code and specifications for this application to set up and run it locally. Once downloaded, open the code in IBM Bob to modify and adapt it to your own use case.