审查并精简 ChatGPT 的建库建议后落地的第一版骨架,只定接口不写实现。 - 建议审查:14 个包 → 7 个;约 250 个函数 → 约 40 个;5 个 Result 类 → 1 个 (docs/01-suggestion-review.md) - docs/:架构、路线图(含永久不做清单)、环境、Git 工作流、函数卡片模板 - src/mcm_toolkit/:core / data / stats / models / solve / decision / viz 共 23 个模块,均为签名 + docstring + NotImplementedError - tests/:9 个文件,其中 test_api_surface.py 已通过(20 passed) - examples/ problems/ notebooks/ figures/ tables/ 骨架 - pyproject.toml(核心依赖 4 个 + 6 组 extras)、environment.yml - scripts/:setup-venv.ps1(ASCII + LF)、setup-conda.ps1、doctor.ps1 - 环境:.venv(system-site-packages)与 conda 环境 mcm-toolkit 均已建好, 数值栈版本与 base 完全对齐(numpy 2.4.6 / scipy 1.18.1 / pandas 3.0.6,MKL 后端)
776 B
776 B
API 参考
本目录不放手写 API 文档。 手写的 API 文档一定会和代码脱节。
接口的权威来源是三个地方,按优先级:
- 源码 docstring —— 每个函数的数学含义、参数、返回值、Notes、示例都写在那里;
__all__—— 每个子包的公开 API 清单,tests/test_api_surface.py会校验它和实际导出一致;docs/02-architecture.md—— 跨函数的约定(Result字段、RNG 规则、fit/predict/score协议)。
需要生成站点时用 mkdocs + mkdocstrings(后者直接从 docstring 生成):
pip install mkdocs mkdocstrings[python]
mkdocs serve
本仓库不把 mkdocs 放进依赖——它是可选的、和比赛无关的工具。