Skip to content

Default to ML mode#16

Merged
edgrosvenor merged 1 commit into
mainfrom
feat/ml-default
Jun 15, 2026
Merged

Default to ML mode#16
edgrosvenor merged 1 commit into
mainfrom
feat/ml-default

Conversation

@edgrosvenor

Copy link
Copy Markdown
Contributor

Default to ML mode

Make ml the default removal mode now that every Matte deploy provisions the bundled ISNet model (bg-remover v0.8.0).

  • matte-server default_modeml (used when a request omits mode).
  • matte-client default_modeml (the client always sends an explicit mode from its config, so the server default alone wouldn't reach client-based consumers).

ML produces clean, fully-opaque cutouts at acceptable latency — the right default for an audience optimizing for cost/quality over raw speed. grabcut remains one env var away (MATTE_DEFAULT_MODE=grabcut), and callers can still pass mode per request.

Gate

composer ready green — pint clean, phpstan 0 errors, pest 33/33 (81 assertions), audit clean. matte-server 32 passed / 1 env-skip; matte-client 7 passed. Updated the one HTTP test that submitted without a mode (its expected output key now uses Mode::Ml).

Make ml the default removal mode on both the server (for direct API callers)
and the client (the send side always specifies a mode), now that a model is
provisioned by default. Matte's audience optimizes for cost/quality over raw
speed, and ML produces clean cutouts at acceptable latency. Override with
MATTE_DEFAULT_MODE=grabcut.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@edgrosvenor edgrosvenor merged commit 8c8d3f2 into main Jun 15, 2026
2 checks passed
@edgrosvenor edgrosvenor deleted the feat/ml-default branch June 15, 2026 12:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant