The TypeSpec definition is an automatic import of [the OpenAI OpenAPI description](https://github.com/openai/openai-openapi) using [tsp-openapi3](https://www.npmjs.com/package/@typespec/openapi3).
npm install @azure-tools/openai-typespecThe TypeSpec definition is an automatic import of the OpenAI OpenAPI description using tsp-openapi3.
PLEASE DO NOT SUBMIT ANY MANUAL MODIFICATIONS AS THEY'LL BE OVERWRITTEN BY THE NEXT IMPORT.
You can install the package by running npm i @azure-tools/openai-typespec or an equivalent command for your package manager.
Here is an example on how you can use the type definitions after installing them.
``TypeSpec
// using an import with a path instead of the whole package is important
// to avoid importing operations which you most likely don't want in your definition
import "@azure-tools/openapi-typespec/models/responses";
using OpenAI;
model MyModel {
someOpenAIProperty: OpenAI.Response;
}
`
This package DOES NOT follow semantic versioning (SemVer). This means ANY version update MAY contain source breaking changes, either directly for the consuming definitions, or indirectly for the assets generated those definitions. The main reason for such a policy being this package is an automatic import of the OpenAPI description shared by OpenAI, and those description do not follow any specific versioning scheme.
The definitions are being updated weekly by the following workflow .github/workflows/weekly-ts.yml.
If you want to manually refresh the definitions you can either:
- Queue a new run for the workflow.
- Run the following commands locally:
`shell`
yarn install
yarn import-openapi
yarn tsp:all
yarn tsp:validate
yarn tsp:validate:export
Bumping the version is handled automatically by the release please workflow. Make sure you follow conventional commits to trigger new releases.
#### GitHub releases
Upon the tag push, the publish.yml` workflow will create a new GitHub release automatically. It can also be queued manually from the web interface/CLI, make sure you select a tag as the source branch.
#### Public npm feed
After the workflow above is completed running, make sure you manually queue the partner pipeline with the following team name: azureaifoundrydevx.