NLPWM comes in three builds, and the right one depends on your hardware, data volume, and whether you are training models
NLPWM (Natural Language Processing Workflow Manager) offers three builds: CPU, GPU, and minimal. The CPU build runs on any machine and handles tokenization, entity recognition, and sentiment analysis without special hardware. The GPU build requires an NVIDIA graphics card and CUDA toolkit, but processes large datasets 10 to 50 times faster. The minimal build strips out optional features and takes up only 200 MB, making it suitable for embedded systems or edge devices, but you cannot add features after installation.
Most people should start with the CPU build unless they are training custom models or processing thousands of documents daily. The CPU build installs in minutes, works on Windows, macOS, and Linux, and handles production workloads for years without hitting performance limits. If you later discover you need GPU speed, you can switch builds without losing your data or retraining models.
Key Takeaways
- The CPU build works on any computer and is the right choice unless you are training models or processing massive datasets daily.
- The GPU build requires an NVIDIA card and CUDA, but processes data 10 to 50 times faster for large jobs and model training.
- The minimal build saves disk space and runs on low-power devices, but you cannot add features after installation.
- Check your Python version before downloading — NLPWM 2.x requires Python 3.8 or later, and 3.x requires Python 3.10 or later.
- You can switch between builds without losing trained models or configuration files.
When to use the CPU build
Start with the CPU build if you are new to NLPWM or your project does not involve training models from scratch. This build installs faster, takes up less disk space (around 800 MB), and runs on Windows, macOS, and Linux without extra setup. It handles all the core tasks: breaking text into tokens, identifying parts of speech, extracting named entities, and running pre-trained sentiment models.
The CPU build is also the right choice if your data volume is under 100,000 documents per day or if you are using NLPWM as part of a larger pipeline where speed is not the bottleneck. Many teams use the CPU build in production for years without hitting performance limits. A single document typically takes 50 to 200 milliseconds to process depending on length, which is acceptable for most workflows. If you are processing documents one at a time or in small batches, you will not notice the difference compared to GPU processing.
When to use the GPU build
Switch to the GPU build if you are training custom models, processing more than 100,000 documents per day, or running inference on batches of 1,000 or more documents at once. The GPU build is 10 to 50 times faster than CPU for these tasks because it parallelizes the math across thousands of cores on your graphics card. A job that takes 8 hours on CPU can finish in 30 minutes on GPU.
Before you download the GPU build, verify that you have an NVIDIA graphics card — AMD and Intel cards are not supported by NLPWM's current GPU libraries. You also need CUDA 11.8 or later and cuDNN 8.6 or later installed on your machine. If you do not have these, installation takes 20 to 40 minutes and requires administrator access. The GPU build itself is larger at around 2.5 GB because it includes the CUDA libraries. If your machine does not have a GPU, the GPU build will fall back to CPU automatically, but you will not get the speed benefit and you will waste disk space.
When to use the minimal build
The minimal build is for constrained environments: Raspberry Pi devices, Docker containers with strict size limits, or edge servers where disk space costs money. It removes optional preprocessing modules, language-specific models for less common languages, and visualization tools. The minimal build is only 200 MB and installs in seconds, making it practical for devices with severe storage restrictions.
The trade-off is that you cannot add features after installation. If you start with the minimal build and later realize you need the German language model or the visualization module, you have to uninstall and reinstall the full CPU or GPU build. For this reason, only choose the minimal build if you know exactly what your project needs and you are confident those needs will not change. If there is any doubt, use the CPU build instead — the extra 600 MB is worth the flexibility and saves you from reinstalling later.
How to check which build you have installed
Open a terminal or command prompt and run this command:
nlpwm --version --build
The output will show your NLPWM version and which build you are running. It will say "cpu", "gpu", or "minimal". If you see "gpu" but you do not have an NVIDIA card, NLPWM is falling back to CPU silently — you are not getting GPU speed and you should reinstall the CPU build to free up disk space.
You can also check which Python version you are using by running python --version. NLPWM 2.x requires Python 3.8 to 3.11, and version 3.x requires Python 3.10 or later. If your Python version is too old, you will need to upgrade before installing a newer NLPWM build. Checking both your build and Python version takes less than a minute and prevents installation problems later.
Switching between builds
You can change builds without losing your data or configuration. Uninstall the current build with pip uninstall nlpwm, then install the new one with pip install nlpwm-gpu (for GPU), pip install nlpwm (for CPU), or pip install nlpwm-minimal (for minimal). The switch takes 2 to 5 minutes depending on your internet speed and which build you are installing.
If you have trained custom models using the old build, they will still work with the new build as long as you are not downgrading to the minimal version. Models trained on CPU work on GPU and vice versa without retraining. However, if you switch from the full CPU build to minimal, you may lose access to preprocessing tools that your models depend on, so test thoroughly on a small dataset before switching to production. This precaution prevents unexpected failures when you move to your live environment.
Common mistakes when choosing a build
The most common mistake is installing the GPU build without checking for CUDA first. If CUDA is not installed, the GPU build will either fail to install or install successfully but run on CPU without telling you. You will think you have GPU acceleration and wonder why your jobs are slow. Always verify CUDA is installed before downloading the GPU build: run nvidia-smi in your terminal. If the command is not found, CUDA is not installed and you need to set it up before proceeding.
The second mistake is choosing the minimal build to save disk space, then realizing later that you need a feature that was stripped out. The minimal build saves 600 MB, which is not worth the hassle of reinstalling. Unless you are working on a device with less than 1 GB of free space, use the CPU build instead. This approach gives you flexibility without significant storage cost.
The third mistake is installing the wrong build for your Python version. NLPWM 3.x is newer and faster, but it requires Python 3.10 or later. If you are stuck on Python 3.8 or 3.9, you must use NLPWM 2.x. Check your Python version before you download to avoid installation failures and wasted time troubleshooting version mismatches.
Frequently Asked Questions
Can I run the GPU build on a Mac with Apple Silicon?
Not yet. NLPWM's GPU build currently supports only NVIDIA cards. Apple Silicon Macs (M1, M2, M3) do not have NVIDIA GPUs, so you must use the CPU build. The CPU build runs fine on Apple Silicon and uses the native ARM architecture, so performance is still good for most workflows.
What happens if I install the GPU build but my CUDA version is too old?
The installation will fail with an error message telling you which CUDA version you need. You cannot use the GPU build until you upgrade CUDA. Download the correct version from NVIDIA's website and follow their installation instructions for your operating system. After CUDA is installed, try installing NLPWM again.
Can I use the minimal build for production if my project is small?
Yes, if you are certain your project will not grow and you do not need the features that were removed. Test it thoroughly on your actual data first. If you later need a feature that is not in the minimal build, you will have to reinstall, which means downtime. The CPU build is safer for production because you have all options available.
Does the GPU build use more electricity than the CPU build?
Yes, running the GPU uses more power than running on CPU alone. A typical NVIDIA card draws 150 to 350 watts during heavy processing. If you are running NLPWM on a laptop, the GPU build will drain the battery faster. For laptops, the CPU build is usually the better choice unless you are plugged in and processing a large job.
Can I switch from GPU to CPU build without retraining my models?
Yes. Models trained on GPU work on CPU without retraining. The output will be identical. The only difference is speed — CPU will be slower. You do not need to change any code or retrain anything; just uninstall the GPU build and install the CPU build.