Nextcloud Hub 25 Autumn (32.0.3)
I am running a local LLM via vLLM. Nextcloud Assistant is working with it using LocalAI. The configuration in Nextcloud, via the OpenAI API, recognized the existing LLM model without issues. The correct LLM model is selected under /settings/admin/ai. Nevertheless, the translation function integrated into Nextcloud Talk keeps using gpt-4.1-mini instead of the configured LLM model.
What could be the cause? Is there another configuration option besides under /settings/admin/ai to select the LLM model for Talk translation?
Error log:
{
"reqId": "bQBkx3OuoH7yONy7JLx5",
"level": 2,
"time": "2026-01-11T12:47:45+00:00",
"remoteAddr": "127.0.0.1",
"user": "xxx",
"app": "no app in context",
"method": "POST",
"url": "/ocs/v2.php/translation/translate",
"message": "Failed to translate from en to de_DE using provider LocalAI",
"userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36",
"version": "32.0.3.2",
"exception": {
"Exception": "RuntimeException",
"Message": "Failed translate from English (US) to Deutsch (Förmlich: Sie)",
"Code": 0,
"Trace": [
{
"file": "/var/www/html/lib/private/Translation/TranslationManager.php",
"line": 106,
"function": "translate",
"class": "OCA\\OpenAi\\OldProcessing\\Translation\\TranslationProvider",
"type": "->",
"args": [
"English (US)",
"Deutsch (Förmlich: Sie)",
"related, but not the same. \n\nIt is called JSON streaming. https://en.wikipedia.org/wiki/JSON_streaming"
]
},
{
"file": "/var/www/html/core/Controller/TranslationApiController.php",
"line": 74,
"function": "translate",
"class": "OC\\Translation\\TranslationManager",
"type": "->",
"args": [
"related, but not the same. \n\nIt is called JSON streaming. https://en.wikipedia.org/wiki/JSON_streaming",
"en",
"de_DE"
]
},
{
"file": "/var/www/html/lib/private/AppFramework/Http/Dispatcher.php",
"line": 204,
"function": "translate",
"class": "OC\\Core\\Controller\\TranslationApiController",
"type": "->",
"args": [
"related, but not the same. \n\nIt is called JSON streaming. https://en.wikipedia.org/wiki/JSON_streaming",
"en",
"de_DE"
]
},
{
"file": "/var/www/html/lib/private/AppFramework/Http/Dispatcher.php",
"line": 118,
"function": "executeController",
"class": "OC\\AppFramework\\Http\\Dispatcher",
"type": "->",
"args": [
{
"__class__": "OC\\Core\\Controller\\TranslationApiController"
},
"translate"
]
},
{
"file": "/var/www/html/lib/private/AppFramework/App.php",
"line": 153,
"function": "dispatch",
"class": "OC\\AppFramework\\Http\\Dispatcher",
"type": "->",
"args": [
{
"__class__": "OC\\Core\\Controller\\TranslationApiController"
},
"translate"
]
},
{
"file": "/var/www/html/lib/private/Route/Router.php",
"line": 321,
"function": "main",
"class": "OC\\AppFramework\\App",
"type": "::",
"args": [
"OC\\Core\\Controller\\TranslationApiController",
"translate",
{
"__class__": "OC\\AppFramework\\DependencyInjection\\DIContainer"
},
{
"_route": "ocs.core.translationapi.translate"
}
]
},
{
"file": "/var/www/html/ocs/v1.php",
"line": 61,
"function": "match",
"class": "OC\\Route\\Router",
"type": "->",
"args": [
"/ocsapp/translation/translate"
]
},
{
"file": "/var/www/html/ocs/v2.php",
"line": 8,
"args": [
"/var/www/html/ocs/v1.php"
],
"function": "require_once"
}
],
"File": "/var/www/html/custom_apps/integration_openai/lib/OldProcessing/Translation/TranslationProvider.php",
"Line": 135,
"Previous": {
"Exception": "Exception",
"Message": "Fehler bei der API-Anfrage:The model `gpt-4.1-mini` does not exist.",
"Code": 404,
"Trace": [
{
"file": "/var/www/html/custom_apps/integration_openai/lib/Service/OpenAiAPIService.php",
"line": 622,
"function": "request",
"class": "OCA\\OpenAi\\Service\\OpenAiAPIService",
"type": "->",
"args": [
"*** sensitive parameters replaced ***",
"chat/completions",
{
"model": "*** sensitive parameters replaced ***",
"messages": [
{
"role": "user",
"content": "*** sensitive parameters replaced ***"
}
],
"n": "*** sensitive parameters replaced ***",
"max_tokens": "*** sensitive parameters replaced ***"
},
"POST"
]
},
{
"file": "/var/www/html/custom_apps/integration_openai/lib/OldProcessing/Translation/TranslationProvider.php",
"line": 124,
"function": "createChatCompletion",
"class": "OCA\\OpenAi\\Service\\OpenAiAPIService",
"type": "->",
"args": [
"*** sensitive parameters replaced ***"
]
},
{
"file": "/var/www/html/lib/private/Translation/TranslationManager.php",
"line": 106,
"function": "translate",
"class": "OCA\\OpenAi\\OldProcessing\\Translation\\TranslationProvider",
"type": "->",
"args": [
"English (US)",
"Deutsch (Förmlich: Sie)",
"related, but not the same. \n\nIt is called JSON streaming. https://en.wikipedia.org/wiki/JSON_streaming"
]
},
{
"file": "/var/www/html/core/Controller/TranslationApiController.php",
"line": 74,
"function": "translate",
"class": "OC\\Translation\\TranslationManager",
"type": "->",
"args": [
"related, but not the same. \n\nIt is called JSON streaming. https://en.wikipedia.org/wiki/JSON_streaming",
"en",
"de_DE"
]
},
{
"file": "/var/www/html/lib/private/AppFramework/Http/Dispatcher.php",
"line": 204,
"function": "translate",
"class": "OC\\Core\\Controller\\TranslationApiController",
"type": "->",
"args": [
"related, but not the same. \n\nIt is called JSON streaming. https://en.wikipedia.org/wiki/JSON_streaming",
"en",
"de_DE"
]
},
{
"file": "/var/www/html/lib/private/AppFramework/Http/Dispatcher.php",
"line": 118,
"function": "executeController",
"class": "OC\\AppFramework\\Http\\Dispatcher",
"type": "->",
"args": [
{
"__class__": "OC\\Core\\Controller\\TranslationApiController"
},
"translate"
]
},
{
"file": "/var/www/html/lib/private/AppFramework/App.php",
"line": 153,
"function": "dispatch",
"class": "OC\\AppFramework\\Http\\Dispatcher",
"type": "->",
"args": [
{
"__class__": "OC\\Core\\Controller\\TranslationApiController"
},
"translate"
]
},
{
"file": "/var/www/html/lib/private/Route/Router.php",
"line": 321,
"function": "main",
"class": "OC\\AppFramework\\App",
"type": "::",
"args": [
"OC\\Core\\Controller\\TranslationApiController",
"translate",
{
"__class__": "OC\\AppFramework\\DependencyInjection\\DIContainer"
},
{
"_route": "ocs.core.translationapi.translate"
}
]
},
{
"file": "/var/www/html/ocs/v1.php",
"line": 61,
"function": "match",
"class": "OC\\Route\\Router",
"type": "->",
"args": [
"/ocsapp/translation/translate"
]
},
{
"file": "/var/www/html/ocs/v2.php",
"line": 8,
"args": [
"/var/www/html/ocs/v1.php"
],
"function": "require_once"
}
],
"File": "/var/www/html/custom_apps/integration_openai/lib/Service/OpenAiAPIService.php",
"Line": 1075
},
"message": "Failed to translate from en to de_DE using provider LocalAI",
"exception": [],
"CustomMessage": "Failed to translate from en to de_DE using provider LocalAI"
},
"id": "69639dd205739"
}