I
Immich2y ago
Matéo

Search error

I have two servers: the first is my "immich" server, and the second is used for machine learning. I have created an NGINX proxy to expose my machine learning container to the internet with the URL: ml.mydomain.com
server {
listen 80;
listen [::]:80;
server_name ml.mydomain.com;
proxy_redirect off;

location / {
proxy_pass http://127.0.0.1:3003;
}
}
server {
listen 80;
listen [::]:80;
server_name ml.mydomain.com;
proxy_redirect off;

location / {
proxy_pass http://127.0.0.1:3003;
}
}
After searching for "cat" in my search bar, I encountered this error:
https://photos.mydomain.com/search/__data.json?q=cat&clip=true&x-sveltekit-invalidated=01
https://photos.mydomain.com/search/__data.json?q=cat&clip=true&x-sveltekit-invalidated=01
{
"type": "data",
"nodes": [
{
"type": "skip"
},
{
"type": "error",
"error": {
"message": "Internal server error",
"code": "500 - Internal Server Error"
}
}
]
}
{
"type": "data",
"nodes": [
{
"type": "skip"
},
{
"type": "error",
"error": {
"message": "Internal server error",
"code": "500 - Internal Server Error"
}
}
]
}
On my "immich" server:
[Nest] 8 - 08/30/2023, 9:07:13 PM ERROR [ExceptionsHandler] input.join is not a function
TypeError: input.join is not a function
at TypesenseRepository.vectorSearch (/usr/src/app/dist/infra/repositories/typesense.repository.js:244:70)
at SearchService.search (/usr/src/app/dist/domain/search/search.service.js:115:54)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async /usr/src/app/node_modules/@nestjs/core/router/router-execution-context.js:46:28
at async /usr/src/app/node_modules/@nestjs/core/router/router-proxy.js:9:17
[Nest] 8 - 08/30/2023, 9:07:13 PM ERROR [ExceptionsHandler] input.join is not a function
TypeError: input.join is not a function
at TypesenseRepository.vectorSearch (/usr/src/app/dist/infra/repositories/typesense.repository.js:244:70)
at SearchService.search (/usr/src/app/dist/domain/search/search.service.js:115:54)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async /usr/src/app/node_modules/@nestjs/core/router/router-execution-context.js:46:28
at async /usr/src/app/node_modules/@nestjs/core/router/router-proxy.js:9:17
In my machine learning container, I noticed double slashes and a 404 error:
[08/30/23 19:14:16] INFO 172.20.0.1:33504 - "POST //predict HTTP/1.1" 404
[08/30/23 19:14:16] INFO 172.20.0.1:33504 - "POST //predict HTTP/1.1" 404
9 Replies
bo0tzz
bo0tzz2y ago
Can you try a manual POST to /predict?
Matéo
MatéoOP2y ago
{
"detail":[
{
"loc":[
"body",
"modelName"
],
"msg":"field required",
"type":"value_error.missing"
},
{
"loc":[
"body",
"modelType"
],
"msg":"field required",
"type":"value_error.missing"
}
]
}
{
"detail":[
{
"loc":[
"body",
"modelName"
],
"msg":"field required",
"type":"value_error.missing"
},
{
"loc":[
"body",
"modelType"
],
"msg":"field required",
"type":"value_error.missing"
}
]
}
work
bo0tzz
bo0tzz2y ago
So the double // is the problem then
Matéo
MatéoOP2y ago
yes
bo0tzz
bo0tzz2y ago
Can you try configuring immich without the proxy inbetween? I just saw that you mention
expose my machine learning container to the internet
Do you just have it open on the internet without any auth? That's probably a bad idea
jrasm91
jrasm912y ago
Did your example return a 400 status code? You have a custom machine learning url in the admin settings? Maybe remove the trailing slash if it has one
Matéo
MatéoOP2y ago
hmmm
No description
Matéo
MatéoOP2y ago
That works ! x)
Matéo
MatéoOP2y ago
cat cat and cat is here 😂 ✅
No description

Did you find this page helpful?