# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: 'API Evangelist conversational phrasing for Microsoft Azure Custom Speech Models: API' version: 1.0.0 extends: openapi/microsoft-azure-custom-speech-models-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 16 - target: $.paths['/models/locales'].get update: x-apievangelist-phrasing: intent: List locales supported for model adaptation effect: read questions: - Which languages can I adapt a custom speech model for? - Is my locale supported for custom speech model training? instructions: - text: List the locales supported for custom speech model adaptation. - text: Show which languages I can train a custom speech model in. method: generated generated: '2026-09-26' - target: $.paths['/models'].get update: x-apievangelist-phrasing: intent: List my custom speech models effect: read questions: - Which custom speech models have I trained under my Speech subscription? - Where can I see every acoustic and language model I own, not just the base ones? instructions: - text: List all custom speech models for my Speech subscription. - text: Show the adapted acoustic and language models I have created. method: generated generated: '2026-10-01' - target: $.paths['/models'].post update: x-apievangelist-phrasing: intent: Train a new custom speech model effect: write questions: - How do I train a custom speech model from my own datasets? - Can I choose the base model and locale when creating a custom acoustic or language model? instructions: - text: Create a {kind} model named {name} for locale {locale}. slots: kind: requestBody.modelKind name: requestBody.name locale: requestBody.locale - text: Train custom speech model {name} in {locale} from base model {baseModel} using datasets {datasets}. slots: name: requestBody.name locale: requestBody.locale baseModel: requestBody.baseModel datasets: requestBody.datasets method: generated generated: '2026-10-01' - target: $.paths['/models/{id}'].get update: x-apievangelist-phrasing: intent: Get a custom speech model effect: read questions: - How do I check the training status of a custom speech model I started? - Can I see a custom model's details once training finishes? instructions: - text: Get custom speech model {id}. slots: id: path.id - text: Show the training status and details of speech model {id}. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/models/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a custom speech model effect: destructive questions: - How do I get rid of a custom speech model I no longer need? - Can I permanently remove a trained speech model from my subscription? instructions: - text: Delete custom speech model {id}. slots: id: path.id - text: Remove the trained speech model {id} from my subscription. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/models/{id}'].patch update: x-apievangelist-phrasing: intent: Rename or redescribe a speech model effect: write questions: - Can I change the name or description of a trained speech model? - Is it possible to edit a speech model's metadata without retraining it? instructions: - text: Rename speech model {model} to {name}. slots: model: path.id name: requestBody.name - text: Set the name of model {model} to {name} and its description to {description}. slots: model: path.id name: requestBody.name description: requestBody.description method: generated generated: '2026-09-26' - target: $.paths['/models/base'].get update: x-apievangelist-phrasing: intent: List available base speech models effect: read questions: - Which base models can I adapt my custom speech model from? - Can I page through the list of base speech models? instructions: - text: List the base speech models available to my subscription. - text: Show {top} base models, skipping the first {skip}. slots: top: query.top skip: query.skip method: generated generated: '2026-09-26' - target: $.paths['/models/base/{id}'].get update: x-apievangelist-phrasing: intent: Get a base speech model effect: read questions: - What locale and capabilities does a particular base speech model have? - Where can I see details of one base model before adapting it? instructions: - text: Get base model {model}. slots: model: path.id - text: Show the details of base speech model {model}. slots: model: path.id method: generated generated: '2026-09-26' - target: $.paths['/models/{id}/copyto'].post update: x-apievangelist-phrasing: intent: Copy an adapted model to another subscription key effect: write questions: - Can I copy my adapted speech model to a subscription in a different region? - How do I move a custom model using the target subscription key? instructions: - text: Copy speech model {model} to the subscription with key {target_key}. slots: model: path.id target_key: requestBody.targetSubscriptionKey - text: Use the /copyto path to send adapted model {model} to subscription key {target_key}. slots: model: path.id target_key: requestBody.targetSubscriptionKey method: generated generated: '2026-09-26' - target: $.paths['/models/{id}/manifest'].get update: x-apievangelist-phrasing: intent: Get a container manifest for a custom model effect: read questions: - Can I run my custom speech model in an on-premises container? - How long do the download links in a custom model's container manifest stay valid? instructions: - text: Get the on-premises container manifest for custom model {model}. slots: model: path.id - text: Get the container manifest for custom model {model} with links valid for {seconds} seconds. slots: model: path.id seconds: query.sasValidityInSeconds method: generated generated: '2026-09-26' - target: $.paths['/models/base/{id}/manifest'].get update: x-apievangelist-phrasing: intent: Get a container manifest for a base model effect: read questions: - Can a base speech model be deployed in an on-premises container? - Where do I get the manifest to host a base model on premises? instructions: - text: Get the on-premises container manifest for base model {model}. slots: model: path.id - text: Get the base model {model} manifest with SAS links valid for {seconds} seconds. slots: model: path.id seconds: query.sasValidityInSeconds method: generated generated: '2026-09-26' - target: $.paths['/models/{id}:copyto'].post update: x-apievangelist-phrasing: intent: Copy a model with the obsolete :copyto endpoint effect: write questions: - Is the older models :copyto method still usable to copy a custom model to another speech resource? - Which copy endpoint is being removed in future speech API versions? instructions: - text: Copy custom model {model} with the deprecated :copyto method to subscription key {target_key}. slots: model: path.id target_key: requestBody.targetSubscriptionKey - text: Use the obsolete :copyto call to send model {model} to another speech resource. slots: model: path.id method: generated generated: '2026-09-26' - target: $.paths['/models/{id}:copy'].post update: x-apievangelist-phrasing: intent: Copy a custom model to another speech resource effect: write questions: - How do I copy a custom model to a target speech resource after it authorized the copy? - What target region and endpoint do I need to copy a model between speech resources? instructions: - text: Copy model {model} to the speech resource {target_resource} in {region} at {endpoint}. slots: model: path.id target_resource: requestBody.targetResourceId region: requestBody.targetResourceRegion endpoint: requestBody.targetResourceEndpoint - text: Run the current :copy call for model {model} using copy authorization {authorization} that expires {expires}. slots: model: path.id authorization: requestBody.id expires: requestBody.expirationDateTime method: generated generated: '2026-09-26' - target: $.paths['/models:authorizecopy'].post update: x-apievangelist-phrasing: intent: Authorize another speech resource to copy a model in effect: write questions: - How do I let another speech resource copy its custom model into mine? - What must the target speech resource do before a model copy can happen? instructions: - text: Authorize speech resource {source} to copy a model into this resource. slots: source: requestBody.sourceResourceId - text: Grant copy permission to source resource {source}. slots: source: requestBody.sourceResourceId method: generated generated: '2026-09-26' - target: $.paths['/models/{id}/files'].get update: x-apievangelist-phrasing: intent: List the files of a speech model effect: read questions: - What files make up one of my speech models? - Can I filter or page through a model's files? instructions: - text: List the files of speech model {model}. slots: model: path.id - text: Show {top} files of model {model} matching {filter}. slots: top: query.top model: path.id filter: query.filter method: generated generated: '2026-09-26' - target: $.paths['/models/{id}/files/{fileId}'].get update: x-apievangelist-phrasing: intent: Get one file from a speech model effect: read questions: - How do I download a specific file belonging to a speech model? - Can I get a time-limited link to a single model file? instructions: - text: Get file {file} of speech model {model}. slots: file: path.fileId model: path.id - text: Get a link to file {file} in model {model} valid for {seconds} seconds. slots: file: path.fileId model: path.id seconds: query.sasValidityInSeconds method: generated generated: '2026-09-26'