Hello, cant connect with NextCloud
I have setting up LocalAI working fine, and NextCloud even detect the models list of LocalAI but when I use any of the features to talk with the LLM it doesnt fetch anything, it get the follow error
GET /apps/assistant/chat/check_generation?taskId=20&sessionId=21 HTTP/1.1
Accept: application/json, text/plain, */*
Accept-Encoding: gzip, deflate, br, zstd
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Cookie: oc_sessionPassphrase=bgHjp8Tyr9s29ZBaTrH7iPAFHR1qe67PWMhdXBo9DKozrPQgxWP2lZyVfWrmlaIuyLddLrkLtacrstoEGQfwx55Sd%2BouuDeo5JZFoeezhAQpd6rLG4tFPCbiDbCQkMRy; nc_sameSiteCookielax=true; nc_sameSiteCookiestrict=true; ocj2thp9x9dg=a39aba2bb49eec84a8c772bb1b874c6f; nc_username=admin; nc_token=5H%2FNfg4NPPo%2BtewCKTl4%2FAtTRQQRviM9; nc_session_id=a39aba2bb49eec84a8c772bb1b874c6f
Host: localhost:8070
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
X-Requested-With: XMLHttpRequest, XMLHttpRequest
requesttoken: OUgglgKesBwaxlFwTA2Fq4dbST6P5ssrktPuoLYErE4=:SQNNo3DJ6SR9nDQfCUPun98sE2n+sK9Pxb6jxsB1gw0=
sec-ch-ua: "Chromium";v="128", "Not;A=Brand";v="24", "Google Chrome";v="128"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Windows"
HTTP/1.1 417 Expectation Failed
Date: Fri, 20 Sep 2024 09:07:03 GMT
Server: Apache/2.4.62 (Debian)
Referrer-Policy: no-referrer
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-Permitted-Cross-Domain-Policies: none
X-Robots-Tag: noindex, nofollow
X-XSS-Protection: 1; mode=block
X-Powered-By: PHP/8.2.23
Content-Security-Policy: default-src 'none';base-uri 'none';manifest-src 'self';frame-ancestors 'none'
X-Request-Id: 1CXMQ5oeDFUkY6qEm2b4
Cache-Control: no-cache, no-store, must-revalidate
Feature-Policy: autoplay 'none';camera 'none';fullscreen 'none';geolocation 'none';microphone 'none';payment 'none'
Content-Length: 17
Keep-Alive: timeout=5, max=66
Connection: Keep-Alive
Content-Type: application/json; charset=utf-8
{"task_status":1}
It seems I have the same issue since first started setting up LocalAI AIO docker on CPU few weeks ago. So far I've managed to narrow down the issue to 504 Gateway Timeout - nextcloud log:
{
"reqId": "Zu2K5dJu08_G0CoBPxYoHwAAAAQ",
"level": 3,
"time": "2024-09-20T14:48:31+00:00",
"remoteAddr": "192.168.x.xx",
"app": "index",
"method": "GET",
"url": "/apps/assistant/chat/generate?sessionId=15",
"message":"{\"Exception\":\"OCP\\\\TextProcessing\\\\Exception\\\\TaskFailureException\",\"Message\":\"LanguageModel call using provider LocalAI failed: OpenA
I/LocalAI request failed: API request error: Server error: `POST http: //localai.lan/v1/completions` resulted in a `504 Gateway Time-out` response:\\n<html>\\r\\n<head><title>504 Gateway Time-out</title></h
ead>\\r\\n<body>\\r\\n<center><h1>504 Gateway Time-out</h1></center>\\r\\n<hr><c (truncated...)\\n\",\"Code\":0,\"Trace\":[{\"file\":\"/var/www/html/nextcloud/apps/assistant/lib/Controller/ChattyLLMControl
ler.php\",\"line\":444,\"function\":\"runTask\",\"class\":\"OC\\\\TextProcessing\\\\Manager\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/apps/assistant/lib/Controller/ChattyLLMController.php\",\"
line\":278,\"function\":\"queryLLM\",\"class\":\"OCA\\\\Assistant\\\\Controller\\\\ChattyLLMController\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/lib/private/AppFramework/Http/Dispatcher.php\",
\"line\":232,\"function\":\"generateForSession\",\"class\":\"OCA\\\\Assistant\\\\Controller\\\\ChattyLLMController\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/lib/private/AppFramework/Http/Dispa
tcher.php\",\"line\":138,\"function\":\"executeController\",\"class\":\"OC\\\\AppFramework\\\\Http\\\\Dispatcher\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/lib/private/AppFramework/App.php\",\"
line\":184,\"function\":\"dispatch\",\"class\":\"OC\\\\AppFramework\\\\Http\\\\Dispatcher\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/lib/private/Route/Router.php\",\"line\":331,\"function\":\"m
ain\",\"class\":\"OC\\\\AppFramework\\\\App\",\"type\":\"::\"},{\"file\":\"/var/www/html/nextcloud/lib/base.php\",\"line\":1058,\"function\":\"match\",\"class\":\"OC\\\\Route\\\\Router\",\"type\":\"->\"},{
\"file\":\"/var/www/html/nextcloud/index.php\",\"line\":49,\"function\":\"handleRequest\",\"class\":\"OC\",\"type\":\"::\"}],\"File\":\"/var/www/html/nextcloud/lib/private/TextProcessing/Manager.php\",\"Li
ne\":145,\"Previous\":{\"Exception\":\"RuntimeException\",\"Message\":\"OpenAI/LocalAI request failed: API request error: Server error: `POST http://localai.lan/v1/completions` resulted in a `504 Gateway T
ime-out` response:\\n<html>\\r\\n<head><title>504 Gateway Time-out</title></head>\\r\\n<body>\\r\\n<center><h1>504 Gateway Time-out</h1></center>\\r\\n<hr><c (truncated...)\\n\",\"Code\":0,\"Trace\":[{\"fi
le\":\"/var/www/html/nextcloud/lib/public/TextProcessing/Task.php\",\"line\":103,\"function\":\"process\",\"class\":\"OCA\\\\OpenAi\\\\TextProcessing\\\\FreePromptProvider\",\"type\":\"->\"},{\"file\":\"/v
ar/www/html/nextcloud/lib/private/TextProcessing/Manager.php\",\"line\":136,\"function\":\"visitProvider\",\"class\":\"OCP\\\\TextProcessing\\\\Task\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/a
pps/assistant/lib/Controller/ChattyLLMController.php\",\"line\":444,\"function\":\"runTask\",\"class\":\"OC\\\\TextProcessing\\\\Manager\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/apps/assistan
t/lib/Controller/ChattyLLMController.php\",\"line\":278,\"function\":\"queryLLM\",\"class\":\"OCA\\\\Assistant\\\\Controller\\\\ChattyLLMController\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/li
b/private/AppFramework/Http/Dispatcher.php\",\"line\":232,\"function\":\"generateForSession\",\"class\":\"OCA\\\\Assistant\\\\Controller\\\\ChattyLLMController\",\"type\":\"->\"},{\"file\":\"/var/www/html/
nextcloud/lib/private/AppFramework/Http/Dispatcher.php\",\"line\":138,\"function\":\"executeController\",\"class\":\"OC\\\\AppFramework\\\\Http\\\\Dispatcher\",\"type\":\"->\"},{\"file\":\"/var/www/html/ne
xtcloud/lib/private/AppFramework/App.php\",\"line\":184,\"function\":\"dispatch\",\"class\":\"OC\\\\AppFramework\\\\Http\\\\Dispatcher\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/lib/private/Rou
te/Router.php\",\"line\":331,\"function\":\"main\",\"class\":\"OC\\\\AppFramework\\\\App\",\"type\":\"::\"},{\"file\":\"/var/www/html/nextcloud/lib/base.php\",\"line\":1058,\"function\":\"match\",\"class\"
:\"OC\\\\Route\\\\Router\",\"type\":\"->\"},{\"file\":\"/var/www/html/nextcloud/index.php\",\"line\":49,\"function\":\"handleRequest\",\"class\":\"OC\",\"type\":\"::\"}],\"File\":\"/var/www/html/nextcloud/
apps/integration_openai/lib/TextProcessing/FreePromptProvider.php\",\"Line\":46},\"message\":\"LanguageModel call using provider LocalAI failed: OpenAI/LocalAI request failed: API request error: Server err
or: `POST http: //localai.lan/v1/completions` resulted in a `504 Gateway Time-out` response:\\n<html>\\r\\n<head><title>504 Gateway Time-out</title></head>\\r\\n<body>\\r\\n<center><h1>504 Gateway Time-out<
/h1></center>\\r\\n<hr><c (truncated...)\\n\",\"exception\":{},\"CustomMessage\":\"LanguageModel call using provider LocalAI failed: OpenAI/LocalAI request failed: API request error: Server error: `POST ht
tp: //localai.lan/v1/completions` resulted in a `504 Gateway Time-out` response:\\n<html>\\r\\n<head><title>504 Gateway Time-out</title></head>\\r\\n<body>\\r\\n<center><h1>504 Gateway Time-out</h1></center
>\\r\\n<hr><c (truncated...)\\n\"}",
"userAgent": "Mozilla/5.0 (X11; Linux x86_64; rv:130.0) Gecko/20100101 Firefox/130.0",
"version": "29.0.7.1"
}
This happens when LocalAI instance is behind Nginx Proxy Manager using local domain name. When I use IP there is no obvious error, but LocalAI docker logs shows that response is eventually generated.
I've managed to solve that by increasing timeout on Nextcloud VM in nextcloud/.user.ini by adding (I'm not sure if increasing timeouts is right way):
php_value max_input_time 3600
php_value max_execution_time 3600
So now text prompts work, but for some reason response is very long and AI is chatting with 'me' on it's own. I suspect it might be something with prompt in Nextcloud.
But now if I change back to domain name I'm getting 504 Gateway timeout again, so will have to dig in to Nginx config - any ideas?
@rabner thanks for your help bro, I increased the timeouts like you told me on the .user.ini but still getting same error
ChattyLLMInputForm.vue:574
{
"stack": "X@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:33123\njt@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:44544\ng@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:49220\nEventHandlerNonNull*70715/Vt</<@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:49479\n70715/Vt<@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:48808\nhe@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:55714\n_request@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:58541\nrequest@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:57068\n70715/</we.prototype[t]@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:58836\n70715/o/<@http://localhost:8080/custom_apps/assistant/js/assistant-axios-lazy.js?v=fc9be637c540e816beb7:2:27421\n22974/pollGenerationTask/</this.pollMessageGenerationTimerId<@http://localhost:8080/custom_apps/assistant/js/assistant-assistant-modal-lazy.js?v=5858c70ce6cd3b1bf029:1:75703\nsetInterval handler*22974/pollGenerationTask/<@http://localhost:8080/custom_apps/assistant/js/assistant-assistant-modal-lazy.js?v=5858c70ce6cd3b1bf029:1:75674\npollGenerationTask@http://localhost:8080/custom_apps/assistant/js/assistant-assistant-modal-lazy.js?v=5858c70ce6cd3b1bf029:1:75619\nrunGenerationTask@http://localhost:8080/custom_apps/assistant/js/assistant-assistant-modal-lazy.js?v=5858c70ce6cd3b1bf029:1:74766\nasync*newMessage@http://localhost:8080/custom_apps/assistant/js/assistant-assistant-modal-lazy.js?v=5858c70ce6cd3b1bf029:1:73843\nasync*handleSubmit@http://localhost:8080/custom_apps/assistant/js/assistant-assistant-modal-lazy.js?v=5858c70ce6cd3b1bf029:1:70457\nasync*va@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:221685\na@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:214375\nva@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:221685\n85471/e.prototype.$emit@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:243546\nsubmit@http://localhost:8080/custom_apps/assistant/js/assistant-assistant-modal-lazy.js?v=5858c70ce6cd3b1bf029:1:67271\nva@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:221685\na@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:214375\nva@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:221685\n85471/e.prototype.$emit@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:243546\nonEnter@http://localhost:8080/custom_apps/assistant/js/assistant-vendors-node_modules_nextcloud_vue_dist_Components_NcAppNavigationNew_mjs-node_modules_nextcl-28eca6.js?v=8fe271131d67e837ec65:2:567606\n42796/R/<.on.keydown<@http://localhost:8080/custom_apps/assistant/js/assistant-vendors-node_modules_nextcloud_vue_dist_Components_NcAppNavigationNew_mjs-node_modules_nextcl-28eca6.js?v=8fe271131d67e837ec65:2:571115\nva@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:221685\na@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:214454\n85471/Do/s._wrapper@http://localhost:8080/custom_apps/assistant/js/assistant-main.js?v=06ec47aa-0:2:254591\n",
"message": "Request failed with status code 417",
"name": "AxiosError",
"code": "ERR_BAD_REQUEST",
"config": {
"transitional": {
"silentJSONParsing": true,
"forcedJSONParsing": true,
"clarifyTimeoutError": false
},
"adapter": [
"xhr",
"http",
"fetch"
],
"transformRequest": [
null
],
"transformResponse": [
null
],
"timeout": 0,
"xsrfCookieName": "XSRF-TOKEN",
"xsrfHeaderName": "X-XSRF-TOKEN",
"maxContentLength": -1,
"maxBodyLength": -1,
"env": {},
"headers": {
"Accept": "application/json, text/plain, */*",
"requesttoken": "tSslCxlJ4AS/CVIa0wZOUpo1uRefeiiG48WlInf+J0g=:mnFuOkMmrUjUXhhVvEAHBMIA+CX6CRDljbbXVAKWYhk=",
"X-Requested-With": "XMLHttpRequest"
},
"params": {
"taskId": 1,
"sessionId": 1
},
"method": "get",
"url": "/apps/assistant/chat/check_generation"
},
"request": {},
"response": {
"data": {
"task_status": 1
},
"status": 417,
"statusText": "Expectation Failed",
"headers": {
"cache-control": "no-cache, no-store, must-revalidate",
"connection": "Keep-Alive",
"content-length": "17",
"content-security-policy": "default-src 'none';base-uri 'none';manifest-src 'self';frame-ancestors 'none'",
"content-type": "application/json; charset=utf-8",
"date": "Fri, 20 Sep 2024 21:04:42 GMT",
"feature-policy": "autoplay 'none';camera 'none';fullscreen 'none';geolocation 'none';microphone 'none';payment 'none'",
"keep-alive": "timeout=5, max=35",
"referrer-policy": "no-referrer",
"server": "Apache/2.4.62 (Debian)",
"x-content-type-options": "nosniff",
"x-frame-options": "SAMEORIGIN",
"x-permitted-cross-domain-policies": "none",
"x-powered-by": "PHP/8.2.23",
"x-request-id": "uUTJzffketuPRiXStzqx",
"x-robots-tag": "noindex, nofollow",
"x-xss-protection": "1; mode=block"
},
"config": {
"transitional": {
"silentJSONParsing": true,
"forcedJSONParsing": true,
"clarifyTimeoutError": false
},
"adapter": [
"xhr",
"http",
"fetch"
],
"transformRequest": [
null
],
"transformResponse": [
null
],
"timeout": 0,
"xsrfCookieName": "XSRF-TOKEN",
"xsrfHeaderName": "X-XSRF-TOKEN",
"maxContentLength": -1,
"maxBodyLength": -1,
"env": {},
"headers": {
"Accept": "application/json, text/plain, */*",
"requesttoken": "tSslCxlJ4AS/CVIa0wZOUpo1uRefeiiG48WlInf+J0g=:mnFuOkMmrUjUXhhVvEAHBMIA+CX6CRDljbbXVAKWYhk=",
"X-Requested-With": "XMLHttpRequest"
},
"params": {
"taskId": 1,
"sessionId": 1
},
"method": "get",
"url": "/apps/assistant/chat/check_generation"
},
"request": {}
},
"status": 417
}
Its totally NextCloud problem, going to close the issue in few days just to check if someone can suggest a solution too. Thanks for your time
@userbox020 if you haven't logged an issue with NC for this i would recommend it. @mudler resolved
It seems to be nextcloud issue, but here is a tip occ background-job:worker 'OC\TaskProcessing\SynchronousBackgroundJob' You have to run this command under netxtcloud html path directory
This issue is stale because it has been open 90 days with no activity. Remove stale label or comment or this will be closed in 5 days.
This issue was closed because it has been stalled for 5 days with no activity.