| name | nlp-project-setup |
| description | Set up Python environment for NLP and preference optimization projects. |
NLP Project Environment Setup
Environment Requirements for SimPO
Core Dependencies
- PyTorch: Deep learning framework (torch, torchvision, torchaudio)
- Transformers: Hugging Face library for LLMs
- NumPy: Numerical computing
- SciPy: Scientific computing utilities
- tqdm: Progress bars for training loops
Optional but Recommended
- wandb: Experiment tracking
- accelerate: Distributed training
- bitsandbytes: 8-bit optimization
- Flash-Attn: Efficient attention
Installation Steps
1. Check Python Version
python --version
python -VV
2. Create Virtual Environment (Optional)
python -m venv venv
source venv/bin/activate
3. Install Core Dependencies
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
pip install transformers
pip install numpy scipy tqdm
4. Verify Installation
python -c "import torch; print(torch.__version__)"
python -c "import transformers; print(transformers.__version__)"
Dependency Version Considerations
For SimPO Specifically
- transformers >= 4.30.0 (for AutoTokenizer, model loading)
- torch >= 1.13.0 (for modern PyTorch features)
- numpy (for .npz file saving)
Compatibility Notes
- Different CUDA versions may require different torch builds
- GPU memory requirements: typically 10-20GB for 7B models
- CPU-only mode works but is much slower
Requirements File
Create requirements.txt:
torch>=1.13.0
transformers>=4.30.0
numpy
scipy
tqdm
accelerate>=0.20.0
Then install:
pip install -r requirements.txt
Logging Installed Packages
python -m pip freeze > /root/python_info.txt
python -VV >> /root/python_info.txt
python -m pip freeze >> /root/python_info.txt
Troubleshooting
CUDA/GPU Issues
python -c "import torch; print(torch.cuda.is_available())"
nvidia-smi
Missing Dependencies
pip install <package_name>
pip install --force-reinstall -r requirements.txt
Version Conflicts
pip show <package_name>
pip check