Skip to the content
Moûsa

Qloo in Moûsa

Request by request

Moûsa calls the Qloo Insights API at hackathon.api.qloo.com with GET requests and the key in X-Api-Key, never through the model. A session measures its audience once, at most 24 requests, after the agent's guess is sealed, and answers later taste questions from that measurement.

What each request decides

The measurement is the engine's, so every agent and every host sends the same requests for the same audience.

/search

Resolves each name the audience is described by. A match counts only when the meaningful words of both names agree; a work or creator wins over a same-named place.

Decides: Which works the measurement starts from, and which names are reported as unresolved.

/v2/tags

Resolves genre and interest words to tags, typed first for music genres.

Decides: Seeds an audience named by a genre rather than a work.

/v2/audiences

Resolves audience descriptions such as "parents with young children" to Qloo audience segments.

Decides: Weights every Insights request toward that segment.

/v2/insights, entities

One request per taste domain the medium needs: brands, films, artists, books, TV, podcasts, games or places. The resolved seeds go in signal.interests.entities, the seeds themselves are excluded, explainability is asked for, and brands and films are asked again below a popularity cap for lesser-known neighbours. An optional place and age bands weight every request.

Decides: The works the audience loves: the names the agent's guess is compared with, and the anchors of the Design DNA.

/v2/insights, tags

Two audience-level rankings, style and aesthetic properties, sent apart: in one combined request, no aesthetic tag reached the first twelve.

Decides: The pacing, surfaces and tone that direct motion and illustration.

Typed tags of the returned works

No request: the tags each measured work carries are grouped by their Qloo type into look, mood and meaning. A tag two or more works share becomes a quality.

Decides: Palette, type and voice anchor to qualities, so one loud keyword cannot become the design.

/v2/insights with filter.results.entities

Ranks a shortlist the agent gives, on one scale.

Decides: Answers a design question between named options, such as which of three references fits.

Budget and cache

  • At most 24 requests a session; a live try's measurement used 12.
  • Answers are cached in the project for a week, so a second design for the same audience costs nothing.
  • Requests go two at a time, with a short retry on a rate limit, a timeout or a server error, each counted toward the budget.

Qloo's data stays private

  • The cache lives only on the machine or server that asked.
  • This site and the public repository show the names Qloo measured, never its ids, affinity scores, popularity or descriptions.
  • A test fails the repository's build if a Qloo id or a scored entity is committed.

What the live API taught us

Each of these came from a recorded request and changed the engine.

The full account, with the requests and their dates: docs/qloo-integration.md.