Translate5 AI plugin allows the integration with the Microsoft Azure cloud.
This documentation page contains configuration and implementation details important for plugin to be used.
There are 2 ways to use Azure AI integration with Translate5 AI plugin:
- First option supports full integration with finetuning
- Second option needs less permissions in Azure and less configs, but requires a little bit more manual work and supports only chat completions (no fine tuning), thus can be used for translations.
Full integration
All configs described in Configs section of this doc are required. After providing all required configs there will be a possibility to create a language resource of Azure type.
Only OpenAI models like gpt-4, gpt-5 etc will be available.
After language resource is created - translate5 automatically creates a model deployment of the selected model in Azure cloud. Deployment name will contain translate5 language resource id for ease identifying.
Even after deleting the language resource, the deployed model will not be deleted (could be implemented, if it makes sense).
Fine tuning
https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/fine-tuning?tabs=azure-openai&pivots=rest-api
When finetuning a model - a new deployment is created after fine tuning is completed. Please note that Azure documentation says:
After you deploy a customized model, if at any time the deployment remains inactive for greater than fifteen (15) days, the deployment is deleted. The deployment of a customized model is inactive if the model was deployed more than fifteen (15) days ago and no completions or chat completions calls were made to it during a continuous 15-day period. The deletion of an inactive deployment doesn't delete or affect the underlying customized model, and the customized model can be redeployed at any time.
Partial integration
It is possible to provide only runtimeOptions.plugins.translate5AI.Azure.server and runtimeOptions.plugins.translate5AI.Azure.apiToken. In this case deployment should be created manually on https;//ai.azure.com.
Then while creating a language resource in field Engine/Model instead of a select you will have a text field where deployment name should be provided.
Using this integration fine tuning will not work from the Translate5 AI plugin, however still possible to be done manually in Azure.
Configs
The translate5 Azure integration has its own specific configs, that are derived from what Azure needs to work with what translate5 offers for GPT.
All config values can be found in https://portal.azure.com/. If you already have an app with deployed model - just grab existing config values, otherwise read "Short workflow to create all needed resources in Azure"
| translate5 system config ID | explanation | Where to find the value in Azure cloud |
|---|---|---|
| runtimeOptions.plugins.translate5AI.Azure.subscriptionId | Id of the subscription used for the GPT "application" in Azure | Home > Subscriptions |
| runtimeOptions.plugins.translate5AI.Azure.resourceGroupName | Name of the resource group used for the GPT "application" in Azure | Search > Resource groups > Create |
| runtimeOptions.plugins.translate5AI.Azure.accountName | Account name which is also used as a part of custom domain name in Azure | Go to ai.azure.com and select desired app (if more than one) and in browser address line after accounts/ you'll have an account name |
runtimeOptions.plugins.translate5AI.Azure.tenantId | Directory (tenant) id | Search > Microsoft Entra ID > Manage > App registrations > %YOUR APP% > Overview |
| runtimeOptions.plugins.translate5AI.Azure.clientId | Application (client) id | Search > Microsoft Entra ID > Manage > App registrations > %YOUR APP% > Overview |
| runtimeOptions.plugins.translate5AI.Azure.clientSecret | Client secret for accessing resource management | Search > Microsoft Entra ID > Manage > App registrations > %YOUR APP% > Manage > Certificates and secrets |
| runtimeOptions.plugins.translate5AI.Azure.deploymentType | deployment type (sku) | https://learn.microsoft.com/en-us/azure/ai-foundry/model-inference/concepts/deployment-types, normally equals to "standard" |
| runtimeOptions.plugins.translate5AI.Azure.server | API endpoint where chat completion requests are sent to | https://ai.azure.com/ > Home > Azure OpenAI endpoint (please note URL must contain "/openai" at the end) |
| runtimeOptions.plugins.translate5AI.Azure.apiToken | API access token | https://ai.azure.com/ > Home > API key (1/2) |
Client-level configuration
Available from translate5 version 7.45.0.
By default, all Azure OpenAI language resources use the configs set on system level. If a client uses its own Azure environment (for example its own subscription or Azure resource, so that costs can be assigned to this client), you can override the Azure configs for this client and create language resources that use only this client's Azure environment.
All configs listed in Configs and runtimeOptions.plugins.translate5AI.Azure.capacity can be overridden on client level. As on system level, you can set all of them (full integration) or only the server and the API token (partial integration).
Set up the client configuration
- Go to Clients, select the client and open the tab System configuration overwrites.
- Filter for translate5AI.Azure and set the values of the client's Azure environment.
Create a language resource for the client
- In the language resource overview, click Add language resource and select the Azure OpenAI resource.
- In Configuration source, select Use client-level configuration.
- In Client, select the client. Only clients that have their own configuration are listed.
- Select the model in Engine/Model. The list shows the models of the client's Azure environment. If the client configuration contains only the server and the API token, enter the exact name of the deployment instead.
- Save. With full integration, translate5 creates the model deployment in the client's Azure resource, using the client's deployment type and capacity.
Good to know
- A language resource with client-level configuration belongs to exactly one client. The configuration source and the client cannot be changed after the language resource was created.
- A language resource with Use system-level configuration can be assigned to several clients. It always uses the system-level configs, also for clients that have their own configuration.
- If the Azure configs are not set on system level, only Use client-level configuration can be selected.
- The same option is available for ChatGPT (OpenAI) and translate5 AI language resources, see OpenAI Plug-in.
Short workflow to create all needed resources in Azure
- Create a subscription - Home > Subscriptions > Add
- Create a resource group - Search > Resource groups > Create
- Create a resource > All resources > Create > AI + Machine learning > Azure OpenAI > Create
Deploying other models than OpenAI
It is possible to use other models in Azure cloud like Llama, Mistral, DeepSeek, Grok etc. The only limitation is that finetuning will not work within the Translate5 AI plugin, however still possible with Azure AI Foundry.
First of all it is needed to create a resource of Microsoft Foundry type (see "Short workflow to create all needed resources in Azure") instead of Azure OpenAI
Then among all configs only runtimeOptions.plugins.translate5AI.Azure.server and runtimeOptions.plugins.translate5AI.Azure.apiToken are mandatory, all other should be ommited.
After this is configured it is possible to create a deployment of a model in Azure AI Foundry, then create a new language resource in Translate5 and provide the exact deployment name in the translate5 field "Engine/Model".