soedinglab / MMseqs2-App

MMseqs2 app to run on your workstation or servers
https://search.foldseek.com
GNU General Public License v3.0
61 stars 18 forks source link

"405 Not Allowed" returned for the queries #88

Closed serbulent-av closed 11 months ago

serbulent-av commented 11 months ago

After installing and running the MMseqs2-App I started a query from ColabFold. I tried the same query with public MMseqs2 server and get MSAs without any error. However for my local server I get 405 Not Allowed error. To ensure that permissions is available I also started the server as;

sudo docker compose up

However the result haven't changed. Here is the full output from ColabFold and log files of ngnix is also attached.

access.log error.log mmseqs-web.access.log

2023-12-07 15:43:48,689 Running colabfold 1.5.3
2023-12-07 15:43:48,858 Unable to initialize backend 'rocm': NOT_FOUND: Could not find registered platform with name: "rocm". Available platform names are: Interpreter CUDA
2023-12-07 15:43:48,858 Unable to initialize backend 'tpu': module 'jaxlib.xla_extension' has no attribute 'get_tpu_client'
2023-12-07 15:43:51,163 Running on GPU
2023-12-07 15:43:52,081 Found 4 citations for tools or databases
2023-12-07 15:43:52,082 Query 1/1: binder001 (length 1528)
2023-12-07 15:43:52,093 Server didn't reply with json: <html>                                                                                                                                 
<head><title>405 Not Allowed</title></head>
<body>
<center><h1>405 Not Allowed</h1></center>
<hr><center>nginx/1.25.3</center>
</body>
</html>

SUBMIT:   0%|                                                                                                                                            | 0/300 [elapsed: 00:00 remaining: ?]
2023-12-07 15:43:52,093 Could not get MSA/templates for binder001: MMseqs2 API is giving errors. Please confirm your input is a valid protein sequence. If error persists, please try again an hour later.
Traceback (most recent call last):
  File "/usr/local/envs/colabfold/lib/python3.9/site-packages/colabfold/batch.py", line 1483, in run
    = get_msa_and_templates(jobname, query_sequence, a3m_lines, result_dir, msa_mode, use_templates,
  File "/usr/local/envs/colabfold/lib/python3.9/site-packages/colabfold/batch.py", line 844, in get_msa_and_templates
    a3m_lines = run_mmseqs2(
  File "/usr/local/envs/colabfold/lib/python3.9/site-packages/colabfold/colabfold.py", line 209, in run_mmseqs2
    raise Exception(f'MMseqs2 API is giving errors. Please confirm your input is a valid protein sequence. If error persists, please try again an hour later.')
Exception: MMseqs2 API is giving errors. Please confirm your input is a valid protein sequence. If error persists, please try again an hour later.
2023-12-07 15:43:52,095 Done
milot-mirdita commented 11 months ago

Please follow the instructions on the colabfold GitHub for setting up a server:

https://github.com/sokrypton/ColabFold/tree/main/MsaServer

I didn't get from your other issues that you are trying to set up a colabfold server. We are not using docker-compose for colabfold.

serbulent-av commented 11 months ago

Oh, thanks the Colabfold is on the client side I assumed MMSeqs-App is a general server which also could serve to the ColabFold as well.

milot-mirdita commented 11 months ago

If you want to set up a ColabFold MSA server you do use the mmseqs server, but it has its own installation instructions and database setup.

Also the standard warning for the colabfold server: you do need enough RAM to hold the databases fully in RAM, or it will be really slow.

You might be better served with the colabfold_search script which uses MMseqs2 in a different way, that has lower resource requirements, but is not well suited for single query searches.

serbulent-av commented 11 months ago

Thanks Milot !