OTTO: Getting Started
Deploy OTTO on your premises and get your first AI-powered intelligence card in under 10 minutes. All inference runs locally — no data leaves your network.
Prerequisites
- Python 3.9+ on the host server (arm64 or x86_64)
- Active BrainPredict OTTO subscription and partner API key
- 4 GB RAM minimum (8 GB recommended for transformer NER)
- Network access to PyPI for one-time model download (offline mode available)
Step 1: Install the OTTO Server
# Clone the OTTO messenger server git clone https://github.com/brainpredict/otto-server.git cd otto-server # Install Python dependencies pip install -r requirements.txt # Download NLP models (one-time, ~500 MB) python -m spacy download en_core_web_trf # sentence-transformers model auto-downloads on first start
Step 2: Configure
# config.env OTTO_API_URL=http://localhost:6670 OTTO_TENANT_ID=your-tenant-id OTTO_API_KEY=bp_otto_live_xxxxxxxxxxxx # Zero-knowledge: no external endpoints needed
Step 3: Start the Server
cd otto-server uvicorn server.main:app --host 0.0.0.0 --port 6670 # On first start you will see: # spaCy NER active — en_core_web_trf (transformer) loaded # SemanticDomainClassifier ready — SBERT all-MiniLM-L6-v2 | 17 domain centroids | dim=384 # Application startup complete.
Step 4: Your First Query
# Streaming SSE query (word-by-word)
curl "http://localhost:6670/api/otto/stream?query=what+is+our+Q1+profitability" -N
# JSON response
curl -X POST http://localhost:6670/api/otto/ask -H "Content-Type: application/json" -d '{"query": "what is our Q1 profitability?"}'
# NLP stack status
curl http://localhost:6670/api/otto/nlp-capabilities