Compatibility with the Array API standard?
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 22/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- numpy, pandas, python, pytorch, tensorflow
- 领域
- data
调研方向
The payload names no specific files, so begin by reading the Array API standard docs and choosing a few representative pvlib functions that rely on NumPy and pandas calls. Record which calls would break with other array libraries, then prototype compatibility in those functions. Done means a written cost-benefit summary with a working prototype and tests run against at least one non-NumPy array library.
由索引模型根据 Issue 内容生成。
描述
The Array API standard makes it possible to write generic code that works with many types of arrays (NumPy, Tensorflow, PyTorch, Dask, JAX, CuPy, MXNet, Xarray, ...). In principle, this would enable a pvlib simulation to be run in parallel, or on a GPU, using only code that looks very similar to the numpy-style code we are familiar with.
The Array API standard is gaining some meaningful traction in the community. For example, SciPy is adding support: see their array types tag, progress tracking tables, and developer documentation. scikit-learn is working on it too.
Adopting the standard could be a fairly straightforward way of enabling new use cases for pvlib. However, I don't have any experience with it myself and can't say anything more concrete than it seems worth looking into. So, following discussion with @echedey-ls, a good first step here is to explore the cost and benefit by prototyping compatibility in a small number of representative pvlib functions (I leave it an open question which functions might be considered representative). That would inform decisions about whether and how to pursue broader adoption across pvlib.
For reference, I copy this description from our GSoC 2025 project ideas list:
Project Title: Compatibility with the Array API
Project Description: An exciting development in the Python ecosystem is the Python array API standard, a uniform interface across the various array libraries (NumPy, Xarray, JAX, etc). Historically, pvlib has been written for compatibility with NumPy arrays and Pandas Series, but making use of the Array API to expand compatibility to other array libraries could be very beneficial. A successful proposal for this project will include some investigation about what it would take to adopt the Array API across pvlib.
Expected Outcomes: A plan/roadmap for adopting the Array API, Array API compatibility in several pvlib modules, and automated tests ensuring compatibility across the various array packages.
- 主要语言
- Python
- 星标
- 1.7k
- 派生
- 1.2k
- 平均合并
- 3 天 18 小时
- 30 天内合并 PR
- 13
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
pvlib/pvlib-python 的其他 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 78/100
pvlib/pvlib-python#2903 · 2 条评论 · 2 个 reaction ·
维护者通常 1 天内回复
-
难度 1/5 1 小时以内 新手友好度 92/100
pvlib/pvlib-python#2902 ·
维护者通常 1 天内回复
-
Add an example or documentation on using 'bhi' from ERA5可能重新可做 @anshurajbisoyi98-ctrl 于 14 天前认领,目前没有进行中的 PR。 未关闭
难度 2/5 1-3 小时 新手友好度 66/100
pvlib/pvlib-python#2880 · 2 条评论 ·
维护者通常 1 天内回复
-
Use "long-wave" rather than "infra-red" to refer to thermal radiation.可能重新可做 @Rahi-padwal 于 252 天前认领,目前没有进行中的 PR。 未关闭api easy
难度 2/5 1-3 小时 新手友好度 62/100
pvlib/pvlib-python#2653 · 6 条评论 ·
维护者通常 1 天内回复
-
question
难度 1/5 1-3 小时 新手友好度 72/100
pvlib/pvlib-python#2637 · 10 条评论 ·
维护者通常 1 天内回复
查看 pvlib/pvlib-python 的全部 Issue
相似的 Issue
-
难度 1/5 1 小时以内 新手友好度 65/100
521xueweihan/HelloGitHub#4025 ·
-
难度 2/5 1-3 小时 新手友好度 85/100
aws-samples/sample-per-model-bedrock#321 ·
维护者通常 1 天内回复
-
难度 1/5 1-3 小时 新手友好度 68/100
FavioVazquez/showtime#101 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
koush/ha_scrypted#81 ·
-
难度 2/5 1-3 小时 新手友好度 82/100
google/osv-scanner-action#147 ·