End users

Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Microsoft Azure cloud supports OpenAI models.
Translate5 OpenAI plugin proposes Translate5 AI plugin allows the integration with the Microsoft Azure cloud as well.

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.OpenAI.server and runtimeOptions.plugins.OpenAI.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 IDexplanationWhere to find the value in Azure cloud
runtimeOptions.plugins.OpenAI.Azure.subscriptionId

...

Id of the subscription used for the

...

GPT "application" in AzureHome > Subscriptions
runtimeOptions.plugins.OpenAI.Azure.resourceGroupName

...

Name of the resource group used for the

...

GPT  "application" in AzureSearch > Resource groups > Create
runtimeOptions.plugins.OpenAI.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.OpenAI.Azure.tenantId

...

Directory (tenant) id

...

Search > Microsoft Entra ID > Manage > App registrations > %YOUR APP% >

...

Overview
runtimeOptions.plugins.OpenAI.Azure.clientId

...

Application (client) id

...

Search > Microsoft Entra ID > Manage > App registrations > %YOUR APP% >

...

Overview
runtimeOptions.plugins.OpenAI.Azure.clientSecret

...

Client secret for accessing resource management

...

Search > Microsoft Entra ID > Manage > App registrations > %YOUR APP% > Manage > Certificates and secrets

Implementation details

After language resource is created - translate5 automatically creates a deployment of the selected model in Azure cloud. Deployment name will contain translate5 language resource id for ease identifying.

...

runtimeOptions.plugins.OpenAI.Azure.deploymentTypedeployment type (sku)https://learn.microsoft.com/en-us/azure/ai-

...

foundry/model-inference/concepts/deployment-types, normally equals to "standard"
runtimeOptions.plugins.OpenAI.serverAPI endpoint where chat completion requests are sent tohttps://ai.azure.com/ > Home > Azure OpenAI endpoint (please note URL must contain "/openai" at the end)
runtimeOptions.plugins.OpenAI.apiTokenAPI access tokenhttps://ai.azure.com/ > Home > API key (1/2)


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.OpenAI.server and runtimeOptions.plugins.OpenAI.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 a deployment name in field "Engine/Model"

...

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.