| #!/usr/bin/env bash |
| set -euo pipefail |
|
|
| |
| |
|
|
| cd /public/home/scnb9biwet/jiangqq/GPSite-main |
|
|
| GPU_ID="${1:-0}" |
| INPUT_FASTA="${2:-./conf/example/demo.fa}" |
| OUT_DIR="${3:-./results/}" |
|
|
| PROTTRANS_DIR="/path/to/prot_t5_xl_uniref50" |
| ESMFOLD_HUB_DIR="/path/to/weight" |
| ESMFOLD_WEIGHT="${ESMFOLD_HUB_DIR}/checkpoints/esmfold_3B_v1.pt" |
| ESM2_WEIGHT="${ESMFOLD_HUB_DIR}/checkpoints/esm2_t36_3B_UR50D.pt" |
|
|
| if [ ! -d "${PROTTRANS_DIR}" ]; then |
| echo "ERROR: ProtTrans directory not found: ${PROTTRANS_DIR}" >&2 |
| exit 1 |
| fi |
|
|
| if [ ! -f "${ESMFOLD_WEIGHT}" ]; then |
| echo "ERROR: ESMFold weight not found: ${ESMFOLD_WEIGHT}" >&2 |
| exit 1 |
| fi |
|
|
| if [ ! -f "${ESM2_WEIGHT}" ]; then |
| echo "ERROR: ESM2 weight not found: ${ESM2_WEIGHT}" >&2 |
| exit 1 |
| fi |
|
|
| if [ ! -f "${INPUT_FASTA}" ]; then |
| echo "ERROR: input FASTA not found: ${INPUT_FASTA}" >&2 |
| exit 1 |
| fi |
|
|
| chmod +x ./scripts/feature_extraction/mkdssp |
|
|
| export PROTTRANS_PATH="${PROTTRANS_DIR}" |
| export ESMFOLD_HUB_DIR="${ESMFOLD_HUB_DIR}" |
|
|
| echo "Using GPU: ${GPU_ID}" |
| echo "Input FASTA: ${INPUT_FASTA}" |
| echo "Output directory: ${OUT_DIR}" |
| echo "ProtTrans: ${PROTTRANS_DIR}" |
| echo "ESMFold hub dir: ${ESMFOLD_HUB_DIR}" |
|
|
| python ./scripts/predict.py \ |
| -i "${INPUT_FASTA}" \ |
| -o "${OUT_DIR}" \ |
| --gpu "${GPU_ID}" |
|
|