Backward compatibility
OpenAI is committed to providing stability to API users by avoiding breaking changes in major API versions whenever reasonably possible. This includes:
- The REST API (currently
v1
) - Our first-party SDKs (released SDKs will adhere to semantic versioning)
- Model families (like
gpt-4o
oro1-mini
)
Backwards-compatible changes and upgrades will be continuously delivered over time. These and any rare breaking changes will be communicated in the changelog. Here are some examples of changes which we consider to be backwards-compatible (non-breaking) changes.
Changes in model prompting behavior between snapshots
Model outputs are by their nature variable, so changes in prompting and model behavior between snapshots should be expected. For example, if you moved from gpt-4o-2024-05-13
to gpt-4o-2024-08-06
, the same system
or user
messages could function differently between versions. The best way to ensure consistent prompting behavior and model output is to use pinned model versions, and to implement evals for your applications.
Backwards-compatible API changes
- Adding new resources (URLs) to the REST API and SDKs
- Adding new optional API parameters
- Adding new properties to JSON response objects or event data
- Changing the order of properties in a JSON response object
- Changing the length or format of opaque strings, like resource identifiers and UUIDs
- Adding new event types (in either streaming or the Realtime API)