Enable options for AlphaGeometry
This document describes how to enable the four deployment options described in the architecture: Demo (fallbacks), Local infra (Neo4j/FAISS via Docker), Hosted services, and Full production (Kubernetes/Ray/CI).
- Option 1 — Fast demo (no external infra)
- Create a virtualenv and install requirements-merged.txt
- Run the demo app locally: python -m backend.run_demo
- Use the API to create universes and attempt proofs (NeuroSymbolicCore uses fallbacks)
- Option 2 — Local infra (Neo4j + FAISS)
- Install Docker Desktop.
- Start Neo4j using provided compose file: docker compose -f docker-compose.neo4j.yml up -d
- Install FAISS (CPU): pip install faiss-cpu
- Configure backend/adapters/graph_adapter.Neo4jAdapter connection parameters or use env vars
- Option 3 — Hosted services
- Provide connection strings for hosted Neo4j and hosted vector DB in a secure manner (secrets manager)
- Configure adapters to point to these endpoints (see backend/adapters/*)
- Option 4 — Full production
- Build docker images and push to registry
- Deploy to Kubernetes using manifests in deploy/k8s or Helm using deploy/values.example.yaml
- Provision Ray or Kubernetes jobs for heavy compute and configure autoscaling
Security notes:
- Use a secrets manager for tokens and DB credentials. Replace TokenAuth with a proper IAM/OAuth flow in production.