cvxpy-base
A domain-specific language for modeling convex optimization problems in Python.
What it is and what it does
cvxpy-base is the compiled solver kernel layer for CVXPY, a Python-embedded domain-specific language for convex optimization. It provides the numerical computation engine that solves optimization problems modeled in CVXPY's high-level syntax. The package handles the lower-level solver operations, relying on numpy, scipy, qdldl, and sparsediffpy for linear algebra and differentiation.
This is a base package—part of CVXPY's architecture rather than a standalone tool. It enables CVXPY to model and solve convex optimization problems (including mixed-integer, geometric, quasiconvex, and nonlinear programs) by providing the compiled solver kernels that perform the actual numerical work. Users typically interact with it indirectly through the main cvxpy package, which uses cvxpy-base's solvers to compute solutions.
Use it for:
- Solving least-squares problems with variable bounds or linear constraints in machine learning pipelines
- Portfolio optimization and risk management in quantitative finance applications
- Control system design and trajectory optimization in robotics and autonomous systems
- Signal processing and filter design requiring convex formulations
- Resource allocation and scheduling problems in operations research
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
cvxpy-base provides compiled solver kernels for CVXPY, a Python modeling language for convex optimization problems. It handles the numerical computation layer that solves optimization problems expressed in CVXPY's high-level syntax.
Yes, if you are using CVXPY for convex optimization work. cvxpy-base is a required component of CVXPY's solver stack. It is actively maintained, has no known vulnerabilities, supports current Python versions, and carries a permissive Apache-2.0 license. Install friction is moderate due to compiled wheels, but pre-built binaries for major platforms minimize build complexity.
Install
cvxpy-base on PyPI
pip
pip install cvxpy-baseuv
uv add cvxpy-basepoetry
poetry add cvxpy-baseInstalling cvxpy-base
Before you install
Medium install friction due to compiled wheels for multiple platforms and Python versions. Active maintenance with recent releases; last commit 2026-08-12 indicates steady support.
License in practice
Apache-2.0 permissive license allows use in commercial and open-source projects with minimal restrictions; attribution required but no copyleft obligations.
Quickstart
pip install cvxpy-base
import cvxpy as cp
import numpy
x = cp.Variable(10)
objective = cp.Minimize(cp.sum_squares(x))
prob = cp.Problem(objective)
prob.solve()
Requires Python >= 3.11. Runtime dependencies numpy, scipy, qdldl, and sparsediffpy must be installed; typically handled automatically by pip.
Verify before relying
- Whether cvxpy-base can be installed and used standalone or requires the main cvxpy package
- Performance characteristics and solver selection behavior compared to other CVXPY solver backends
- Specific optimization problem classes or sizes for which this backend is recommended
- How monthly download volume translates to actual production usage patterns
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.11) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | 4 — numpy, scipy, qdldl, sparsediffpy |
| Maintenance | actively maintained — 53 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 222,012/month — #9,272 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: cvxpy_base-1.9.2-cp311-cp311-macosx_10_9_universal2.whl; cvxpy_base-1.9.2-cp311-cp311-macosx_10_9_x86_64.whl; cvxpy_base-1.9.2-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; cvxpy_base-1.9.2-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; cvxpy_base-1.9.2-cp311-cp311-win_amd64.whl; cvxpy_base-1.9.2-cp312-cp312-macosx_10_13_universal2.whl; cvxpy_base-1.9.2-cp312-cp312-macosx_10_13_x86_64.whl; cvxpy_base-1.9.2-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; cvxpy_base-1.9.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; cvxpy_base-1.9.2-cp312-cp312-win_amd64.whl; cvxpy_base-1.9.2-cp313-cp313-macosx_10_13_universal2.whl; cvxpy_base-1.9.2-cp313-cp313-macosx_10_13_x86_64.whl; cvxpy_base-1.9.2-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; cvxpy_base-1.9.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; cvxpy_base-1.9.2-cp313-cp313-win_amd64.whl; cvxpy_base-1.9.2-cp314-cp314-macosx_10_15_universal2.whl; cvxpy_base-1.9.2-cp314-cp314-macosx_10_15_x86_64.whl; cvxpy_base-1.9.2-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl; cvxpy_base-1.9.2-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl; cvxpy_base-1.9.2-cp314-cp314t-macosx_10_15_universal2.whl
Tags
More Mathematics packages
NetworkX provides data structures and…
permissive · top 1,000 on PyPI
kiwisolverkiwisolver is a Python binding to a fast C++…
permissive · top 1,000 on PyPI
sympySymPy is a Python library for symbolic…
permissive · top 1,000 on PyPI
contourpyContourPy calculates contours of 2D…
permissive · top 1,000 on PyPI
torchPyTorch provides GPU-accelerated tensor…
permissive · top 1,000 on PyPI
onnxruntimeonnxruntime loads and executes Open Neural…
permissive · top 1,000 on PyPI
cvxpyCVXPY is a Python modeling language for…
permissive · top 5,000 on PyPI
scsscs is a Python interface to the Splitting…
permissive · top 5,000 on PyPI
qpsolversProvides a unified Python interface to solve…
copyleft · top 5,000 on PyPI
cvxoptcvxopt is a Python library for solving convex…
unclear · top 5,000 on PyPI
ecosECOS is a Python wrapper for a numerical solver…
copyleft · top 5,000 on PyPI
osqpOSQP is a Python wrapper for the Operator…
permissive · top 5,000 on PyPI
MosekMOSEK solves large-scale convex and…
unclear · top 15,000 on PyPI
highspyHighspy is a Python wrapper around HiGHS, a…
permissive · top 5,000 on PyPI
pyvcgPyVCG generates verification conditions for SMT…
copyleft · top 15,000 on PyPI
proxsuiteProxSuite is a numerically robust quadratic…
permissive · top 15,000 on PyPI