Spaces:
Running
Running
File size: 1,724 Bytes
9d3e9f6 410d1c8 9d3e9f6 be5e148 9d3e9f6 be5e148 9d3e9f6 be5e148 9d3e9f6 be5e148 9d3e9f6 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | # render.yaml — Render deployment config
# Docs: https://render.com/docs/blueprint-spec
#
# Free tier limits (as of 2026):
# - 512 MB RAM
# - Shared CPU
# - Spins down after 15 min inactivity (cold start ~30s)
# - 100 GB outbound bandwidth / month
#
# Our backend fits because:
# - all-MiniLM-L6-v2 is only ~90MB on disk, ~200MB RAM when loaded
# - Qdrant is hosted externally (Qdrant Cloud) — no local disk needed
# - No GPU required for inference
services:
- type: web
name: cartographer
runtime: python
region: oregon
plan: free
buildCommand: pip install -r requirements.txt
startCommand: uvicorn backend.main:app --host 0.0.0.0 --port $PORT
healthCheckPath: /health
envVars:
- key: QDRANT_URL
sync: false # set manually in Render dashboard
- key: QDRANT_API_KEY
sync: false
- key: QDRANT_COLLECTION
value: github_repos_voyage
- key: GROQ_API_KEY
sync: false
- key: ANTHROPIC_API_KEY
sync: false
- key: VOYAGE_API_KEY
sync: false
- key: GITHUB_TOKEN
sync: false
- key: EMBEDDING_MODEL
value: voyage-code-3
- key: EMBEDDING_DIM
value: "1024"
- key: TOP_K
value: "6"
# HuggingFace cache dir — Render gives 1GB ephemeral disk
- key: HF_HOME
value: /opt/render/project/src/.cache/huggingface
- key: SENTENCE_TRANSFORMERS_HOME
value: /opt/render/project/src/.cache/sentence_transformers
# Python output buffering — always set this for deployed servers
# Without it, print() calls buffer and logs appear delayed or not at all
- key: PYTHONUNBUFFERED
value: "1"
|