Stremio Semantic Search: Find Movies by Describing Them

By the AI Streams team · 2026-06-14

You know the feeling. You want "that kind of movie", the slow one with the long quiet shots and the dread that builds for an hour before anything happens, but you cannot name a single title. So you type guesses into the Stremio search bar, get nothing useful, and fall back to scrolling the Trending row again.

That is the wall every keyword search hits. It can only find what you can already name. Semantic search removes that wall: you describe what you want in plain language, and it finds the titles that match the meaning, not the spelling. This is the difference between asking a librarian "do you have Heat" and asking "what's a tense crime movie where the cop and the robber respect each other." AI Streams does the second one, inside Stremio, against a real index of titles.

Why keyword search keeps failing you

Stremio's built-in search and most catalog addons do string matching. You type "die hard", it looks for titles, descriptions, or cast containing those words, and it returns Die Hard. Useful, but only when you already know the name.

The moment your need is a description instead of a title, keyword search collapses:

Keyword search has no concept of similar. "Cerebral", "cozy", "uplifting", "dread", "comfort watch" are all invisible to it unless a marketing team happened to type those exact words into a synopsis. The vocabulary you actually use to describe movies and the vocabulary stored in metadata almost never line up.

How semantic search actually works, in plain English

The trick is a thing called an embedding. An embedding is a way of turning a piece of text into a list of numbers that captures its meaning. The useful property: texts that mean similar things end up with similar numbers, so they sit close together in a kind of "meaning space."

Picture a giant map where every movie is a pin, placed by what it is about and how it feels, not by its title. On that map, Arrival sits near Contact and Annihilation, because all three are quiet, cerebral, melancholy science fiction, even though they share almost no keywords. John Wick lands in a totally different neighborhood next to The Raid and Atomic Blonde.

Semantic search works like this:

  1. You type a query: "a slow-burn thriller with quiet intensity."
  2. The system turns your sentence into an embedding, dropping a temporary pin on that same map.
  3. It looks for the movie pins nearest to your pin and hands those back.

Nobody had to predict your exact words in advance. Because meaning is what gets compared, "quiet intensity" lands you next to films described by critics and synopses as "restrained", "tense", "understated", or "simmering", all without those words ever matching literally. That is why semantic search succeeds precisely where keyword search has nothing to grab onto.

Why this beats raw AI output

You might think "just ask ChatGPT for movies like X." You can, and it will confidently give you titles, some of which do not exist, attached to IMDB IDs it invented on the spot. Language models hallucinate. In a Stremio catalog a made-up ID is a broken poster, a dead row, a recommendation that goes nowhere.

AI Streams avoids this by grounding every result. Instead of asking a model to free-associate titles from memory, it searches your query against a real, pre-built index of roughly 10,000 popular movies and series, each one a genuine title with a verified IMDB ID. The model's job is narrowed to interpreting your intent and re-ranking real candidates, never to inventing titles. Retrieval finds what exists; the model only orders it. The result: every card you see resolves to something you can actually open.

Example queries that work (and why)

Here is the kind of thing you can type into AI Streams search that would return junk anywhere else.

"a slow-burn thriller with quiet intensity"

Keyword search: zero hits, nobody writes those words in a synopsis. Semantic search: your query lands near films repeatedly described in terms of restraint and mounting tension, so you get the deliberate, character-driven thrillers you were reaching for instead of loud action.

"90s action like Die Hard but funnier"

Keyword search hands you Die Hard and stops thinking. Semantic search reads three signals at once, the era (90s), the genre (action), and the tone (funnier), and steers toward wisecracking, set-piece-driven action of that period, rather than the one film you named and have already seen.

"found-footage horror that isn't gory"

Keyword search can't process negation and may hand you exactly the bloodbaths you're avoiding. Semantic search understands the request as a region of horror, the dread-and-suggestion corner, found-footage and atmospheric, and pulls from there instead of the splatter shelf.

"feel-good underdog sports story"

No film literally says "feel-good underdog" in its data. Semantically, that phrase sits dead center among the warm, triumphant, against-the-odds sports dramas, so that is what you get, without naming Rocky or Rudy yourself.

"cerebral sci-fi that respects the audience"

"Cerebral" and "respects the audience" are pure vibe, untyped in any synopsis. In meaning-space they cluster with the dense, idea-first, slow science fiction, the Arrival and Annihilation neighborhood, exactly the pins nearest your query.

The pattern is consistent: the more your request leans on tone, era, feel, or comparison instead of an exact title, the more semantic search pulls ahead, and the more useless keyword search becomes.

How AI Streams grounds the results

A quick look under the hood, because the grounding is what makes this trustworthy rather than a slot machine.

This is the same embedding index that powers AI taste profiles and your AI Picks row, so the system's sense of "what is similar to what" is consistent across everything it recommends. Search is just you steering that engine by hand with a sentence.

Try these queries

Once it is installed, open Stremio search and paste any of these. They are written the way semantic search wants, by feel and comparison, not by title:

Notice none of these name a title. That is the point. Describe the watch you're in the mood for and let the index find it.

Setup, in two minutes

Semantic search ships with AI Streams. There is nothing extra to enable.

  1. Go to /configure.
  2. Add your own AI key (Gemini or OpenAI both work, or point it at a local model) and a TMDB key. Bring-your-own-key keeps the free tier free, or skip the key wrangling with Pro at $4/mo.
  3. Install the addon URL into Stremio.

That's it. The semantic search row appears alongside your other catalogs, and the Stremio search bar starts understanding sentences instead of demanding exact titles.

Where this fits

Semantic search is one piece of how AI Streams handles the what to watch half of Stremio. It is the manual, type-it-yourself lane. For the rest:

AI Streams is a discovery layer: catalogs, metadata, and recommendations. It never touches playback and it is never in the stream path. It just makes the deciding part stop being a chore.

Stop typing titles you half-remember. Describe the movie and let it find the movie. Set it up at /configure.

Try AI Streams free