> For the complete documentation index, see [llms.txt](https://docs.layerlens.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.layerlens.ai/more-in-this-section-2/eval-patterns-8.md).

# Media and entertainment evaluation patterns

Recommended primitive ratio for media AI: **45/30/25** — deterministic rules, code assertions, judges. Media has more open-text creative output than other regulated industries, so judges weigh more.

## Primitive ratio

| Primitive           | Share | Why                                                                                    |
| ------------------- | ----- | -------------------------------------------------------------------------------------- |
| Deterministic rules | 45%   | Catalog freshness, rating/age gates, CSAM routing, quote fidelity, editor-review gates |
| Code assertions     | 30%   | Per-category precision/recall, fairness, originality, GARM categories                  |
| LLM judges          | 25%   | Faithfulness, tone/framing, row-title quality, summarization fidelity                  |

## Pattern table

| Scenario                            | Primary primitive | Specific check                      |
| ----------------------------------- | ----------------- | ----------------------------------- |
| Recommendation — catalog freshness  | Rule              | Item live in region                 |
| Recommendation — rating gate        | Rule              | Item rating ≤ profile permission    |
| Recommendation — diversity          | Code scorer       | Set diversity threshold             |
| Recommendation — row-title quality  | Judge             | Title describes the row             |
| Moderation — CSAM                   | Rule              | 100% NCMEC routing                  |
| Moderation — category accuracy      | Code scorer       | Per-policy P/R                      |
| Moderation — fairness               | Code scorer       | Action-rate parity                  |
| Moderation — coordination detection | Code scorer       | Cluster signals                     |
| Ad — GARM accuracy                  | Code scorer       | Per-category precision              |
| Ad — exclusion adjacency            | Rule              | Advertiser exclusions enforced      |
| News — faithfulness                 | Judge             | Source-grounded summary             |
| News — quote fidelity               | Rule              | Verbatim quote match                |
| News — editor gate                  | Rule              | Editor sign-off before publish      |
| IP — rights citation                | Rule              | Above-threshold matches cite holder |
| IP — counter-notice routing         | Rule              | Human-review path                   |

## Span rules

Media traces should expose:

* `catalog.lookup` — region-availability and rating
* `recommend.score` — feature inputs and ranker version
* `moderation.classify` — per-category scores; routing decision
* `ad.match` — GARM categories and brand-safety bits
* `editorial.review` — editor identity and approval state
* `rights.match` — rights-holder match and confidence

## GEPA labeling

For each media judge, label ≥ 50 paired examples:

* **Recommendation row title:** Trust-and-safety + product-content team labels good vs. clickbait vs. wrong
* **Moderation per-category:** Policy team labels; multiple reviewers with reconciliation; ≥ 200 examples for sensitive categories
* **News summarization:** Newsroom labels; cover paraphrase, ambiguous source, multi-source synthesis
* **Brand safety:** Sales + ops team labels per GARM; refresh quarterly

Run [judge optimization](/more-in-this-section-9/judge-optimizations-1.md) with `budget="medium"` for routine judges, `budget="heavy"` for safety-critical (moderation, brand safety). Hold out 20%.

## Cadence

| Cadence        | Activity                                                             |
| -------------- | -------------------------------------------------------------------- |
| **Per-deploy** | CI gate runs scenario suite (rules + assertions)                     |
| **Continuous** | Catalog-freshness checks against live SKU/title feed                 |
| **Hourly**     | Moderation drift on a sliding sample                                 |
| **Daily**      | Sample production traces; full scoring including judges              |
| **Weekly**     | Fairness audit; appeal-overturn rate; advertiser brand-safety report |
| **Monthly**    | GEPA re-optimization on judge drift                                  |
| **Quarterly**  | DSA / OSA reporting prep; rights-detection false-positive audit      |

## See also

* [Media scenarios](/more-in-this-section-2/scenarios-8.md)
* [Media compliance](/more-in-this-section-2/compliance-8.md)
* [Recipe: GEPA basics](/9.-improve-tune-the-system/gepa-basics.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.layerlens.ai/more-in-this-section-2/eval-patterns-8.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
