DeSci Lab: Engage in groundbreaking protein folding research and advance scientific breakthroughs. Validator is a component of the OpMentis decentralized protein structure prediction network. It validates protein structure predictions made by miners by running its own predictions and comparing the results.
- Validates miner predictions by comparing structures and confidence metrics
- Supports both CPU and GPU execution
- Automatic download of required model parameters
- Robust error handling and logging
- 20,000 $OPM tokens
- Python 3.8+
- CUDA-compatible GPU (recommended)
- 16GB+ RAM
- 30GB+ disk space for model parameters
- Clone the repository:
git clone https://github.com/opmentis/desci-lab-validator.git
cd desci-lab-validator- Install dependencies:
chmod +x install.sh
./install.sh- Initialize Conda:
export PATH="$(pwd)/miniconda3/bin:$PATH"
conda init
conda activate- Configure .env file:
nano .envThe validator can be configured through environment variables or .env file:
WALLET_ADDRESS: Your validator wallet addressUSE_GPU: Whether to use GPU acceleration (true/false)TF_FORCE_UNIFIED_MEMORY: GPU memory setting (default: 1)XLA_PYTHON_CLIENT_MEM_FRACTION: GPU memory fraction (default: 4.0)
- Run the validator:
python validator.py --wallet YOUR_WALLET_ADDRESSThe validator will:
- Download required AlphaFold parameters on first run
- Connect to the OpMentis network
- Get pending validation tasks
- Run AlphaFold predictions
- Compare results with miner predictions
- Submit validation results
- Receive rewards for successful validations
The validator consists of several key components:
ValidatorService: Main service orchestrating the validation processModelService: Handles AlphaFold model predictionsRelaxationService: Performs structure refinementConfidenceService: Calculates confidence metrics
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
For support, please open an issue on GitHub or contact the OpMentis team.