#!/usr/bin/env bash # Deploy CodeBERT inference Space to Hugging Face. # Usage: ./scripts/deploy_inference_space.sh [YOUR_USERNAME/space-name] set -euo pipefail SPACE_SUFFIX="${1:-sql-error-classifier}" MODEL_REPO="${2:-nishu08/sql-codebert-classifier}" TOKEN="${HF_TOKEN:-${HUGGING_FACE_HUB_TOKEN:-}}" if [[ -z "${TOKEN}" ]]; then echo "Set HF_TOKEN before deploying." exit 1 fi if [[ "${SPACE_SUFFIX}" == */* ]]; then SPACE_ID="${SPACE_SUFFIX}" else USERNAME=$(python - < Preparing inference Space files..." rsync -a \ --exclude '.venv' \ --exclude 'models' \ --exclude 'data' \ --exclude '__pycache__' \ --exclude '.git' \ "${ROOT}/" "${WORKDIR}/" cp "${ROOT}/README_INFERENCE_SPACE.md" "${WORKDIR}/README.md" cp "${ROOT}/Dockerfile.inference" "${WORKDIR}/Dockerfile" # Bake default model id into Dockerfile sed -i.bak "s|ENV SPACE_MODEL_ID=.*|ENV SPACE_MODEL_ID=${MODEL_REPO}|" "${WORKDIR}/Dockerfile" rm -f "${WORKDIR}/Dockerfile.bak" echo "==> Verifying model repo exists: ${MODEL_REPO}" python - < Creating Space: ${SPACE_ID}" python - < Uploading..." python - <