Spaces:
Runtime error
Runtime error
| # Deploy to Hugging Face Spaces | |
| set -e | |
| echo "π€ Deploying to Hugging Face Spaces" | |
| echo "====================================" | |
| # Check if git is configured | |
| if ! git config user.email > /dev/null; then | |
| echo "β οΈ Please configure git:" | |
| echo "git config --global user.email 'your-email@example.com'" | |
| echo "git config --global user.name 'Your Name'" | |
| exit 1 | |
| fi | |
| # Check if HF_TOKEN is set | |
| if [ -z "$HF_TOKEN" ]; then | |
| echo "β οΈ Please set your Hugging Face token:" | |
| echo "export HF_TOKEN=your_hf_token_here" | |
| exit 1 | |
| fi | |
| SPACE_NAME=${1:-"deepcoder-api"} | |
| HF_USERNAME=${2:-$(whoami)} | |
| echo "Creating Space: $HF_USERNAME/$SPACE_NAME" | |
| # Create Hugging Face Space files | |
| cat > README.md << EOF | |
| --- | |
| title: DeepCoder API | |
| emoji: π | |
| colorFrom: blue | |
| colorTo: green | |
| sdk: docker | |
| pinned: false | |
| license: mit | |
| --- | |
| # DeepCoder API | |
| High-performance code generation API powered by DeepCoder-14B model. | |
| ## Features | |
| - π― 60.6% pass rate on LiveCodeBench v5 | |
| - π 1936 Elo rating on Codeforces (95.3 percentile) | |
| - π 92.6% accuracy on HumanEval+ | |
| - β‘ 131K token context length | |
| - π§ Optimized Q4_K_M quantization | |
| ## API Endpoints | |
| - \`POST /generate\` - Generate code from prompts | |
| - \`POST /chat\` - Chat-style code assistance | |
| - \`GET /model/info\` - Model information | |
| - \`GET /health\` - Health check | |
| ## Usage | |
| \`\`\`bash | |
| curl -X POST /generate \\ | |
| -H 'Content-Type: application/json' \\ | |
| -d '{"prompt": "def fibonacci(n):", "max_tokens": 200}' | |
| \`\`\` | |
| EOF | |
| # Create Dockerfile for HF Spaces | |
| cat > Dockerfile.hf << EOF | |
| FROM python:3.11-slim | |
| WORKDIR /app | |
| RUN apt-get update && apt-get install -y curl git && rm -rf /var/lib/apt/lists/* | |
| COPY requirements.txt . | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| COPY . . | |
| EXPOSE 7860 | |
| CMD ["python", "-m", "uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"] | |
| EOF | |
| # Update app.py for HF Spaces (port 7860) | |
| sed 's/port=8000/port=7860/g' app.py > app_hf.py | |
| mv app_hf.py app.py | |
| # Initialize git repo if not exists | |
| if [ ! -d .git ]; then | |
| git init | |
| git lfs install | |
| fi | |
| # Track large model files with git LFS | |
| echo "*.bin filter=lfs diff=lfs merge=lfs -text" >> .gitattributes | |
| echo "*.safetensors filter=lfs diff=lfs merge=lfs -text" >> .gitattributes | |
| # Add remote if not exists | |
| if ! git remote get-url origin > /dev/null 2>&1; then | |
| git remote add origin https://huggingface.co/spaces/$HF_USERNAME/$SPACE_NAME | |
| fi | |
| # Commit and push | |
| git add . | |
| git commit -m "Initial DeepCoder API deployment" || true | |
| git push -u origin main | |
| echo "β Deployed to: https://huggingface.co/spaces/$HF_USERNAME/$SPACE_NAME" | |