Stop gluing Pinecone, Redis, and Python scripts together. ShapedQL is the SQL engine for relevance - powering "For You" feeds, Search, and RAG memory in minutes. It compiles simple SQL into real-time ranking pipelines that retrieve, filter, score, and reorder results based on live user behavior. Replace thousands of lines of infra with 30 lines of SQL. With native multi-modal embeddings and automated MLOps, ShapedQL helps you build real-time decisions, not just document retrieval.
I'm Tullie, the founder and CEO of Shaped. Previously I was a researcher at Meta AI, leading several ML teams including one focused on Instagram Reels and Ads video ranking. I also created PyTorchVideo and was a core contributor to Pytorch Lightning.
We built ShapedQL because we realized that while retrieval has become easier (thanks to Vector DBs), ranking and relevance are still incredibly hard.
Most engineering teams we talk to are stuck maintaining a "Frankenstein" stack. To build a "For You" feed or give an AI Agent personalized memory, they have to glue together a vector database, a feature store (like Redis), a reranking service, and thousands of lines of Python spaghetti code.
We built ShapedQL to turn that "house of cards" into a single interface.
ShapedQL is a domain-specific SQL dialect that compiles down to a high-performance, multi-stage ranking pipeline. With a single query, you can define the four stages of modern relevance: 1. Retrieve: Fetch candidates from multiple sources (Hybrid Search, Collaborative Filtering, Trending). 2. Filter: Apply hard constraints (e.g., "in stock" or "within 50 miles"). 3. Score: Rank results using real-time ML models (optimizing for clicks, purchases, or watch time). 4. Reorder: Enforce diversity so your users (or Agents) don't see the same 5 items repeatedly.
We're seeing teams reduce 2,000+ lines of maintenance code down to ~30 lines of ShapedQL, while shipping features like "Cart Upsell" or "Agent Memory" in days instead of months.
If you're not a fan of SQL you can also choose from Python or Typescript SDK's.
I'd love to hear your feedback and answer any questions about the syntax or how it works under the hood! 🚀
Hi Product Hunt! 👋
I'm Tullie, the founder and CEO of Shaped. Previously I was a researcher at Meta AI, leading several ML teams including one focused on Instagram Reels and Ads video ranking. I also created PyTorchVideo and was a core contributor to Pytorch Lightning.
We built ShapedQL because we realized that while retrieval has become easier (thanks to Vector DBs), ranking and relevance are still incredibly hard.
Most engineering teams we talk to are stuck maintaining a "Frankenstein" stack. To build a "For You" feed or give an AI Agent personalized memory, they have to glue together a vector database, a feature store (like Redis), a reranking service, and thousands of lines of Python spaghetti code.
We built ShapedQL to turn that "house of cards" into a single interface.
ShapedQL is a domain-specific SQL dialect that compiles down to a high-performance, multi-stage ranking pipeline. With a single query, you can define the four stages of modern relevance:
1. Retrieve: Fetch candidates from multiple sources (Hybrid Search, Collaborative Filtering, Trending).
2. Filter: Apply hard constraints (e.g., "in stock" or "within 50 miles").
3. Score: Rank results using real-time ML models (optimizing for clicks, purchases, or watch time).
4. Reorder: Enforce diversity so your users (or Agents) don't see the same 5 items repeatedly.
We're seeing teams reduce 2,000+ lines of maintenance code down to ~30 lines of ShapedQL, while shipping features like "Cart Upsell" or "Agent Memory" in days instead of months.
If you're not a fan of SQL you can also choose from Python or Typescript SDK's.
I'd love to hear your feedback and answer any questions about the syntax or how it works under the hood! 🚀