GPT-3.5 Turbo Instruct: Porting the Last Completions Model
Models

GPT-3.5 Turbo Instruct: Porting the Last Completions Model

OpenAI switched off gpt-3.5-turbo-instruct on 28 September 2026. What made a completions model different, and how to port its prompts to a chat model.

GPT-3.5 Turbo Instruct is already gone from OpenAI's API. The deprecations page lists its shutdown as 28 September 2026, with gpt-5.6-terra as the recommended replacement. If you are reading this because a job started failing three weeks ago, the cause is not your code.

The migration is less mechanical than swapping a model name, though, because Instruct was a different kind of model from the chat models that replace it. It took a block of text and continued it. Porting it well means understanding what that gave you and rebuilding the parts you relied on.

What Instruct was

OpenAI introduced it in 2023 as the drop-in replacement for the older InstructGPT completion models such as text-davinci-003, which were shut down on 4 January 2024. Its model page describes it as an older model only compatible with the legacy Completions endpoint, with capabilities similar to GPT-3 era models.

The specifications were modest even then: a 4,096-token context, a knowledge cutoff of September 2021, and a price of $1.50 per million input tokens and $2.00 per million output on OpenAI's page. That is three times the input price of GPT-3.5 Turbo for a quarter of its context, which tells you people kept it for its interface, not its economics.

Completions versus chat: the real difference

A chat model receives a list of messages with roles — system, user, assistant — and the server wraps them in a template the model was trained on. The model always answers as the assistant.

A completions model received one string and predicted what came next. There were no roles and no template. That sounds like a limitation, but it gave you control that chat models make harder:

  • Prefilling the answer. You could end the prompt with {"name": " and the model would continue inside the JSON value. You chose the first tokens of the output.
  • Document continuation. Give it the first half of a template, a log format or a code file, and it carried on in the same style without being asked.
  • Few-shot by pattern. Five examples of Input: … Output: … followed by a sixth input, and the model completed the pattern with no instructions at all.
  • Stop sequences as structure. A stop sequence of \nInput: ended generation exactly where the next example would begin.

Instruct was also instruction-tuned, so you could just ask it to do something. Instruction tuning explained covers how that training turns a raw text predictor into something that follows requests, which is why Instruct sat between a base model and a chat model.

Porting a completions prompt, pattern by pattern

Most completions prompts fall into one of four shapes, and each has a standard translation:

  1. Plain instruction prompts. Move the instruction into the user message unchanged. If it began with framing such as "You are a…", move that to the system message. See system prompts explained.
  2. Few-shot pattern prompts. Either keep the examples inside a single user message, clearly delimited, or convert each example into a user and assistant pair. The pair form usually holds the format more reliably on chat models.
  3. Prefilled JSON. Replace the prefill with structured outputs and a JSON schema. You lose control of the first tokens but gain a guarantee the result parses, which is a better trade.
  4. Document continuation. Say what you want explicitly: "Continue the following file in the same style. Output only the continuation." Then check that the model does not repeat the input or wrap the answer in a code fence; chat models do both by habit.

Stop sequences generally still work on chat endpoints, but they matter less once the model knows it is answering a single request rather than extending a pattern indefinitely.

Behaviour differences to test for

Even with a correct translation, expect changes. Current chat models are more verbose by default, add preambles like "Here is the result", refuse in different places and follow formatting instructions more literally. Code that strips a known prefix or splits on newlines can break quietly.

The fix is a replay test. Take a sample of real prompts and the outputs Instruct produced, run them through the new model, and diff the properties your downstream code relies on: does it parse, is the length in range, are the labels from the allowed set. Model deprecation and migration covers turning that into a repeatable process.

What to do now

If Instruct still appears anywhere in your configuration, it is failing or about to. OpenAI also retired gpt-3.5-turbo-1106 on the same date, and the main GPT-3.5 Turbo alias follows on 23 October 2026, so do not port to another member of the same family.

An aggregator may still show an Instruct listing. Treat that as a question to answer with a test request, not as evidence the model is served. And when you finish, write down which completions-era tricks your prompts depended on. They are the parts most likely to need care in every future migration too.

Common questions

Is gpt-3.5-turbo-instruct still available?

Not from OpenAI. Its deprecations page lists the shutdown as 28 September 2026 and recommends gpt-5.6-terra as the replacement. Aggregator listings may linger, but test before assuming anything still serves the model.

How do I convert a completions prompt to a chat prompt?

Put the instruction in the user message and any role framing in the system message. Convert few-shot examples into user and assistant pairs, replace prefilled JSON with structured outputs, and replay real prompts to check formatting.

What was the difference between GPT-3.5 Turbo and GPT-3.5 Turbo Instruct?

GPT-3.5 Turbo was a chat model on the Chat Completions endpoint with a 16,385-token window. Instruct continued a single text prompt on the legacy Completions endpoint, had a 4,096-token window and cost more per input token.

Similar articles

GPT-3.5 Turbo Guide: The 23 October Shutdown and How to Move
Models
Models·8 min read

GPT-3.5 Turbo Guide: The 23 October Shutdown and How to Move

OpenAI retires gpt-3.5-turbo on 23 October 2026. What the model was, which snapshots and aliases go with it, and a migration plan that fits in a week.

Read
GPT-4 in 2026: What It Was, What It Costs and Moving Off It
Models
Models·7 min read

GPT-4 in 2026: What It Was, What It Costs and Moving Off It

The original GPT-4 still answers on an 8K window at $30 and $60 per million tokens, until 23 October 2026. Why code still calls it and how to plan the migration.

Read
GPT-4 Turbo Guide: 128K In, 4K Out, and a 23 October Deadline
Models
Models·7 min read

GPT-4 Turbo Guide: 128K In, 4K Out, and a 23 October Deadline

GPT-4 Turbo brought a 128K window and vision to GPT-4 at a third of the input price. Why its 4,096-token output cap matters and what replaces it after 23 October.

Read