If the API changes in an incompatible manner this is listed explicitly in the "important release notes" section of each releases changelog.
Provides access to the model properties of OpenAI based language resources.
The model properties control how translate5 uses the AI model of a language resource: the model itself, generation parameters like temperature, batching during pre-translation, the tag format and the reasoning effort. In the user interface they are edited in the "Adjust ChatGPT model" window, opened with the action "Adjust the configured ChatGPT model" in the language resources overview.
This endpoint is available for all language resources of the OpenAI plug-in (OpenAI, Azure OpenAI and translate5 AI). The plug-in must be active.
URL: |
/editor/plugins_openai_modelprops/[ID] |
Available Methods: |
GET / PUT |
Specialities: |
[ID] is the id of the language resource (see LanguageResources: Instance). The language resource itself is created with the languageresourceinstance endpoint, this endpoint only reads and changes its model properties. Available for users with the role "pm" or "clientpm". |
Send the header Accept: application/json to receive JSON. Without it, the response is returned as XML. Authentication works with an API token as described in _Basic Usage Examples.
Resource Layout
GET returns all properties supported by your translate5 version. Use it to check which properties and values are available on your installation before changing them.
Name |
Type |
Default |
Info |
|---|---|---|---|
model |
string |
|
(GET, PUT) The model used by the language resource. On PUT, the model of the language resource is switched to the given model. For Azure OpenAI the value must be the name of an existing deployment. See "Changing the model" below. |
temperature |
float |
0.1 |
(GET, PUT) Generation sensitivity. Allowed range 0 to 2. |
topP |
float |
1 |
(GET, PUT) Probability threshold. Allowed range 0 to 1. |
frequencyPenalty |
float |
0 |
(GET, PUT) Allowed range -2 to 2. |
presencePenalty |
float |
0 |
(GET, PUT) Allowed range -2 to 2. |
maxTokens |
integer |
500 |
(GET, PUT) Maximum target tokens in percent of the source tokens. Allowed range 50 to 500. |
useDefaultMsg |
boolean |
true |
(GET, PUT) Send the default system message with each request. |
useSystemMsgs |
boolean |
false |
(GET, PUT) For fine-tuned models: send all trained system messages with each translation request. |
useBatchedPretranslation |
boolean |
true |
(GET, PUT) Send segments in batches when pre-translating. |
maxBatchSize |
integer |
6 |
(GET, PUT) Maximum number of segments in one batch when pre-translating. Allowed range 5 to 5000. Batches are additionally limited by the token size of the model. |
batchParallelRequests |
integer |
0 |
(GET, PUT) Number of batch requests sent to the AI service at the same time when pre-translating. Allowed range 1 to 100. 0 means: the system configuration "runtimeOptions.LanguageResources.Pretranslation.batchParallelRequests" applies (see batchParallelRequestsDefault). |
tagDialect |
string |
xliff |
(GET, PUT) The format in which tags are sent to the model. Possible values: |
protectedContentTagShape |
string |
pair |
(GET, PUT) How placeables and protected content are sent. Possible values: |
reasoningEffort |
string |
empty |
(GET, PUT) Reasoning effort for reasoning models. Possible values are listed in reasoningEffortOptions. An empty string means the model decides. |
isTunable |
boolean |
|
(GET only) The model supports fine-tuning. |
isTuned |
boolean |
|
(GET only) The language resource uses a fine-tuned model. |
isReasoningModel |
boolean |
|
(GET only) The model is recognized as a reasoning model. |
reasoningEffortOptions |
array of strings |
|
(GET only) The values allowed for reasoningEffort with the current model. null if the model does not support a reasoning effort. |
batchParallelRequestsDefault |
integer |
|
(GET only) The value of the system configuration used when batchParallelRequests is 0. |
engineEditable |
boolean |
|
(GET only) The model of the language resource can be changed. |
useEnginesCombo |
boolean |
|
(GET only) Used by the user interface. |
id |
integer |
|
(GET only) The id of the language resource. |
Changing properties
With PUT you only send the properties you want to change. All other properties keep their current values. Properties with a value equal to the default are not stored, they are simply reported with their default on GET.
The properties are sent as JSON in the form parameter "data", like in all other translate5 endpoints. Sending the JSON object directly as request body with the header Content-Type: application/json works as well.
Values are corrected or ignored instead of being rejected:
- Numbers outside the allowed range are set to the nearest limit (for example maxBatchSize 9000 becomes 5000).
- Values that are not a number for a numeric property reset the property to its default.
- Unknown property names are ignored.
- String properties are stored as sent. Invalid values for tagDialect, protectedContentTagShape or reasoningEffort are not used: translate5 falls back to the default when sending requests. Always use the values listed above (or in reasoningEffortOptions).
Always check the result with a GET request after changing properties.
Changing the model
Sending the property "model" switches the language resource to the given model. translate5 updates the model information of the language resource automatically (including whether the model can be fine-tuned). Afterwards, GET returns the properties of the new model, for example new reasoningEffortOptions.
Do not change the model of a fine-tuned language resource (isTuned is true). The user interface prevents this; via the API the fine-tuned model would be replaced and the training would no longer be used.
Do not change model properties via the languageresourceinstance endpoint
The model properties are stored in the field "specificData" of the language resource. Sending model properties directly in a PUT request to /editor/languageresourceinstance/[ID] has no effect. Sending "specificData" there replaces its whole content, so all model properties set before are lost. Always use this endpoint to change model properties.
GET request example
curl -X GET 'https://YOUR_TRANSLATE5_HOST/editor/plugins_openai_modelprops/123' \ --header 'Accept: application/json' \ --header 'Translate5AuthToken: YOUR_APP_TOKEN'
Response:
{
"data": {
"temperature": 0.1,
"topP": 1,
"frequencyPenalty": 0,
"presencePenalty": 0,
"maxTokens": 500,
"useDefaultMsg": true,
"useSystemMsgs": false,
"useBatchedPretranslation": true,
"maxBatchSize": 6,
"batchParallelRequests": 0,
"tagDialect": "xliff",
"protectedContentTagShape": "pair",
"reasoningEffort": "",
"model": "gpt-5-mini",
"isTunable": false,
"isTuned": false,
"isReasoningModel": true,
"reasoningEffortOptions": ["none", "low", "medium", "high"],
"batchParallelRequestsDefault": 50,
"engineEditable": true,
"useEnginesCombo": true,
"id": "123"
}
}
PUT request example
Sets the maximum batch size and the reasoning effort, all other properties stay unchanged:
curl -X PUT 'https://YOUR_TRANSLATE5_HOST/editor/plugins_openai_modelprops/123' \
--header 'Accept: application/json' \
--header 'Translate5AuthToken: YOUR_APP_TOKEN' \
--data-urlencode 'data={"maxBatchSize":30,"reasoningEffort":"low"}'
Response (the new content of "specificData" of the language resource):
{
"specificData": "{\"engineName\":\"gpt-5-mini\",\"domainCode\":\"NON_TUNABLE\",\"maxBatchSize\":\"30\",\"reasoningEffort\":\"low\"}",
"success": true
}