MinusPodJev: podcast ad detection with Jev
MinusPodJev is a FastAPI proxy that makes TypeSafe Jev available to MinusPod as an OpenAI-compatible ad-detection model.
# MinusPodJev MinusPodJev is a FastAPI proxy that makes TypeSafe Jev available to [MinusPod](https://github.com/ttlequals0/MinusPod) as an OpenAI-compatible ad-detection model. This repository also contains the standalone offline benchmark that measured Jev against 84 chat models on a 14-episode corpus. ## Contents - [Features](#features) - [How it works](#how-it-works) - [Requirements](#requirements) - [Quick start](#quick-start) - [Documentation](#documentation) - [License](#license) - [LLM disclosure](#llm-disclosure) ## Features - OpenAI-compatible detection, verification, and review endpoints for MinusPod - Native Jev segments-in, spans-out endpoint - Optional sponsor matching from MinusPod's sponsor list, with a gazetteer fallback - Runtime threshold settings and a status page with process-scoped metrics - Offline benchmark corpus, caches, reports, and reproduction commands ## How it works Jev scores one transcript segment at a time. The proxy parses MinusPod's window prompt, asks Jev one noul per segment, assembles spans, classifies categories, matches sponsors, and returns MinusPod's expected JSON envelope. The full request flow and component diagram are in [How it works](docs/how-it-works.md). Jev Proxy does not support chapter generation. Chapter titles still need a secondary chat model. Jev Proxy is a POC shim. It does not change the MinusPod runtime that controls holds, autoapproval, or verification logs. `compat/minuspod_compat` is a vendored snapshot used by the production proxy and offline benchmarks. Keep production operations in the existing MinusPod application until Jev is mature. ## Requirements - Docker and Docker Compose for the container deployment - A TypeSafe key supplied by MinusPod as its OpenAI bearer token - `MINUSPOD_BASE_URL` an