SuperAPI AI 工具集

cuopt-developer

编程与开发

查看项目

更新于 10-16 03:49

技能介绍

用途:本技能用于参与 NVIDIA cuOpt 代码库的修改与贡献,而不是使用 cuOpt 求解问题;仅想使用时应切换到相应问题技能(如 cuopt-routing、cuopt-lp-milp)。

主要能力:覆盖 C++/CUDA 核心引擎、Python 绑定与路由 API、cuopt_server REST 服务、cuopt_self_hosted 部署、libcuopt 封装、CI 脚本、文档与测试数据集。支持的功能矩阵中,C API 支持 LP/MILP/QP、不支持 Routing;Python 全部支持;Server 支持 LP/MILP/Routing、不支持 QP;C++ API 标注为内部接口。

使用方式:首次环境搭建参见 references/first_time_setup.md 的 clone→conda 环境→首次构建→首次测试流程。构建前需做预检:用 nvidia-smi 查看驱动的 CUDA 版本,选择 CUDA 主版本不超过它的 conda/environments/all_cuda-<ver>_arch-<arch>.yaml;先创建并激活 conda 环境,否则会出现链接错误;内存受限时设置 PARALLEL_LEVEL;测试前按 CONTRIBUTING.md 下载数据集并导出 RAPIDS_DATASET_ROOT_DIR。常用命令:./build.sh、./build.sh --help、ctest --test-dir cpp/build、pytest -v python/cuopt/cuopt/tests、pytest -v python/cuopt_server/tests。可安装 pre-commit 钩子:pre-commit install。相关参考文件包括 references/build_and_test.md、references/python_bindings.md、references/contributing.md、references/conventions.md、references/troubleshooting.md、references/vrp_skills.md、resources/numerical_debugging.md。

限制与规则:明确禁止运行 pip/conda/apt 安装、禁止绕过 CI(--no-verify、跳过 pre-commit 或测试)、禁止修改工作区外文件(如 ~/.bashrc、/etc)、禁止执行破坏性命令(rm -rf、git reset --hard、git push --force 等)、禁止提权操作(sudo)。允许直接运行构建、测试、格式化与只读 git 命令,但 git commit、git push 前需先询问。修改须保持最小差异,不得自行发明 API,服务器 schema 需匹配 OpenAPI 规范,CUDA/GPU 操作保持流序并使用 RMM 分配器。