cd /news/ai-tools/eleven-model-snapshots-retire-on-oct… · home › topics › ai-tools › article
[ARTICLE · art-142571] src=dev.to ↗ pub= topic=ai-tools verified=true sentiment=· neutral

Eleven model snapshots retire on October 23. Find them in your repo before your users do

A developer released modelshift, an open-source CLI tool that scans a repository for retiring model IDs, reports their file and line locations with recommended replacements, and can apply fixes or open pull requests. Running it across four unrelated open-source repositories surfaced 131 distinct retiring or retired model IDs referenced 1,649 times across 296 files. The tool also includes a replay command that compares JSON validity, refusals, tool calls, latency and text similarity between an old and new model, and exits with code 1 when a retirement falls within the configured window so it can serve as a CI check.

by read2 min views2 publishedSep 30, 2026

OpenAI shuts down eleven model snapshots on 2026-10-23, among them gpt-4-turbo, gpt-4o-2024-05-13, o3-mini and o4-mini. The GPT-5 and o3 snapshots follow on 2026-12-11. Anthropic and Google retire models on their own schedules too. Most codebases find out when requests start returning 404.

I wrote modelshift to answer two questions from the terminal. Which model IDs in my repo are going away, and does the replacement still behave the same?

npx github:Arthur031221/modelshift scan examples/sample-app

The scan walks the repository and lists each model ID with its file and line, its provider, its lifecycle status and the recommended replacement. The status comes from a bundled registry built from the providers' deprecation pages. The exit code is 1 when something retires within the window, so it also works as a CI check.

I ran it over four popular, unrelated open-source repositories. It found 131 distinct model IDs that are retiring or already retired, referenced 1,649 times across 296 files.

modelshift fix examples/sample-app

fix prints a diff that swaps each ID for its replacement and drops parameters the new model rejects. Claude Opus 4.7 and later, for example, return a 400 when a request sets temperature, top_p or top_k. Add --write to apply the change, or --pr to open a pull request.

Swapping the string is the easy part. The hard part is knowing whether the new model still returns valid JSON, still calls your tools with the same arguments, refuses more often, or takes twice as long.

modelshift replay --from qwen3:1.7b --to qwen3:4b --prompts demo/prompts.jsonl --no-think

replay runs your prompts on both models and compares JSON validity, refusals, tool calls, length, latency and text similarity, then writes an HTML report. It works against any OpenAI-compatible endpoint, including a local Ollama server, so you can try it without API keys. In the bundled example, a weather tool call that the small model made was missing from the larger model's answer, which is the kind of change a string swap would never show.

It needs Node 20 or newer and is not on npm yet, so run it with npx from GitHub. The registry is maintained by hand from provider pages, so a wrong date is the most likely bug. If you find one, please open an issue.

The code is at https://github.com/Arthur031221/modelshift under the MIT license.

── more in #ai-tools 4 stories · sorted by recency
── more on @modelshift 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/eleven-model-snapsho…] indexed:0 read:2min 2026-09-30 · —