Search

Search your store—no "RAG" required

Escape the merchants of complexity and build your AI search without RAG

Everyone talks about AI chatbots for e-commerce, but have you ever wondered why getting one running feels like you're building NASA mission control?

Many small stores want to provide customers with a chat experience over their product catalog, but every solution in the market involves vector databases, retrieval systems, and infrastructure that costs more than their monthly sales.

Turns out, for most Shopify stores with small to medium catalogs, you can skip all that complexity entirely. No vector databases. No hybrid RAG systems. No infrastructure headaches. Just vanilla API calls and a basic language model.

What I discovered building it

The approach is pretty straightforward: Shopify already gives you everything you need through their products API. Most stores expose their catalog at predictable URLs like:

yourstore.myshopify.com/products.json?page=1

So I built something that fetches this data live (with some brief caching), reformats it to remove the noise, and feeds it directly to an LLM. No retrievers, no embeddings, no complex infrastructure.

What actually surprised me

  • For smaller catalogs, this simple approach often works as well as expensive vector search setups
  • Total build time: about 50 lines of code. Deployment time: under 10 minutes.
  • With provider token caching, you get ~50% discounts on repeated content, making the high token usage more affordable
  • Most customer questions work fine with the full product context—they don't always need sophisticated retrieval

The architecture is simple

The whole approach boils down to: fetch product data from Shopify's API, clean it up, stuff it into the LLM context, and let the model handle the conversation. No vector stores, no retrieval pipelines, no embeddings to manage.

The trade-offs are real

This approach hits walls pretty quickly with scale. Large catalogs will exceed context limits, complex product relationships get lost, and there's no sophisticated ranking or personalization. It's basically a brute-force solution.

But everything has trade-offs. While you're sending lots of tokens to every API call, provider caching gives you ~50% discounts on repeated content. The cost might actually offset what you'd spend on complex infrastructure, personalization systems, and guardrails. Plus, you can iterate on the prompt to get a lot more functionality out of the box.

For many small to medium Shopify stores, these trade-offs make sense. Sometimes the right solution isn't the most sophisticated one—it's the one that actually works for your specific constraints without requiring a team of engineers.

Try it yourself

Test the demo with any Shopify store URL, or dive into the Chat to understand more about the approach. The App lets you experiment with different stores and see how the system handles various product catalogs in real-time.