<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Driftline</title>
    <description>The latest articles on DEV Community by Driftline (@aidriftline).</description>
    <link>https://dev.to/aidriftline</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4240496%2F9af522fd-1bfd-416f-849b-0884da65962a.png</url>
      <title>DEV Community: Driftline</title>
      <link>https://dev.to/aidriftline</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aidriftline"/>
    <language>en</language>
    <item>
      <title>OpenAI retires gpt-5.3-codex, gpt-5.1 and gpt-5.4-nano on 1 April 2027: what to change</title>
      <dc:creator>Driftline</dc:creator>
      <pubDate>Sun, 15 Nov 2026 13:15:07 +0000</pubDate>
      <link>https://dev.to/aidriftline/openai-retires-gpt-53-codex-gpt-51-and-gpt-54-nano-on-1-april-2027-what-to-change-647</link>
      <guid>https://dev.to/aidriftline/openai-retires-gpt-53-codex-gpt-51-and-gpt-54-nano-on-1-april-2027-what-to-change-647</guid>
      <description>&lt;p&gt;On 1 April 2027, OpenAI removes gpt-5.3-codex, gpt-5.1 and gpt-5.4-nano from the API, together with the dated versions listed below. From that day, API calls to these models fail. OpenAI's recommended replacements (as of 13 November 2026): gpt-6-sol and gpt-6-luna.&lt;/p&gt;

&lt;h2&gt;
  
  
  What retires, and what replaces it
&lt;/h2&gt;

&lt;p&gt;OpenAI lists these models on its &lt;a href="https://developers.openai.com/api/docs/deprecations" rel="noopener noreferrer"&gt;deprecations page&lt;/a&gt;. The dates and replacements on this page come from Driftline's registry, which is checked against that page several times a day, so they stay current if OpenAI changes them.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Replacement&lt;/th&gt;
&lt;th&gt;Moving to it&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-5.3-codex/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-5.3-codex&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-sol&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-5.1/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-5.1&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-sol&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-5.1-2025-11-13/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-5.1-2025-11-13&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-sol&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-5.4-nano/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-5.4-nano&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-luna&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-5.4-nano-2026-03-17/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-5.4-nano-2026-03-17&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-luna&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Find every place your code uses them
&lt;/h2&gt;

&lt;p&gt;Run this in the root of your repository. No install, account or API key; it lists every OpenAI, Anthropic and Google model ID it finds, with file, line, retirement date and replacement:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx -y @aidriftline/driftline .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A plain search works too:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;grep -rnE &lt;span class="s1"&gt;'"(gpt-5\.3-codex|gpt-5\.1|gpt-5\.1-2025-11-13|gpt-5\.4-nano|gpt-5\.4-nano-2026-03-17)"'&lt;/span&gt; .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It misses model names set outside the code: environment variables, deployment settings, values stored in a database, and defaults inside SDKs or agent frameworks you never configured.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test before 1 April 2027
&lt;/h2&gt;

&lt;p&gt;A new model answers the same prompt differently: format, length, tone, and whether JSON still parses. Take 10 to 20 real prompts from your logs, run each on the old model and the replacement, and compare. Do it while the old model still answers; after the date there is nothing left to compare against.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aidriftline.com/#drift" rel="noopener noreferrer"&gt;Driftline Pro&lt;/a&gt; does this in your GitHub Actions: it runs the prompts your app sends on the current model and the replacement, and shows what changed in the pull request.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get a reminder
&lt;/h2&gt;

&lt;p&gt;The free &lt;a href="https://aidriftline.com/#install" rel="noopener noreferrer"&gt;Driftline GitHub Action&lt;/a&gt; flags retired and soon-to-retire model IDs on every pull request, so the next retirement doesn't come as a surprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Will calls to gpt-5.3-codex keep working after 1 April 2027?
&lt;/h3&gt;

&lt;p&gt;No. OpenAI removes the model from the API on that day, and requests to it return an error.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I build &lt;a href="https://aidriftline.com" rel="noopener noreferrer"&gt;Driftline&lt;/a&gt;, which tracks these retirement dates. The current list, with one page per model: &lt;a href="https://aidriftline.com/models/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>openai</category>
      <category>devops</category>
      <category>api</category>
    </item>
    <item>
      <title>OpenAI retires whisper-1, gpt-4o-transcribe, gpt-4o-mini-transcribe and gpt-4o-transcribe-diarize on 26 February 2027: what to change</title>
      <dc:creator>Driftline</dc:creator>
      <pubDate>Sun, 15 Nov 2026 13:14:44 +0000</pubDate>
      <link>https://dev.to/aidriftline/openai-retires-whisper-1-gpt-4o-transcribe-gpt-4o-mini-transcribe-and-gpt-4o-transcribe-diarize-32jl</link>
      <guid>https://dev.to/aidriftline/openai-retires-whisper-1-gpt-4o-transcribe-gpt-4o-mini-transcribe-and-gpt-4o-transcribe-diarize-32jl</guid>
      <description>&lt;p&gt;On 26 February 2027, OpenAI removes whisper-1, gpt-4o-transcribe, gpt-4o-mini-transcribe and gpt-4o-transcribe-diarize from the API, together with its dated version. From that day, API calls to these models fail. OpenAI's recommended replacement (as of 13 November 2026): gpt-live-transcribe or gpt-transcribe.&lt;/p&gt;

&lt;h2&gt;
  
  
  What retires, and what replaces it
&lt;/h2&gt;

&lt;p&gt;OpenAI lists these models on its &lt;a href="https://developers.openai.com/api/docs/deprecations" rel="noopener noreferrer"&gt;deprecations page&lt;/a&gt;. The dates and replacements on this page come from Driftline's registry, which is checked against that page several times a day, so they stay current if OpenAI changes them.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Replacement&lt;/th&gt;
&lt;th&gt;Moving to it&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/whisper-1/" rel="noopener noreferrer"&gt;&lt;code&gt;whisper-1&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-live-transcribe&lt;/code&gt; or &lt;code&gt;gpt-transcribe&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Pick one of two&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-transcribe/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-transcribe&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-live-transcribe&lt;/code&gt; or &lt;code&gt;gpt-transcribe&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Pick one of two&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-mini-transcribe/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-mini-transcribe&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-live-transcribe&lt;/code&gt; or &lt;code&gt;gpt-transcribe&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Pick one of two&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-mini-transcribe-2025-12-15/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-mini-transcribe-2025-12-15&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-live-transcribe&lt;/code&gt; or &lt;code&gt;gpt-transcribe&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Pick one of two&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-transcribe-diarize/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-transcribe-diarize&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-live-transcribe&lt;/code&gt; or &lt;code&gt;gpt-transcribe&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Pick one of two&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  More than a new model name
&lt;/h2&gt;

&lt;p&gt;For these models, changing the name isn't the whole job:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OpenAI names two replacements: gpt-transcribe for recorded files, gpt-live-transcribe for live audio. Word timestamps, subtitles and translation work differently, so check those if you use them. &lt;a href="https://developers.openai.com/api/docs/guides/transcription" rel="noopener noreferrer"&gt;OpenAI's guide&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Find every place your code uses them
&lt;/h2&gt;

&lt;p&gt;Run this in the root of your repository. No install, account or API key; it lists every OpenAI, Anthropic and Google model ID it finds, with file, line, retirement date and replacement:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx -y @aidriftline/driftline .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A plain search works too:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;grep -rnE &lt;span class="s1"&gt;'"(whisper-1|gpt-4o-transcribe|gpt-4o-mini-transcribe|gpt-4o-mini-transcribe-2025-12-15|gpt-4o-transcribe-diarize)"'&lt;/span&gt; .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It misses model names set outside the code: environment variables, deployment settings, values stored in a database, and defaults inside SDKs or agent frameworks you never configured.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test before 26 February 2027
&lt;/h2&gt;

&lt;p&gt;Run a handful of real requests on the replacement and compare the results with what you get today, before the date. Check the parts your code depends on: output format, quality, length and timing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get a reminder
&lt;/h2&gt;

&lt;p&gt;The free &lt;a href="https://aidriftline.com/#install" rel="noopener noreferrer"&gt;Driftline GitHub Action&lt;/a&gt; flags retired and soon-to-retire model IDs on every pull request, so the next retirement doesn't come as a surprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Will calls to whisper-1 keep working after 26 February 2027?
&lt;/h3&gt;

&lt;p&gt;No. OpenAI removes the model from the API on that day, and requests to it return an error.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I build &lt;a href="https://aidriftline.com" rel="noopener noreferrer"&gt;Driftline&lt;/a&gt;, which tracks these retirement dates. The current list, with one page per model: &lt;a href="https://aidriftline.com/models/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>openai</category>
      <category>devops</category>
      <category>api</category>
    </item>
    <item>
      <title>OpenAI retires gpt-realtime, gpt-4o-realtime, gpt-audio, gpt-4o-audio and 5 more on 20 January 2027: what to change</title>
      <dc:creator>Driftline</dc:creator>
      <pubDate>Sun, 15 Nov 2026 13:14:18 +0000</pubDate>
      <link>https://dev.to/aidriftline/openai-retires-gpt-realtime-gpt-4o-realtime-gpt-audio-gpt-4o-audio-and-5-more-on-20-january-2cmh</link>
      <guid>https://dev.to/aidriftline/openai-retires-gpt-realtime-gpt-4o-realtime-gpt-audio-gpt-4o-audio-and-5-more-on-20-january-2cmh</guid>
      <description>&lt;p&gt;On 20 January 2027, OpenAI removes gpt-realtime, gpt-4o-realtime, gpt-audio, gpt-4o-audio and 5 more from the API, together with the dated versions listed below. From that day, API calls to these models fail. OpenAI's recommended replacements (as of 13 November 2026): gpt-realtime-2.1, gpt-audio-1.5, gpt-realtime-2.1-mini and gpt-live-transcribe or gpt-transcribe.&lt;/p&gt;

&lt;h2&gt;
  
  
  What retires, and what replaces it
&lt;/h2&gt;

&lt;p&gt;OpenAI lists these models on its &lt;a href="https://developers.openai.com/api/docs/deprecations" rel="noopener noreferrer"&gt;deprecations page&lt;/a&gt;. The dates and replacements on this page come from Driftline's registry, which is checked against that page several times a day, so they stay current if OpenAI changes them.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Replacement&lt;/th&gt;
&lt;th&gt;Moving to it&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-realtime/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-realtime&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-realtime-2025-08-28/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-realtime-2025-08-28&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-realtime/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-realtime&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-audio/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-audio&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-audio-1.5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-audio-2025-08-28/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-audio-2025-08-28&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-audio-1.5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-audio/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-audio&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-audio-1.5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-audio-mini/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-audio-mini&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-audio-1.5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-audio-mini-2025-12-15/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-audio-mini-2025-12-15&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-audio-1.5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-mini-audio/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-mini-audio&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-audio-1.5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-realtime-mini/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-realtime-mini&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1-mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-realtime-mini-2025-12-15/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-realtime-mini-2025-12-15&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1-mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-mini-realtime/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-mini-realtime&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1-mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-mini-transcribe-2025-03-20/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-mini-transcribe-2025-03-20&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-live-transcribe&lt;/code&gt; or &lt;code&gt;gpt-transcribe&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Pick one of two&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  More than a new model name
&lt;/h2&gt;

&lt;p&gt;For these models, changing the name isn't the whole job:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OpenAI names two replacements: gpt-transcribe for recorded files, gpt-live-transcribe for live audio. Word timestamps, subtitles and translation work differently, so check those if you use them. &lt;a href="https://developers.openai.com/api/docs/guides/transcription" rel="noopener noreferrer"&gt;OpenAI's guide&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Find every place your code uses them
&lt;/h2&gt;

&lt;p&gt;Run this in the root of your repository. No install, account or API key; it lists every OpenAI, Anthropic and Google model ID it finds, with file, line, retirement date and replacement:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx -y @aidriftline/driftline .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A plain search works too:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;grep -rnE &lt;span class="s1"&gt;'"(gpt-realtime|gpt-realtime-2025-08-28|gpt-4o-realtime|gpt-audio|gpt-audio-2025-08-28|gpt-4o-audio|gpt-audio-mini|gpt-audio-mini-2025-12-15|gpt-4o-mini-audio|gpt-realtime-mini|gpt-realtime-mini-2025-12-15|gpt-4o-mini-realtime|gpt-4o-mini-transcribe-2025-03-20)"'&lt;/span&gt; .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It misses model names set outside the code: environment variables, deployment settings, values stored in a database, and defaults inside SDKs or agent frameworks you never configured.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test before 20 January 2027
&lt;/h2&gt;

&lt;p&gt;Run a handful of real requests on the replacement and compare the results with what you get today, before the date. Check the parts your code depends on: output format, quality, length and timing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get a reminder
&lt;/h2&gt;

&lt;p&gt;The free &lt;a href="https://aidriftline.com/#install" rel="noopener noreferrer"&gt;Driftline GitHub Action&lt;/a&gt; flags retired and soon-to-retire model IDs on every pull request, so the next retirement doesn't come as a surprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Will calls to gpt-realtime keep working after 20 January 2027?
&lt;/h3&gt;

&lt;p&gt;No. OpenAI removes the model from the API on that day, and requests to it return an error.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I build &lt;a href="https://aidriftline.com" rel="noopener noreferrer"&gt;Driftline&lt;/a&gt;, which tracks these retirement dates. The current list, with one page per model: &lt;a href="https://aidriftline.com/models/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>openai</category>
      <category>devops</category>
      <category>api</category>
    </item>
    <item>
      <title>OpenAI retires dated gpt-4o, gpt-4o-mini, gpt-4.1 and gpt-4.1-mini versions on 14 January 2027: what to change</title>
      <dc:creator>Driftline</dc:creator>
      <pubDate>Sun, 15 Nov 2026 13:13:49 +0000</pubDate>
      <link>https://dev.to/aidriftline/openai-retires-dated-gpt-4o-gpt-4o-mini-gpt-41-and-gpt-41-mini-versions-on-14-january-2027-3bpa</link>
      <guid>https://dev.to/aidriftline/openai-retires-dated-gpt-4o-gpt-4o-mini-gpt-41-and-gpt-41-mini-versions-on-14-january-2027-3bpa</guid>
      <description>&lt;p&gt;On 14 January 2027, OpenAI removes dated gpt-4o, gpt-4o-mini, gpt-4.1 and gpt-4.1-mini versions from the API. From that day, API calls to these models fail. OpenAI's recommended replacement (as of 13 November 2026): gpt-6-luna.&lt;/p&gt;

&lt;h2&gt;
  
  
  What retires, and what replaces it
&lt;/h2&gt;

&lt;p&gt;OpenAI lists these models on its &lt;a href="https://developers.openai.com/api/docs/deprecations" rel="noopener noreferrer"&gt;deprecations page&lt;/a&gt;. The dates and replacements on this page come from Driftline's registry, which is checked against that page several times a day, so they stay current if OpenAI changes them.&lt;/p&gt;

&lt;p&gt;Only these dated versions are on OpenAI's list. The short names (&lt;code&gt;gpt-4o&lt;/code&gt;, &lt;code&gt;gpt-4o-mini&lt;/code&gt;, &lt;code&gt;gpt-4.1&lt;/code&gt;, &lt;code&gt;gpt-4.1-mini&lt;/code&gt;) aren't, so check which version your code really calls.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Replacement&lt;/th&gt;
&lt;th&gt;Moving to it&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-2024-08-06/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-2024-08-06&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-luna&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-2024-11-20/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-2024-11-20&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-luna&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-mini-2024-07-18/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-mini-2024-07-18&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-luna&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4.1-2025-04-14/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4.1-2025-04-14&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-luna&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4.1-mini-2025-04-14/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4.1-mini-2025-04-14&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-luna&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Find every place your code uses them
&lt;/h2&gt;

&lt;p&gt;Run this in the root of your repository. No install, account or API key; it lists every OpenAI, Anthropic and Google model ID it finds, with file, line, retirement date and replacement:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx -y @aidriftline/driftline .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A plain search works too:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;grep -rnE &lt;span class="s1"&gt;'"(gpt-4o-2024-08-06|gpt-4o-2024-11-20|gpt-4o-mini-2024-07-18|gpt-4\.1-2025-04-14|gpt-4\.1-mini-2025-04-14)"'&lt;/span&gt; .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It misses model names set outside the code: environment variables, deployment settings, values stored in a database, and defaults inside SDKs or agent frameworks you never configured.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test before 14 January 2027
&lt;/h2&gt;

&lt;p&gt;A new model answers the same prompt differently: format, length, tone, and whether JSON still parses. Take 10 to 20 real prompts from your logs, run each on the old model and the replacement, and compare. Do it while the old model still answers; after the date there is nothing left to compare against.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aidriftline.com/#drift" rel="noopener noreferrer"&gt;Driftline Pro&lt;/a&gt; does this in your GitHub Actions: it runs the prompts your app sends on the current model and the replacement, and shows what changed in the pull request.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get a reminder
&lt;/h2&gt;

&lt;p&gt;The free &lt;a href="https://aidriftline.com/#install" rel="noopener noreferrer"&gt;Driftline GitHub Action&lt;/a&gt; flags retired and soon-to-retire model IDs on every pull request, so the next retirement doesn't come as a surprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Will calls to gpt-4o keep working after 14 January 2027?
&lt;/h3&gt;

&lt;p&gt;Calls to the dated versions listed above stop working on that day and return an error. Check which version a short name like &lt;code&gt;gpt-4o&lt;/code&gt; points to before relying on it.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I build &lt;a href="https://aidriftline.com" rel="noopener noreferrer"&gt;Driftline&lt;/a&gt;, which tracks these retirement dates. The current list, with one page per model: &lt;a href="https://aidriftline.com/models/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>openai</category>
      <category>devops</category>
      <category>api</category>
    </item>
    <item>
      <title>OpenAI retires tts-1, tts-1-hd and gpt-4o-mini-tts on 6 January 2027: what to change</title>
      <dc:creator>Driftline</dc:creator>
      <pubDate>Sun, 15 Nov 2026 09:02:41 +0000</pubDate>
      <link>https://dev.to/aidriftline/openai-retires-tts-1-tts-1-hd-and-gpt-4o-mini-tts-on-6-january-2027-what-to-change-125d</link>
      <guid>https://dev.to/aidriftline/openai-retires-tts-1-tts-1-hd-and-gpt-4o-mini-tts-on-6-january-2027-what-to-change-125d</guid>
      <description>&lt;p&gt;On 6 January 2027, OpenAI removes tts-1, tts-1-hd and gpt-4o-mini-tts from the API, together with the dated versions listed below. From that day, API calls to these models fail. OpenAI's recommended replacement (as of 13 November 2026): gpt-realtime-2.1-mini.&lt;/p&gt;

&lt;h2&gt;
  
  
  What retires, and what replaces it
&lt;/h2&gt;

&lt;p&gt;OpenAI lists these models on its &lt;a href="https://developers.openai.com/api/docs/deprecations" rel="noopener noreferrer"&gt;deprecations page&lt;/a&gt;. The dates and replacements on this page come from Driftline's registry, which is checked against that page several times a day, so they stay current if OpenAI changes them.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Replacement&lt;/th&gt;
&lt;th&gt;Moving to it&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/tts-1/" rel="noopener noreferrer"&gt;&lt;code&gt;tts-1&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1-mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;API change&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/tts-1-hd/" rel="noopener noreferrer"&gt;&lt;code&gt;tts-1-hd&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1-mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;API change&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-mini-tts-2025-03-20/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-mini-tts-2025-03-20&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1-mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;API change&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-mini-tts/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-mini-tts&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1-mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;API change&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-4o-mini-tts-2025-12-15/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-4o-mini-tts-2025-12-15&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-realtime-2.1-mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;API change&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  More than a new model name
&lt;/h2&gt;

&lt;p&gt;For these models, changing the name isn't the whole job:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OpenAI calls this a change of API workflow: the replacement isn't a model for /v1/audio/speech and runs through the Realtime API. &lt;a href="https://developers.openai.com/api/docs/guides/text-to-speech" rel="noopener noreferrer"&gt;OpenAI's guide&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Find every place your code uses them
&lt;/h2&gt;

&lt;p&gt;Run this in the root of your repository. No install, account or API key; it lists every OpenAI, Anthropic and Google model ID it finds, with file, line, retirement date and replacement:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx -y @aidriftline/driftline .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A plain search works too:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;grep -rnE &lt;span class="s1"&gt;'"(tts-1|tts-1-hd|gpt-4o-mini-tts-2025-03-20|gpt-4o-mini-tts|gpt-4o-mini-tts-2025-12-15)"'&lt;/span&gt; .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It misses model names set outside the code: environment variables, deployment settings, values stored in a database, and defaults inside SDKs or agent frameworks you never configured.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test before 6 January 2027
&lt;/h2&gt;

&lt;p&gt;Run a handful of real requests on the replacement and compare the results with what you get today, before the date. Check the parts your code depends on: output format, quality, length and timing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get a reminder
&lt;/h2&gt;

&lt;p&gt;The free &lt;a href="https://aidriftline.com/#install" rel="noopener noreferrer"&gt;Driftline GitHub Action&lt;/a&gt; flags retired and soon-to-retire model IDs on every pull request, so the next retirement doesn't come as a surprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Will calls to tts-1 keep working after 6 January 2027?
&lt;/h3&gt;

&lt;p&gt;No. OpenAI removes the model from the API on that day, and requests to it return an error.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I build &lt;a href="https://aidriftline.com" rel="noopener noreferrer"&gt;Driftline&lt;/a&gt;, which tracks these retirement dates. The current list, with one page per model: &lt;a href="https://aidriftline.com/models/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>openai</category>
      <category>devops</category>
      <category>api</category>
    </item>
    <item>
      <title>OpenAI retires gpt-image-1-mini, gpt-image-1.5 and chatgpt-image-latest on 1 December 2026: what to change</title>
      <dc:creator>Driftline</dc:creator>
      <pubDate>Sun, 15 Nov 2026 09:01:48 +0000</pubDate>
      <link>https://dev.to/aidriftline/openai-retires-gpt-image-1-mini-gpt-image-15-and-chatgpt-image-latest-on-1-december-2026-what-to-566g</link>
      <guid>https://dev.to/aidriftline/openai-retires-gpt-image-1-mini-gpt-image-15-and-chatgpt-image-latest-on-1-december-2026-what-to-566g</guid>
      <description>&lt;p&gt;On 1 December 2026, OpenAI removes gpt-image-1-mini, gpt-image-1.5 and chatgpt-image-latest from the API, together with its dated version. From that day, API calls to these models fail. OpenAI's recommended replacement (as of 13 November 2026): gpt-image-2.6-sunburst or gpt-image-2.6-flare.&lt;/p&gt;

&lt;h2&gt;
  
  
  What retires, and what replaces it
&lt;/h2&gt;

&lt;p&gt;OpenAI lists these models on its &lt;a href="https://developers.openai.com/api/docs/deprecations" rel="noopener noreferrer"&gt;deprecations page&lt;/a&gt;. The dates and replacements on this page come from Driftline's registry, which is checked against that page several times a day, so they stay current if OpenAI changes them.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Replacement&lt;/th&gt;
&lt;th&gt;Moving to it&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-image-1-mini/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-image-1-mini&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-image-2.6-sunburst&lt;/code&gt; or &lt;code&gt;gpt-image-2.6-flare&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-image-1.5/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-image-1.5&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-image-2.6-sunburst&lt;/code&gt; or &lt;code&gt;gpt-image-2.6-flare&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gpt-image-1.5-2025-12-16/" rel="noopener noreferrer"&gt;&lt;code&gt;gpt-image-1.5-2025-12-16&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-image-2.6-sunburst&lt;/code&gt; or &lt;code&gt;gpt-image-2.6-flare&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/chatgpt-image-latest/" rel="noopener noreferrer"&gt;&lt;code&gt;chatgpt-image-latest&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-image-2.6-sunburst&lt;/code&gt; or &lt;code&gt;gpt-image-2.6-flare&lt;/code&gt;
&lt;/td&gt;
&lt;td&gt;Rename&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  Find every place your code uses them
&lt;/h2&gt;

&lt;p&gt;Run this in the root of your repository. No install, account or API key; it lists every OpenAI, Anthropic and Google model ID it finds, with file, line, retirement date and replacement:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx -y @aidriftline/driftline .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A plain search works too:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;grep -rnE &lt;span class="s1"&gt;'"(gpt-image-1-mini|gpt-image-1\.5|gpt-image-1\.5-2025-12-16|chatgpt-image-latest)"'&lt;/span&gt; .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It misses model names set outside the code: environment variables, deployment settings, values stored in a database, and defaults inside SDKs or agent frameworks you never configured.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test before 1 December 2026
&lt;/h2&gt;

&lt;p&gt;Run a handful of real requests on the replacement and compare the results with what you get today, before the date. Check the parts your code depends on: output format, quality, length and timing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get a reminder
&lt;/h2&gt;

&lt;p&gt;The free &lt;a href="https://aidriftline.com/#install" rel="noopener noreferrer"&gt;Driftline GitHub Action&lt;/a&gt; flags retired and soon-to-retire model IDs on every pull request, so the next retirement doesn't come as a surprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Will calls to gpt-image-1-mini keep working after 1 December 2026?
&lt;/h3&gt;

&lt;p&gt;No. OpenAI removes the model from the API on that day, and requests to it return an error.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I build &lt;a href="https://aidriftline.com" rel="noopener noreferrer"&gt;Driftline&lt;/a&gt;, which tracks these retirement dates. The current list, with one page per model: &lt;a href="https://aidriftline.com/models/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>openai</category>
      <category>devops</category>
      <category>api</category>
    </item>
    <item>
      <title>Google switches gemini-2.5-pro and gemini-2.5-flash to a newer model on 1 December 2026: what to change</title>
      <dc:creator>Driftline</dc:creator>
      <pubDate>Fri, 13 Nov 2026 22:21:00 +0000</pubDate>
      <link>https://dev.to/aidriftline/google-switches-gemini-25-pro-and-gemini-25-flash-to-a-newer-model-on-1-december-2026-what-to-1298</link>
      <guid>https://dev.to/aidriftline/google-switches-gemini-25-pro-and-gemini-25-flash-to-a-newer-model-on-1-december-2026-what-to-1298</guid>
      <description>&lt;p&gt;On 1 December 2026, Google starts answering API requests for gemini-2.5-pro with gemini-3.8-flash and gemini-2.5-flash with gemini-3.5-flash-lite. The calls keep going through, but the answers come from a different model.&lt;/p&gt;

&lt;h2&gt;
  
  
  What changes
&lt;/h2&gt;

&lt;p&gt;Google lists these models on its &lt;a href="https://ai.google.dev/gemini-api/docs/deprecations" rel="noopener noreferrer"&gt;deprecations page&lt;/a&gt;. The dates and replacements on this page come from Driftline's registry, which is checked against that page several times a day, so they stay current if Google changes them.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Replacement&lt;/th&gt;
&lt;th&gt;Moving to it&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gemini-2.5-pro/" rel="noopener noreferrer"&gt;&lt;code&gt;gemini-2.5-pro&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gemini-3.8-flash&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Parameter changes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/gemini-2.5-flash/" rel="noopener noreferrer"&gt;&lt;code&gt;gemini-2.5-flash&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gemini-3.5-flash-lite&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Parameter changes&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  More than a new model name
&lt;/h2&gt;

&lt;p&gt;For these models, changing the name isn't the whole job:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Gemini 3 changes the request: remove temperature, top_p, top_k, candidate_count and prefilled model turns, replace thinking_budget with thinking_level, and check function calling. Google's guides: &lt;a href="https://ai.google.dev/gemini-api/docs/whats-new-gemini-3.8" rel="noopener noreferrer"&gt;for gemini-3.8-flash&lt;/a&gt;, &lt;a href="https://ai.google.dev/gemini-api/docs/whats-new-gemini-3.6" rel="noopener noreferrer"&gt;for gemini-3.5-flash-lite&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Find every place your code uses them
&lt;/h2&gt;

&lt;p&gt;Run this in the root of your repository. No install, account or API key; it lists every OpenAI, Anthropic and Google model ID it finds, with file, line, retirement date and replacement:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx -y @aidriftline/driftline .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A plain search works too:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;grep -rnE &lt;span class="s1"&gt;'"(gemini-2\.5-pro|gemini-2\.5-flash)"'&lt;/span&gt; .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It misses model names set outside the code: environment variables, deployment settings, values stored in a database, and defaults inside SDKs or agent frameworks you never configured.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test before 1 December 2026
&lt;/h2&gt;

&lt;p&gt;A new model answers the same prompt differently: format, length, tone, and whether JSON still parses. Take 10 to 20 real prompts from your logs, run each on the old model and the replacement, and compare. Do it while the old model still answers; after the date there is nothing left to compare against.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aidriftline.com/#drift" rel="noopener noreferrer"&gt;Driftline Pro&lt;/a&gt; does this in your GitHub Actions: it runs the prompts your app sends on the current model and the replacement, and shows what changed in the pull request.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get a reminder
&lt;/h2&gt;

&lt;p&gt;The free &lt;a href="https://aidriftline.com/#install" rel="noopener noreferrer"&gt;Driftline GitHub Action&lt;/a&gt; flags retired and soon-to-retire model IDs on every pull request, so the next retirement doesn't come as a surprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Will calls to gemini-2.5-pro keep working after 1 December 2026?
&lt;/h3&gt;

&lt;p&gt;They keep being answered, by gemini-3.8-flash and gemini-3.5-flash-lite. Google still lists request changes to make before then, see above.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I build &lt;a href="https://aidriftline.com" rel="noopener noreferrer"&gt;Driftline&lt;/a&gt;, which tracks these retirement dates. The current list, with one page per model: &lt;a href="https://aidriftline.com/models/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>gemini</category>
      <category>devops</category>
      <category>api</category>
    </item>
    <item>
      <title>Anthropic retires claude-sonnet-4-5 on 30 November 2026: what to change</title>
      <dc:creator>Driftline</dc:creator>
      <pubDate>Fri, 13 Nov 2026 22:11:49 +0000</pubDate>
      <link>https://dev.to/aidriftline/anthropic-retires-claude-sonnet-4-5-on-30-november-2026-what-to-change-1e11</link>
      <guid>https://dev.to/aidriftline/anthropic-retires-claude-sonnet-4-5-on-30-november-2026-what-to-change-1e11</guid>
      <description>&lt;p&gt;On 30 November 2026, Anthropic removes claude-sonnet-4-5 from the API, together with its dated version. From that day, API calls to it fail. Anthropic's recommended replacement (as of 13 November 2026): claude-sonnet-5-5.&lt;/p&gt;

&lt;h2&gt;
  
  
  What retires, and what replaces it
&lt;/h2&gt;

&lt;p&gt;Anthropic lists this model on its &lt;a href="https://platform.claude.com/docs/en/about-claude/model-deprecations" rel="noopener noreferrer"&gt;deprecations page&lt;/a&gt;. The dates and replacements on this page come from Driftline's registry, which is checked against that page several times a day, so they stay current if Anthropic changes them.&lt;/p&gt;

&lt;p&gt;&lt;code&gt;claude-sonnet-4-5&lt;/code&gt; is the short name for &lt;code&gt;claude-sonnet-4-5-20250929&lt;/code&gt;, so both stop working.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Replacement&lt;/th&gt;
&lt;th&gt;Moving to it&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;a href="https://aidriftline.com/models/claude-sonnet-4-5-20250929/" rel="noopener noreferrer"&gt;&lt;code&gt;claude-sonnet-4-5-20250929&lt;/code&gt;&lt;/a&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;claude-sonnet-5-5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Parameter changes&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h2&gt;
  
  
  More than a new model name
&lt;/h2&gt;

&lt;p&gt;For this model, changing the name isn't the whole job:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Claude 4.7 and later accept only the default temperature, top_p and top_k: if your code sets them, remove them. &lt;a href="https://platform.claude.com/docs/en/api/migration-2026-10-21" rel="noopener noreferrer"&gt;Anthropic's guide&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Find every place your code uses them
&lt;/h2&gt;

&lt;p&gt;Run this in the root of your repository. No install, account or API key; it lists every OpenAI, Anthropic and Google model ID it finds, with file, line, retirement date and replacement:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx -y @aidriftline/driftline .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A plain search works too:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;grep -rnE &lt;span class="s1"&gt;'"(claude-sonnet-4-5-20250929)"'&lt;/span&gt; .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It misses model names set outside the code: environment variables, deployment settings, values stored in a database, and defaults inside SDKs or agent frameworks you never configured.&lt;/p&gt;

&lt;h2&gt;
  
  
  Test before 30 November 2026
&lt;/h2&gt;

&lt;p&gt;A new model answers the same prompt differently: format, length, tone, and whether JSON still parses. Take 10 to 20 real prompts from your logs, run each on the old model and the replacement, and compare. Do it while the old model still answers; after the date there is nothing left to compare against.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://aidriftline.com/#drift" rel="noopener noreferrer"&gt;Driftline Pro&lt;/a&gt; does this in your GitHub Actions: it runs the prompts your app sends on the current model and the replacement, and shows what changed in the pull request.&lt;/p&gt;

&lt;h2&gt;
  
  
  Get a reminder
&lt;/h2&gt;

&lt;p&gt;The free &lt;a href="https://aidriftline.com/#install" rel="noopener noreferrer"&gt;Driftline GitHub Action&lt;/a&gt; flags retired and soon-to-retire model IDs on every pull request, so the next retirement doesn't come as a surprise.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questions
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Will calls to claude-sonnet-4-5 keep working after 30 November 2026?
&lt;/h3&gt;

&lt;p&gt;No. Anthropic removes the model from the API on that day, and requests to it return an error.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I build &lt;a href="https://aidriftline.com" rel="noopener noreferrer"&gt;Driftline&lt;/a&gt;, which tracks these retirement dates. The current list, with one page per model: &lt;a href="https://aidriftline.com/models/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>claude</category>
      <category>devops</category>
      <category>api</category>
    </item>
    <item>
      <title>OpenAI retires gpt-5 and o3 on 11 December 2026: what to change and how to test it</title>
      <dc:creator>Driftline</dc:creator>
      <pubDate>Thu, 12 Nov 2026 07:37:28 +0000</pubDate>
      <link>https://dev.to/aidriftline/openai-retires-gpt-5-and-o3-on-11-december-2026-what-to-change-and-how-to-test-it-540d</link>
      <guid>https://dev.to/aidriftline/openai-retires-gpt-5-and-o3-on-11-december-2026-what-to-change-and-how-to-test-it-540d</guid>
      <description>&lt;p&gt;&lt;em&gt;Updated 13 November 2026: OpenAI changed the recommended replacements. The table below shows the new ones.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;On 11 December 2026, OpenAI removes gpt-5, gpt-5-mini, gpt-5-nano, gpt-5-pro, o3 and o3-pro from the API, together with their dated snapshots. From that day, API calls to these models fail. OpenAI's recommended replacements (as of 13 November 2026) are gpt-6.1-sol, gpt-6.1-terra and gpt-6-luna.&lt;/p&gt;

&lt;p&gt;Changing the model name takes a minute. Checking that your prompts still give the answers your app expects takes longer, and it can only be done while the old model still answers.&lt;/p&gt;

&lt;h2&gt;
  
  
  What retires, and what replaces it
&lt;/h2&gt;

&lt;p&gt;OpenAI announced the shutdown on 11 June 2026 on its &lt;a href="https://developers.openai.com/api/docs/deprecations" rel="noopener noreferrer"&gt;deprecations page&lt;/a&gt;. Both the short name and the dated snapshot stop working:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Model&lt;/th&gt;
&lt;th&gt;Snapshot&lt;/th&gt;
&lt;th&gt;Replacement&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;gpt-5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-5-2025-08-07&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6.1-sol&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;gpt-5-mini&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-5-mini-2025-08-07&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6.1-terra&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;gpt-5-nano&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-5-nano-2025-08-07&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6-luna&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;gpt-5-pro&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-5-pro-2025-10-06&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-6.1-sol&lt;/code&gt; with &lt;code&gt;reasoning.mode: pro&lt;/code&gt;, in the Responses API&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;o3&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;o3-2025-04-16&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;gpt-6.1-sol&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;o3-pro&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;o3-pro-2025-06-10&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;
&lt;code&gt;gpt-6.1-sol&lt;/code&gt; with &lt;code&gt;reasoning.mode: pro&lt;/code&gt;, in the Responses API&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Changed:&lt;/strong&gt; OpenAI changed these recommendations on 13 November 2026. Before, it recommended gpt-5.6-sol (for gpt-5, gpt-5-pro, o3 and o3-pro), gpt-5.6-terra (for gpt-5-mini) and gpt-5.6-luna (for gpt-5-nano). The current advice for each model is kept up to date at &lt;a href="https://aidriftline.com/models/gpt-5/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Fine-tuned models built on any of these follow the same date, so an ID like &lt;code&gt;ft:gpt-5-mini-2025-08-07:your-org::abc123&lt;/code&gt; stops working on 11 December too. o3 and o3-pro don't get an o-series successor: both move to gpt-6.1-sol.&lt;/p&gt;

&lt;p&gt;Two other OpenAI shutdowns land just before. On 30 November the Evals platform and the reusable prompts API (&lt;code&gt;v1/prompts&lt;/code&gt;) shut down, and on 1 December the older GPT Image models go.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: find every place your code uses them
&lt;/h2&gt;

&lt;p&gt;Run this in the root of your repository. No install, account or API key; it lists every OpenAI, Anthropic and Google model ID it finds with file, line and retirement date:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx -y @aidriftline/driftline .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A plain search works too, as long as you remember what it misses:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;grep -rnE &lt;span class="s1"&gt;'"(gpt-5(-mini|-nano|-pro)?|o3(-pro)?)(-20[0-9-]+)?"'&lt;/span&gt; .
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Places that are easy to overlook:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Environment variables and deployment settings, such as &lt;code&gt;OPENAI_MODEL=gpt-5&lt;/code&gt; in a &lt;code&gt;.env&lt;/code&gt; file, a Helm chart or your hosting dashboard. These never show up in a code search.&lt;/li&gt;
&lt;li&gt;Model names stored in a database, for example a per-customer or per-feature setting.&lt;/li&gt;
&lt;li&gt;Defaults inside libraries and agent frameworks. If you never set a model, check which one your SDK or framework picks.&lt;/li&gt;
&lt;li&gt;Evaluation scripts, notebooks and cron jobs that only run once a week.&lt;/li&gt;
&lt;li&gt;Azure OpenAI deployments. Azure has its own retirement schedule, so check Azure's model retirement page for those.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 2: test your prompts before 11 December
&lt;/h2&gt;

&lt;p&gt;A new model gives different answers to the same prompt. Usually they're fine, sometimes better. The problems show up where your code depends on the shape of the answer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;JSON that no longer matches your schema, or extra text around it&lt;/li&gt;
&lt;li&gt;answers that are much longer or shorter, which matters for UI limits and cost&lt;/li&gt;
&lt;li&gt;different tool or function calls for the same request&lt;/li&gt;
&lt;li&gt;refusals on prompts that used to work&lt;/li&gt;
&lt;li&gt;a different tone in customer-facing text&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The test is simple. Take 10 to 20 real prompts from your logs, including the odd ones, run each on the old model and on the replacement, and compare the answers side by side. Check that every answer your code parses still parses.&lt;/p&gt;

&lt;p&gt;The timing matters. After 11 December the old model is gone, so you can no longer see what it would have answered. You can only compare while both models respond. With the Evals platform shutting down on 30 November, OpenAI points to &lt;a href="https://www.promptfoo.dev/" rel="noopener noreferrer"&gt;Promptfoo&lt;/a&gt; as one way to run such comparisons yourself.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: switch, then keep it from happening again
&lt;/h2&gt;

&lt;p&gt;Change the model name, deploy well before 11 December, and watch your error logs for the first days. If you use &lt;code&gt;gpt-5-pro&lt;/code&gt; or &lt;code&gt;o3-pro&lt;/code&gt;, set &lt;code&gt;reasoning.mode: pro&lt;/code&gt; on &lt;code&gt;gpt-6.1-sol&lt;/code&gt; (OpenAI says: in the Responses API), otherwise you get the standard mode.&lt;/p&gt;

&lt;p&gt;The replacement models will retire one day too, and as this update shows, the recommended replacement itself can change before the date. A check in CI that flags retired and soon-to-retire model IDs on every pull request saves you from finding out on the day.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;I build &lt;a href="https://aidriftline.com" rel="noopener noreferrer"&gt;Driftline&lt;/a&gt;, which tracks these retirement dates and runs the scan above. The full list of dates, with one page per model, is at &lt;a href="https://aidriftline.com/models/" rel="noopener noreferrer"&gt;aidriftline.com/models&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>openai</category>
      <category>ai</category>
      <category>llm</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
