Overview
The Python service is ideal for developers who prefer managing Python environments directly, need custom dependency management, or want to integrate CyborgDB service into existing Python applications. It provides the same REST API functionality as the Docker version.Get an API Key
To use CyborgDB, you need an API key. You can get one from the CyborgDB Admin Dashboard.For quick evaluation, you can generate a temporary demo key using any of the SDKs:Then use the printed key as your
CYBORGDB_API_KEY when starting the service, and as the api_key when connecting with an SDK client.Make sure to keep your API key secure and do not share it publicly.Check Prerequisites
Ensure you have the required Python version and environment tools:
- Python: 3.10, 3.11, 3.12, 3.13, or 3.14
- Package Manager: conda (recommended) or pip with virtual environment
While conda is mentioned in the build instructions, the wheel works with any Python environment manager including pip, pipenv, poetry, etc.
Choose Your Storage Backend (Optional)
The service ships with three storage backends. Skip this
step and you get disk (embedded RocksDB) by default —
the data directory is
~/.cyborgdb/data.- Disk (default) — embedded RocksDB on local disk. Persistent, no external dependencies. Best for single-node deployments and edge devices.
- S3 — AWS S3 or any S3-compatible store (MinIO, Cloudflare R2, …). Best for cloud-native and multi-node deployments.
- Memory — in-process only, nothing persists across restarts. For tests and ephemeral indexes.
v0.17 collapsed the storage surface. The previous
standalone, postgres, and redis backends and the catch-all CYBORGDB_CONNECTION_STRING are gone — switch standalone → disk and use the new CYBORGDB_DISK_PATH / CYBORGDB_S3_* variables.Configure Environment Variables
Set the required environment variables for your deployment:For more information on environment variables, refer to this guide.
- Disk (default)
- Memory
- S3 (AWS)
- S3 (MinIO / R2)
Start the Service
Run the CyborgDB service using the installed command:The service will start and display startup information including:
- Configured storage backend (
memory,disk, ors3) - Server URL (default:
http://localhost:8000) - Available API endpoints
For additional configuration options, run
cyborgdb-service --help to see all available command-line arguments.Verify Installation
Once the service is running, verify it’s working correctly:Health Check:API Documentation:
Navigate to http://localhost:8000/v1/docs to explore the interactive API documentation.You should see a response indicating the service is healthy and ready to accept requests.
Advanced Configuration
For production deployments, consider these additional configurations:
- Environment Variables
- Production Deployment
- HTTPS Configuration
| Variable | Description | Required | Example |
|---|---|---|---|
CYBORGDB_API_KEY | Your CyborgDB API key | ✅ | cyborg_abc123... |
CYBORGDB_DB_TYPE | Storage backend (memory, disk, s3) | ❌ (defaults to disk) | s3 |
CYBORGDB_DISK_PATH | Data directory for disk storage | ❌ | /var/lib/cyborgdb |
CYBORGDB_S3_BUCKET | Bucket name for s3 storage | Required for S3 | my-bucket |
CYBORGDB_S3_REGION | Region for s3 storage | ❌ | us-east-1 |
PORT | Service port | ❌ | 8000 |
SSL_CERT_PATH | Path to SSL certificate file | ❌ | /etc/ssl/certs/server.crt |
SSL_KEY_PATH | Path to SSL private key file | ❌ | /etc/ssl/private/server.key |
Without
CYBORGDB_DB_TYPE, the service uses disk storage rooted at ~/.cyborgdb/data. For the full list (including S3 credentials and KMS), see the Environment Variables guide.Next Steps
Now that your CyborgDB service is running, you can interact with it using client SDKs:Install Client SDKs:
REST API Reference
Learn how to use the REST API for direct integration
Python SDK Reference
Learn how to use the Python SDK for direct integration
JS/TS SDK Reference
Learn how to use the JavaScript/TypeScript SDK for direct integration
Go SDK Reference
Learn how to use the Go SDK for direct integration
Comparison with Docker Service
Comparison with Docker Service
| Aspect | Python Service | Docker Service |
|---|---|---|
| Installation | pip install | docker run |
| Dependencies | Managed by pip/conda | Bundled in container |
| Resource Usage | Lower overhead | Higher overhead |
| Environment Isolation | Python virtualenv | Container isolation |
| Deployment Complexity | Simple Python deployment | Container orchestration |
| Configuration | Environment variables/files | Environment variables |
| Best For | Development, Python-heavy workflows | Production, cloud deployment |