diff --git a/.coveragerc b/.coveragerc index 1972a0c95ea1..882cb5fa2b9c 100644 --- a/.coveragerc +++ b/.coveragerc @@ -27,10 +27,14 @@ omit = /workspace/config-3.12.py /workspace/config-3.py /workspace/config.py + /workspace/_remote_module_non_scriptable* + +[report] +omit = + /workspace/_remote_module_non_scriptable* [paths] source = nemo/ /home/runner/work/NeMo/NeMo/nemo /workspace/nemo - diff --git a/.github/actions/test-template/action.yml b/.github/actions/test-template/action.yml index 6fc663ffb45b..f37fa5d01b82 100644 --- a/.github/actions/test-template/action.yml +++ b/.github/actions/test-template/action.yml @@ -153,7 +153,6 @@ runs: set -e docker exec -t nemo_container_${{ github.run_id }}_${{ inputs.runner }} bash -c '\ - cp -r /opt/Megatron-LM/ /workspace/ && \ bash tests/${{ inputs.test_dir }}/${{ inputs.script }}.sh && \ echo "Finished successfully." || echo "Did not finish."' ) 2>&1 | tee $DIR/err.log diff --git a/.github/workflows/_build_container.yml b/.github/workflows/_build_container.yml index 7190fe626ac6..ab478e8be284 100644 --- a/.github/workflows/_build_container.yml +++ b/.github/workflows/_build_container.yml @@ -38,26 +38,6 @@ jobs: - name: Checkout repository uses: actions/checkout@v6 - - name: Parse manifest.json - id: manifest - run: | - BUILD_ARGS=$(cat << EOF - BASE_IMAGE=$(cat requirements/manifest.json | jq -r '."ngc-pytorch"') - TRTLLM_REPO=$(cat requirements/manifest.json | jq -r '."vcs-dependencies"."trt-llm".repo') - TRTLLM_TAG=$(cat requirements/manifest.json | jq -r '."vcs-dependencies"."trt-llm".ref') - MLM_REPO=$(cat requirements/manifest.json | jq -r '."vcs-dependencies"."megatron-lm".repo') - MLM_TAG=$(cat requirements/manifest.json | jq -r '."vcs-dependencies"."megatron-lm".ref') - TE_REPO=$(cat requirements/manifest.json | jq -r '."vcs-dependencies".transformer_engine.repo') - TE_TAG=$(cat requirements/manifest.json | jq -r '."vcs-dependencies".transformer_engine.ref') - APEX_REPO=$(cat requirements/manifest.json | jq -r '."vcs-dependencies".apex.repo') - APEX_TAG=$(cat requirements/manifest.json | jq -r '."vcs-dependencies".apex.ref') - EOF - ) - - echo "BUILD_ARGS<> $GITHUB_OUTPUT - echo "$BUILD_ARGS" >> $GITHUB_OUTPUT - echo "EOF" >> $GITHUB_OUTPUT - - name: Get last merged PR id: cache_from env: @@ -121,7 +101,6 @@ jobs: NEMO_TAG=${{ github.sha }} NEMO_REPO=https://github.com/NVIDIA/NeMo PR_NUMBER=${{ github.event.pull_request.number || 0 }} - ${{ needs.pre-flight.outputs.build_args }} cache-from: | type=registry,ref=${{ inputs.registry }}/nemo-speech:${{ inputs.image-name }}-buildcache-main,mode=max type=registry,ref=${{ inputs.registry }}/nemo-speech:${{ inputs.image-name }}-buildcache-${{ github.event.pull_request.number || 0 }},mode=max diff --git a/CLAUDE.md b/CLAUDE.md index eed65f2ba641..037115ed3aa1 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -49,9 +49,9 @@ Markers: `unit`, `integration`, `system`, `pleasefixme` (broken — skip), `skip Sphinx-based docs live in `docs/source/`. Build with: ```bash -pip install -r requirements/requirements_docs.txt # one-time setup -make -C docs clean html # full rebuild -make -C docs html # incremental rebuild +uv sync --group docs # one-time setup +uv run make -C docs clean html # full rebuild +uv run make -C docs html # incremental rebuild ``` Output goes to `docs/build/html/`. Open `docs/build/html/index.html` to preview locally. diff --git a/docker/Dockerfile.ci b/docker/Dockerfile.ci index 352c03a2a4bc..0e298bf24ee3 100644 --- a/docker/Dockerfile.ci +++ b/docker/Dockerfile.ci @@ -14,67 +14,46 @@ # See the License for the specific language governing permissions and # limitations under the License. -ARG BASE_IMAGE=nvcr.io/nvidia/pytorch:24.07-py3 +ARG BASE_IMAGE=nvcr.io/nvidia/cuda-dl-base:26.04-cuda13.2-devel-ubuntu24.04 +FROM ${BASE_IMAGE} AS base-image +ARG UV_VERSION=0.11.14 -FROM ${BASE_IMAGE} as base-image -ENV PIP_CONSTRAINT="" +ENV DEBIAN_FRONTEND=noninteractive ENV TRANSFORMERS_OFFLINE=0 ENV HYDRA_FULL_ERROR=1 ENV PYTHONUNBUFFERED=1 +ENV UV_PYTHON=3.13 +ENV UV_PROJECT_ENVIRONMENT=/opt/venv +ENV UV_LINK_MODE=copy +ENV UV_NO_CACHE=1 +ENV UV_NO_PROGRESS=1 +ENV VIRTUAL_ENV=/opt/venv +ENV PATH="/root/.local/bin:${VIRTUAL_ENV}/bin:${PATH}" -# APT packages RUN <<"EOF" bash -ex apt-get update -apt-get install -y bc libsox-fmt-all +apt-get install -y \ + bc \ + curl \ + git \ + libsndfile1 \ + libsox-fmt-all \ + sox apt-get clean EOF -FROM base-image as te-wheel -WORKDIR /tmp/NeMo -ARG TE_REPO -ARG TE_TAG -RUN --mount=type=bind,source=docker/common/install_dep.sh,target=/tmp/NeMo/install_dep.sh \ - --mount=type=bind,source=external/patches,target=/tmp/NeMo/external/patches <<"EOF" bash -ex - - bash /tmp/NeMo/install_dep.sh --library te --mode build - ls -al /tmp/Megatron-LM || true -EOF - -FROM base-image as mcore-wheel -WORKDIR /tmp/NeMo -ARG MLM_REPO -ARG MLM_TAG -RUN --mount=type=bind,source=docker/common/install_dep.sh,target=/tmp/NeMo/install_dep.sh <<"EOF" bash -ex - - bash /tmp/NeMo/install_dep.sh --library mcore --mode build - ls -al /tmp/Megatron-LM || true +RUN <<"EOF" bash -ex +curl -LsSf "https://astral.sh/uv/${UV_VERSION}/install.sh" | sh +uv --version EOF -FROM base-image -WORKDIR /tmp/NeMo -ENV INSTALL_DIR="/opt" -RUN \ - --mount=type=bind,from=te-wheel,source=/opt/wheels/te,target=/opt/wheels/te \ - --mount=type=bind,from=mcore-wheel,source=/opt/wheels/mcore,target=/opt/wheels/mcore \ - --mount=type=bind,source=requirements,target=/tmp/NeMo/requirements \ - --mount=type=bind,source=tools/ctc_segmentation/requirements.txt,target=/tmp/NeMo/tools/ctc_segmentation/requirements.txt \ - --mount=type=bind,source=docker/common/install_dep.sh,target=/tmp/NeMo/install_dep.sh \ - --mount=type=bind,source=setup.py,target=/tmp/NeMo/setup.py \ - --mount=type=bind,source=external/patches,target=/tmp/NeMo/external/patches \ - --mount=type=bind,source=README.md,target=/tmp/NeMo/README.md \ - --mount=type=bind,source=nemo/package_info.py,target=/tmp/NeMo/nemo/package_info.py \ - --mount=type=bind,source=nemo/__init__.py,target=/tmp/NeMo/nemo/__init__.py <<"EOF" bash -ex - - bash /tmp/NeMo/install_dep.sh --library te --mode install - bash /tmp/NeMo/install_dep.sh --library mcore --mode install - bash /tmp/NeMo/install_dep.sh --library extra --mode install - pip install --no-cache-dir ".[all,cu12]" - rm -rf $NEMO_DIR || true +WORKDIR /workspace +COPY pyproject.toml uv.lock /workspace/ +COPY nemo/__init__.py nemo/package_info.py /workspace/nemo/ +RUN <<"EOF" bash -ex +uv sync --link-mode copy --locked --extra all --extra cu13 --group test EOF - -WORKDIR /workspace -ENV PYTHONPATH="${PYTHONPATH}:/workspace/Megatron-LM" ENV NEMO_HOME="/home/TestData/nemo_home" ARG IMAGE_LABEL @@ -82,3 +61,6 @@ LABEL "nemo.library"=${IMAGE_LABEL} ARG PR_NUMBER LABEL "nemo.pr_number"=${PR_NUMBER} + +ARG NVIDIA_BUILD_ID +LABEL "NVIDIA_BUILD_ID"=${NVIDIA_BUILD_ID} diff --git a/docker/Dockerfile.speech b/docker/Dockerfile.speech deleted file mode 100644 index ba32799b00a5..000000000000 --- a/docker/Dockerfile.speech +++ /dev/null @@ -1,186 +0,0 @@ -# syntax=docker/dockerfile:experimental - -# Copyright (c) 2019, NVIDIA CORPORATION. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -ARG BASE_IMAGE=nvcr.io/nvidia/pytorch:25.12-py3 - -# build an image that includes only the nemo dependencies, ensures that dependencies -# are included first for optimal caching, and useful for building a development -# image (by specifying build target as `nemo-deps`) -FROM ${BASE_IMAGE} as nemo-deps - -# dependency flags; should be declared after FROM -# k2: not required by default -ARG REQUIRE_K2=false -# ais cli: not required by default, install only if required -ARG REQUIRE_AIS_CLI=false -# check imports: if flag is false, ignore result -ARG REQUIRE_CHECK_IMPORTS=true - -# Ensure apt-get won't prompt for selecting options -ENV DEBIAN_FRONTEND=noninteractive -# libavdevice-dev required for latest torchaudio -RUN apt-get update && \ - apt-get upgrade -y && \ - apt-get install -y \ - libsndfile1 sox \ - libfreetype6 \ - libsox-fmt-all \ - swig \ - ffmpeg \ - libavdevice-dev && \ - rm -rf /var/lib/apt/lists/* - -# libtool, ... , libgts-dev are required for graphviz -# graphviz is required for k2 and pynini visualization -RUN apt-get update && \ - apt-get install -y \ - libtool \ - libltdl-dev \ - automake \ - autoconf \ - bison \ - flex \ - tcl \ - ghostscript \ - libgd-dev \ - fontconfig \ - libcairo2-dev \ - libpango1.0-dev \ - libgts-dev && \ - rm -rf /var/lib/apt/lists/* - -WORKDIR /workspace/ - -ARG TE_TAG=7d576ed25266a17a7b651f2c12e8498f67e0baea -ARG MCORE_TAG=338af51452a53982d202e8386db6233adad1ce86 -ARG APEX_TAG=810ffae374a2b9cb4b5c5e28eaeca7d7998fca0c -# Install megatron core, this can be removed once 0.3 pip package is released -# We leave it here in case we need to work off of a specific commit in main -RUN git clone https://github.com/NVIDIA/Megatron-LM.git && \ - cd Megatron-LM && \ - git checkout ${MCORE_TAG} && \ - pip install . - -# Performance optimizations for distributed optimizer: https://github.com/NVIDIA/apex/pull/1771 -RUN git clone https://github.com/NVIDIA/apex.git && \ - cd apex && \ - git checkout ${APEX_TAG} && \ - pip install -v --no-build-isolation --disable-pip-version-check --no-cache-dir \ - --config-settings "--build-option=--cpp_ext --cuda_ext --fast_layer_norm --distributed_adam --deprecated_fused_adam" ./ - -# Transformer Engine 1.2.0 -RUN git clone https://github.com/NVIDIA/TransformerEngine.git && \ - cd TransformerEngine && \ - git fetch origin ${TE_TAG} && \ - git checkout FETCH_HEAD && \ - git submodule init && git submodule update && \ - NVTE_FRAMEWORK=pytorch NVTE_WITH_USERBUFFERS=1 MPI_HOME=/usr/local/mpi pip install . - -WORKDIR /tmp/ - -# uninstall stuff from base container -RUN pip3 uninstall -y sacrebleu torchtext - -COPY scripts /tmp/nemo/scripts/ -# install correct graphviz version (k2 and pynini visualization tool), skip if installation fails -RUN INSTALL_MSG=$(/bin/bash /tmp/nemo/scripts/installers/install_graphviz.sh --docker); INSTALL_CODE=$?; \ - echo ${INSTALL_MSG}; \ - if [ ${INSTALL_CODE} -ne 0 ]; then \ - echo "graphviz installation failed"; \ - if [ "${REQUIRE_K2}" = true ]; then \ - exit ${INSTALL_CODE}; \ - else echo "Skipping failed graphviz installation"; fi \ - else echo "graphviz installed successfully"; fi - -# install k2, skip if installation fails -COPY scripts /tmp/nemo/scripts/ -RUN INSTALL_MSG=$(/bin/bash /tmp/nemo/scripts/installers/install_k2.sh); INSTALL_CODE=$?; \ - echo ${INSTALL_MSG}; \ - if [ ${INSTALL_CODE} -ne 0 ]; then \ - echo "k2 installation failed"; \ - if [ "${REQUIRE_K2}" = true ]; then \ - exit ${INSTALL_CODE}; \ - else echo "Skipping failed k2 installation"; fi \ - else echo "k2 installed successfully"; fi - -# install nemo dependencies -WORKDIR /tmp/nemo -ENV LHOTSE_REQUIRE_TORCHAUDIO=0 -COPY requirements . -# exclude requirements_vllm.txt, since `vllm==0.5.x` breaks the container due to hardcoded requirements `torch==2.3.0` -RUN for f in $(ls requirements*.txt | grep -v 'requirements_vllm.txt'); do \ - pip3 install --disable-pip-version-check --no-cache-dir -r $f; done - -# install flash attention -RUN pip install flash-attn -# install numba for latest containers -RUN pip install numba>=0.57.1 - -# copy nemo source into a scratch image -FROM scratch as nemo-src -COPY . . - -# start building the final container -FROM nemo-deps as nemo -ARG NEMO_VERSION=2.0.0 - -# Check that NEMO_VERSION is set. Build will fail without this. Expose NEMO and base container -# version information as runtime environment variable for introspection purposes -RUN /usr/bin/test -n "$NEMO_VERSION" && \ - /bin/echo "export NEMO_VERSION=${NEMO_VERSION}" >> /root/.bashrc && \ - /bin/echo "export BASE_IMAGE=${BASE_IMAGE}" >> /root/.bashrc - -# Install NeMo -RUN --mount=from=nemo-src,target=/tmp/nemo,rw cd /tmp/nemo && pip install ".[all]" - -# Check install -# NB: adjusting LD_LIBRARY_PATH (only here, should not be persistent!) is a temporary hack -# to avoid failure if CUDA is unavailable (`docker build` does not expose GPUs) -# The error is raised in NeMo Core, and the main reason is reinstalled Transformer-Engine; -RUN CHECK_MSG=$(export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${CUDA_HOME}/compat/lib.real && \ - python -c "import nemo.collections.asr as nemo_asr" && \ - python -c "import nemo.collections.nlp as nemo_nlp" && \ - python -c "import nemo.collections.tts as nemo_tts" && \ - python -c "import nemo_text_processing.text_normalization as text_normalization"); CHECK_CODE=$?; \ - echo ${CHECK_MSG}; \ - if [ ${CHECK_CODE} -ne 0 ]; then \ - echo "Import check failed"; \ - if [ "${REQUIRE_CHECK_IMPORTS}" = true ]; then \ - exit ${CHECK_CODE}; \ - else echo "Skipping unsuccessful import check"; fi \ - else echo "Import check success"; fi - - -# copy scripts/examples/tests into container for end user -WORKDIR /workspace/nemo -COPY scripts /workspace/nemo/scripts -COPY examples /workspace/nemo/examples -COPY tests /workspace/nemo/tests -COPY tutorials /workspace/nemo/tutorials -# COPY README.rst LICENSE /workspace/nemo/ - -RUN printf "#!/bin/bash\njupyter lab --no-browser --allow-root --ip=0.0.0.0" >> start-jupyter.sh && \ - chmod +x start-jupyter.sh - -# If required, install AIS CLI and Python AIS SDK -RUN INSTALL_MSG=$(/bin/bash /tmp/nemo/scripts/installers/install_ais_cli_latest.sh && pip install aistore); INSTALL_CODE=$?; \ - echo ${INSTALL_MSG}; \ - if [ ${INSTALL_CODE} -ne 0 ]; then \ - echo "AIS CLI installation failed"; \ - if [ "${REQUIRE_AIS_CLI}" = true ]; then \ - exit ${INSTALL_CODE}; \ - else echo "Skipping AIS CLI installation"; fi \ - else echo "AIS CLI installed successfully"; fi diff --git a/docker/common/install_dep.sh b/docker/common/install_dep.sh deleted file mode 100755 index 9ec72c1b00b1..000000000000 --- a/docker/common/install_dep.sh +++ /dev/null @@ -1,448 +0,0 @@ -#!/usr/bin/env bash -set -exou pipefail - -# List of all supported libraries (update this list when adding new libraries) -# This also defines the order in which they will be installed by --libraries "all" - -ALL_LIBRARIES=( - "trtllm" - "te" - "mcore" - "vllm" - "extra" -) - -export INSTALL_OPTION=${1:-dev} -export HEAVY_DEPS=${HEAVY_DEPS:-false} -export INSTALL_DIR=${INSTALL_DIR:-"/opt"} -export CURR=$(pwd) -export WHEELS_DIR=${WHEELS_DIR:-"$INSTALL_DIR/wheels"} -export PIP=pip -export TRTLLM_REPO=${TRTLLM_REPO:-$(cat "$CURR/requirements/manifest.json" | jq -r '."vcs-dependencies"."trt-llm".repo')} -export TRTLLM_TAG=${TRTLLM_TAG:-$(cat "$CURR/requirements/manifest.json" | jq -r '."vcs-dependencies"."trt-llm".ref')} -export TRTLLM_DIR="$INSTALL_DIR/TensorRT-LLM" -export TE_REPO=${TE_REPO:-$(cat "$CURR/requirements/manifest.json" | jq -r '."vcs-dependencies"."transformer_engine".repo')} -export TE_TAG=${TE_TAG:-$(cat "$CURR/requirements/manifest.json" | jq -r '."vcs-dependencies"."transformer_engine".ref')} -export NVIDIA_PYTORCH_VERSION=${NVIDIA_PYTORCH_VERSION:-""} -export CONDA_PREFIX=${CONDA_PREFIX:-""} - -trt() { - local mode="$1" - local WHEELS_DIR=$WHEELS_DIR/trt/ - mkdir -p $WHEELS_DIR - - # Skip TRT installation on macOS ARM - if [[ "$(uname)" == "Darwin" ]] && [[ "$(uname -m)" == "arm64" ]]; then - echo "Skipping TRT installation on macOS ARM" - return - fi - - if [ "$(id -u)" -ne 0 ]; then - if ! command -v sudo &>/dev/null; then - echo "Not running as root and sudo is not available, skipping TRT installation" - return - fi - fi - - if [ "$(id -u)" -eq 0 ]; then - # Already root, run directly - curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash - apt-get install git-lfs - git lfs install - apt-get clean - else - # Need to gain sudo - curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash - sudo apt-get install git-lfs - git lfs install - sudo apt-get clean - fi - - if [ ! -d "$TRTLLM_DIR/.git" ]; then - rm -rf "$TRTLLM_DIR" - cd $(dirname "$TRTLLM_DIR") - git clone ${TRTLLM_REPO} - fi - - pushd $TRTLLM_DIR - git checkout -f $TRTLLM_TAG - git submodule update --init --recursive - sed -i "/torch/d" requirements.txt - git lfs pull - patch -p1 < $CURR/external/patches/trt_llm.patch - popd - - if [[ "$mode" == "install" ]]; then - if [[ "${NVIDIA_PYTORCH_VERSION}" != "" ]]; then - cd $TRTLLM_DIR - set +u - - bash docker/common/install_base.sh - bash docker/common/install_cmake.sh - bash docker/common/install_ccache.sh - - . docker/common/install_tensorrt.sh \ - --TRT_VER="10.10.0.31" \ - --CUDA_VER="12.9" \ - --CUDNN_VER="9.9.0.52-1" \ - --NCCL_VER="2.26.5-1+cuda12.9" \ - --CUBLAS_VER="12.9.0.13-1" \ - --NVRTC_VER="12.9.41-1" - set -u - fi - fi -} - -trtllm() { - local mode="$1" - local WHEELS_DIR=$WHEELS_DIR/trtllm/ - mkdir -p $WHEELS_DIR - - # Skip TRT installation on macOS ARM - if [[ "$(uname)" == "Darwin" ]] && [[ "$(uname -m)" == "arm64" ]]; then - echo "Skipping TRT installation on macOS ARM" - return - fi - - if [ "$(id -u)" -ne 0 ]; then - if ! command -v sudo &>/dev/null; then - echo "Not running as root and sudo is not available, skipping TRT installation" - return - fi - fi - - if [ "$(id -u)" -eq 0 ]; then - # Already root, run directly - curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | bash - apt-get install git-lfs - git lfs install - apt-get clean - else - # Need to gain sudo - curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash - sudo apt-get install git-lfs - git lfs install - sudo apt-get clean - fi - - if [ ! -d "$TRTLLM_DIR/.git" ]; then - rm -rf "$TRTLLM_DIR" - cd $(dirname "$TRTLLM_DIR") - git clone ${TRTLLM_REPO} - fi - pushd $TRTLLM_DIR - git checkout -f $TRTLLM_TAG - git submodule update --init --recursive - sed -i "/torch/d" requirements.txt - git lfs pull - patch -p1 < $CURR/external/patches/trt_llm.patch - popd - - build() { - if [[ "${NVIDIA_PYTORCH_VERSION}" != "" ]]; then - # CONDA_PREFIX causes an error in trt-llm's build script - unset CONDA_PREFIX - cd $TRTLLM_DIR - TORCH_CXX_FLAGS="-D_GLIBCXX_USE_CXX11_ABI=1" python3 ./scripts/build_wheel.py --job_count $(nproc) --clean --trt_root /usr/local/tensorrt --dist_dir $WHEELS_DIR --python_bindings --benchmarks - fi - } - - if [[ "$mode" == "build" ]]; then - build - else - if [ -d "$WHEELS_DIR" ] && [ -z "$(ls -A "$WHEELS_DIR")" ]; then - build - fi - - pip install --no-cache-dir $WHEELS_DIR/tensorrt_llm*.whl --extra-index-url https://pypi.nvidia.com || true - fi -} - -te() { - local mode="$1" - local WHEELS_DIR=$WHEELS_DIR/te/ - mkdir -p $WHEELS_DIR - - TE_DIR="$INSTALL_DIR/TransformerEngine" - if [ ! -d "$TE_DIR/.git" ]; then - rm -rf "$TE_DIR" && - cd $(dirname "$TE_DIR") - git clone ${TE_REPO} - fi - pushd $TE_DIR - git checkout -f $TE_TAG - popd - - build() { - if [[ "${NVIDIA_PYTORCH_VERSION}" != "" ]]; then - cd $TE_DIR - git submodule init - git submodule update - pip install nvidia-mathdx==25.1.1 - pip wheel --wheel-dir $WHEELS_DIR/ --no-build-isolation $TE_DIR - fi - } - - if [[ "$mode" == "build" ]]; then - build - else - if [ -d "$WHEELS_DIR" ] && [ -z "$(ls -A "$WHEELS_DIR")" ]; then - build - fi - - pip install --no-cache-dir $WHEELS_DIR/transformer_engine*.whl && patch -p1 --force $(python -c "import triton; print(triton.__path__[0])")/runtime/autotuner.py $CURR/external/patches/triton-lang_triton_6570_lazy_init.patch || true - - fi -} - -mcore() { - local mode="$1" - - local WHEELS_DIR=$WHEELS_DIR/mcore/ - mkdir -p $WHEELS_DIR - - export CAUSAL_CONV1D_FORCE_BUILD=TRUE - export CAUSAL_CONV_TAG=v1.5.3 - CAUSAL_CONV1D_DIR="$INSTALL_DIR/causal-conv1d" - if [ ! -d "$CAUSAL_CONV1D_DIR/.git" ]; then - rm -rf "$CAUSAL_CONV1D_DIR" - mkdir -p $(dirname "$CAUSAL_CONV1D_DIR") - cd $(dirname "$CAUSAL_CONV1D_DIR") - git clone https://github.com/Dao-AILab/$(basename $CAUSAL_CONV1D_DIR).git - fi - pushd $CAUSAL_CONV1D_DIR - git checkout -f $CAUSAL_CONV_TAG - popd - - export MAMBA_FORCE_BUILD=TRUE - export MAMBA_TAG=6b32be06d026e170b3fdaf3ae6282c5a6ff57b06 - MAMBA_DIR="$INSTALL_DIR/mamba" - if [ ! -d "$MAMBA_DIR/.git" ]; then - rm -rf "$MAMBA_DIR" - cd $(dirname "$MAMBA_DIR") - git clone https://github.com/state-spaces/$(basename $MAMBA_DIR).git - fi - pushd $MAMBA_DIR - git checkout -f $MAMBA_TAG - perl -ni -e 'print unless /triton/' setup.py - perl -ni -e 'print unless /triton/' pyproject.toml - popd - - MLM_REPO=${MLM_REPO:-$(cat "$CURR/requirements/manifest.json" | jq -r '."vcs-dependencies"."megatron-lm".repo')} - MLM_TAG=${MLM_TAG:-$(cat "$CURR/requirements/manifest.json" | jq -r '."vcs-dependencies"."megatron-lm".ref')} - MLM_DIR="$INSTALL_DIR/Megatron-LM" - if [ ! -d "$MLM_DIR/.git" ]; then - rm -rf "$MLM_DIR" - mkdir -p $(dirname "$MLM_DIR") - cd $(dirname "$MLM_DIR") - git clone ${MLM_REPO} - fi - pushd $MLM_DIR - git checkout -f $MLM_TAG - perl -ni -e 'print unless /triton==3.1.0/' requirements/pytorch_24.10/requirements.txt - perl -ni -e 'print unless /nvidia-resiliency-ext/' requirements/pytorch_24.10/requirements.txt - popd - - build() { - if [[ "${NVIDIA_PYTORCH_VERSION}" != "" ]]; then - pip wheel --no-deps --no-cache-dir --no-build-isolation --wheel-dir $WHEELS_DIR $MAMBA_DIR - pip wheel --no-deps --no-cache-dir --no-build-isolation --wheel-dir $WHEELS_DIR $CAUSAL_CONV1D_DIR - fi - - pip wheel --no-deps --wheel-dir $WHEELS_DIR $MLM_DIR - } - - if [[ "$mode" == "build" ]]; then - build - else - if [ -d "$WHEELS_DIR" ] && [ -z "$(ls -A "$WHEELS_DIR")" ]; then - build - fi - - pip install --no-cache-dir $WHEELS_DIR/*.whl "nvidia-pytriton ; platform_machine == 'x86_64'" || true - pip install --no-cache-dir -e $MLM_DIR - fi -} - -vllm() { - local mode="$1" - - local WHEELS_DIR=$WHEELS_DIR/vllm/ - mkdir -p $WHEELS_DIR - - VLLM_DIR="$INSTALL_DIR/vllm" - - build() { - if [[ "${NVIDIA_PYTORCH_VERSION}" != "" ]]; then - ${PIP} install --no-cache-dir virtualenv - virtualenv $INSTALL_DIR/venv - $INSTALL_DIR/venv/bin/pip install --no-cache-dir setuptools coverage - $INSTALL_DIR/venv/bin/pip wheel --no-cache-dir --no-build-isolation \ - --wheel-dir $WHEELS_DIR/ \ - -r $CURR/requirements/requirements_vllm.txt - fi - } - - if [[ "$mode" == "build" ]]; then - build - else - if [ -d "$WHEELS_DIR" ] && [ -z "$(ls -A "$WHEELS_DIR")" ]; then - build - fi - - ${PIP} install --no-cache-dir virtualenv - virtualenv $INSTALL_DIR/venv - $INSTALL_DIR/venv/bin/pip install --no-cache-dir coverage - $INSTALL_DIR/venv/bin/pip install --no-cache-dir --no-build-isolation $WHEELS_DIR/*.whl || true - fi - -} - -extra() { - local mode="$1" - local AUTOMODEL_REPO=${AUTOMODEL_REPO:-$(cat "$CURR/requirements/manifest.json" | jq -r '."vcs-dependencies"."nemo_automodel".repo')} - local AUTOMODEL_TAG=${AUTOMODEL_TAG:-$(cat "$CURR/requirements/manifest.json" | jq -r '."vcs-dependencies"."nemo_automodel".ref')} - DEPS=( - "llama-index==0.10.43" # incompatible with nvidia-pytriton - "nemo_run" - "nvidia-modelopt==0.37.0" # We want a specific version of nvidia-modelopt - "nemo_automodel @ git+${AUTOMODEL_REPO}@${AUTOMODEL_TAG}" # speechlm2 runtime dep; pinned via manifest.json (kept out of wheel metadata so PyPI publish accepts the wheel) - ) - if [[ "${NVIDIA_PYTORCH_VERSION}" != "" ]]; then - DEPS+=( - "git+https://github.com/NVIDIA/nvidia-resiliency-ext.git@b6eb61dbf9fe272b1a943b1b0d9efdde99df0737 ; platform_machine == 'x86_64'" # Compiling NvRX requires CUDA - ) - fi - - if [[ "$mode" == "install" ]]; then - pip install --force-reinstall --no-deps --no-cache-dir "${DEPS[@]}" - pip install --no-cache-dir "${DEPS[@]}" - # needs no-deps to avoid installing triton on top of pytorch-triton. - pip install --no-deps --no-cache-dir "liger-kernel==0.5.8; (platform_machine == 'x86_64' and platform_system != 'Darwin')" - pip install --no-deps "cut-cross-entropy @ git+https://github.com/apple/ml-cross-entropy.git@87a86aba72cfd2f0d8abecaf81c13c4528ea07d8; (platform_machine == 'x86_64' and platform_system != 'Darwin')" - fi -} - -echo 'Uninstalling stuff' -# Some of these packages are uninstalled for legacy purposes -${PIP} uninstall -y nemo_toolkit sacrebleu nemo_asr nemo_nlp nemo_tts - -echo 'Upgrading tools' -${PIP} install -U --no-cache-dir "setuptools==76.0.0" pybind11 wheel ${PIP} - -if [ "${NVIDIA_PYTORCH_VERSION}" != "" ]; then - echo "Installing NeMo in NVIDIA PyTorch container: ${NVIDIA_PYTORCH_VERSION}" - echo "Will not install numba" - -else - if [ "${CONDA_PREFIX}" != "" ]; then - echo 'Installing numba' - conda install -y -c conda-forge numba - else - pip install --no-cache-dir --no-deps torch cython - fi -fi - -echo 'Installing nemo dependencies' -cd $CURR - -if [[ "$INSTALL_OPTION" == "dev" ]]; then - echo "Running in dev mode" - ${PIP} install --editable ".[all]" - -else - # -------------------------- - # Argument Parsing & Validation - # -------------------------- - - # Parse command-line arguments - while [[ $# -gt 0 ]]; do - case "$1" in - --library) - LIBRARY_ARG="$2" - shift 2 - ;; - --mode) - MODE="$2" - shift 2 - ;; - *) - echo "Unknown option: $1" - exit 1 - ;; - esac - done - - # Validate required arguments - if [[ -z "$LIBRARY_ARG" ]]; then - echo "Error: --library argument is required" - exit 1 - fi - - if [[ -z "$MODE" ]]; then - echo "Error: --mode argument is required" - exit 1 - fi - - # Validate mode - if [[ "$MODE" != "build" && "$MODE" != "install" ]]; then - echo "Error: Invalid mode. Must be 'build' or 'install'" - exit 1 - fi - - # Process library argument - declare -a LIBRARIES - if [[ "$LIBRARY_ARG" == "all" ]]; then - LIBRARIES=("${ALL_LIBRARIES[@]}") - else - IFS=',' read -ra TEMP_ARRAY <<<"$LIBRARY_ARG" - for lib in "${TEMP_ARRAY[@]}"; do - trimmed_lib=$(echo "$lib" | xargs) - if [[ -n "$trimmed_lib" ]]; then - LIBRARIES+=("$trimmed_lib") - fi - done - fi - - # Validate libraries array - if [[ ${#LIBRARIES[@]} -eq 0 ]]; then - echo "Error: No valid libraries specified" - exit 1 - fi - - # Validate each library is supported - for lib in "${LIBRARIES[@]}"; do - # "trt" is a valid option but not in ALL_LIBRARIES - # It does not get installed at the same time as the rest - if [[ "$lib" == "trt" ]]; then - continue - fi - - if [[ ! " ${ALL_LIBRARIES[@]} " =~ " ${lib} " ]]; then - echo "Error: Unsupported library '$lib'" - exit 1 - fi - done - - # -------------------------- - # Execution Logic - # -------------------------- - - # Run operations for each library - for library in "${LIBRARIES[@]}"; do - echo "Processing $library ($MODE)..." - "$library" "$MODE" - - # Check if function succeeded - if [[ $? -ne 0 ]]; then - echo "Error: Operation failed for $library" - exit 1 - fi - done - - echo "All operations completed successfully" - exit 0 - -fi - -echo 'All done!' diff --git a/docs/README.md b/docs/README.md index 6a7e282249dd..cdd2a6870ca7 100644 --- a/docs/README.md +++ b/docs/README.md @@ -7,13 +7,13 @@ 1. Install the documentation dependencies: ```console - $ python3 -m pip install -r requirements/requirements_docs.txt + $ uv sync --group docs ``` 1. Build the documentation: ```console - $ make -C docs html + $ uv run make -C docs html ``` ## Checking for Broken Links diff --git a/docs/update_docs_docker.sh b/docs/update_docs_docker.sh index 653894630a3c..0741ee066e18 100755 --- a/docs/update_docs_docker.sh +++ b/docs/update_docs_docker.sh @@ -1,5 +1,5 @@ cd ../ docker run --rm -v $PWD:/workspace python:3.10 /bin/bash -c "cd /workspace && \ -pip install -r requirements/requirements_docs.txt && cd docs/ && rm -rf build && make clean && make html && make html" +pip install uv==0.11.14 && uv sync --locked --group docs && uv run make -C docs clean html && uv run make -C docs html" echo "To start web server just run in docs directory:" echo "python3 -m http.server 8000 --directory ./build/html/" diff --git a/nemo/collections/asr/data/audio_to_ctm_dataset.py b/nemo/collections/asr/data/audio_to_ctm_dataset.py index c2b8dffdedc6..e759816bb150 100644 --- a/nemo/collections/asr/data/audio_to_ctm_dataset.py +++ b/nemo/collections/asr/data/audio_to_ctm_dataset.py @@ -16,11 +16,14 @@ import os from dataclasses import dataclass from pathlib import Path -from typing import Any, List, Tuple +from typing import TYPE_CHECKING, Any, List, Tuple from nemo.collections.asr.data.audio_to_text_dataset import ASRPredictionWriter from nemo.utils import logging +if TYPE_CHECKING: + from lightning.pytorch import LightningModule + @dataclass class FrameCtmUnit: diff --git a/nemo/collections/asr/data/audio_to_label_dataset.py b/nemo/collections/asr/data/audio_to_label_dataset.py index c70843461bb1..06d9b0849f86 100644 --- a/nemo/collections/asr/data/audio_to_label_dataset.py +++ b/nemo/collections/asr/data/audio_to_label_dataset.py @@ -95,7 +95,7 @@ def get_tarred_classification_label_dataset( if bucketing_weights: for idx, weight in enumerate(bucketing_weights): if not isinstance(weight, int) or weight <= 0: - raise ValueError(f"bucket weights must be positive integers") + raise ValueError("bucket weights must be positive integers") if len(manifest_filepaths) != len(tarred_audio_filepaths): raise ValueError( @@ -197,7 +197,7 @@ def get_tarred_speech_label_dataset( if bucketing_weights: for idx, weight in enumerate(bucketing_weights): if not isinstance(weight, int) or weight <= 0: - raise ValueError(f"bucket weights must be positive integers") + raise ValueError("bucket weights must be positive integers") if len(manifest_filepaths) != len(tarred_audio_filepaths): raise ValueError( @@ -276,7 +276,7 @@ def get_tarred_audio_multi_label_dataset( if bucketing_weights: for idx, weight in enumerate(bucketing_weights): if not isinstance(weight, int) or weight <= 0: - raise ValueError(f"bucket weights must be positive integers") + raise ValueError("bucket weights must be positive integers") if len(manifest_filepaths) != len(tarred_audio_filepaths): raise ValueError( diff --git a/nemo/collections/asr/data/feature_to_label.py b/nemo/collections/asr/data/feature_to_label.py index b635957a7b23..2997b81c86dc 100644 --- a/nemo/collections/asr/data/feature_to_label.py +++ b/nemo/collections/asr/data/feature_to_label.py @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -from typing import Dict, List, Optional +from typing import TYPE_CHECKING, Dict, List, Optional import torch @@ -21,6 +21,9 @@ from nemo.core.neural_types import AcousticEncodedRepresentation, LabelsType, LengthsType, NeuralType from nemo.utils import logging +if TYPE_CHECKING: + from nemo.collections.asr.parts.preprocessing.perturb import AudioAugmentor + def _feature_collate_fn(batch): """collate batch of feat sig, feat len, labels, labels len, assuming all features have the same shape. @@ -307,7 +310,7 @@ def __init__( *, manifest_filepath: str, labels: List[str] = None, - augmentor: 'nemo.collections.asr.parts.perturb.AudioAugmentor' = None, + augmentor: 'AudioAugmentor' = None, window_length_in_sec: float = 0.63, shift_length_in_sec: float = 0.01, is_regression_task: bool = False, @@ -420,7 +423,7 @@ def __init__( *, manifest_filepath: str, labels: List[str] = None, - augmentor: 'nemo.collections.asr.parts.perturb.AudioAugmentor' = None, + augmentor: 'AudioAugmentor' = None, delimiter: Optional[str] = None, is_regression_task: bool = False, cal_labels_occurrence: Optional[bool] = False, diff --git a/nemo/collections/asr/data/feature_to_label_dataset.py b/nemo/collections/asr/data/feature_to_label_dataset.py index 66ad047aac90..bd8746dcc5a9 100644 --- a/nemo/collections/asr/data/feature_to_label_dataset.py +++ b/nemo/collections/asr/data/feature_to_label_dataset.py @@ -11,7 +11,7 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -from typing import Optional +from typing import Any, Optional from nemo.collections.asr.data import feature_to_label @@ -35,9 +35,7 @@ def get_feature_seq_speakerlabel_dataset( return dataset -def get_feature_label_dataset( - config: dict, augmentor: Optional['FeatureAugmentor'] = None -) -> feature_to_label.FeatureToLabelDataset: +def get_feature_label_dataset(config: dict, augmentor: Optional[Any] = None) -> feature_to_label.FeatureToLabelDataset: dataset = feature_to_label.FeatureToLabelDataset( manifest_filepath=config['manifest_filepath'], labels=config['labels'], @@ -54,7 +52,7 @@ def get_feature_label_dataset( def get_feature_multi_label_dataset( - config: dict, augmentor: Optional['FeatureAugmentor'] = None + config: dict, augmentor: Optional[Any] = None ) -> feature_to_label.FeatureToMultiLabelDataset: dataset = feature_to_label.FeatureToMultiLabelDataset( manifest_filepath=config['manifest_filepath'], diff --git a/nemo/collections/asr/losses/ctc.py b/nemo/collections/asr/losses/ctc.py index d6373941408a..f0e1d596ca1b 100644 --- a/nemo/collections/asr/losses/ctc.py +++ b/nemo/collections/asr/losses/ctc.py @@ -13,7 +13,6 @@ # See the License for the specific language governing permissions and # limitations under the License. -import torch from torch import nn from nemo.core.classes import Serialization, Typing, typecheck diff --git a/nemo/collections/asr/modules/flashlight_decoder.py b/nemo/collections/asr/modules/flashlight_decoder.py index 419f7fe803e1..b417da355047 100644 --- a/nemo/collections/asr/modules/flashlight_decoder.py +++ b/nemo/collections/asr/modules/flashlight_decoder.py @@ -14,14 +14,13 @@ import itertools import math -from typing import Iterable, List, Optional, Tuple, Union +from typing import List, Optional, Union import numpy as np import torch from nemo.collections.common.tokenizers.tokenizer_spec import TokenizerSpec -from nemo.core.classes import NeuralModule, typecheck -from nemo.core.neural_types import LengthsType, LogprobsType, NeuralType, PredictionsType +from nemo.core.classes import NeuralModule class _TokensWrapper: @@ -111,7 +110,6 @@ def __init__( try: from flashlight.lib.text.decoder import ( - LM, CriterionType, KenLM, LexiconDecoder, diff --git a/nemo/collections/asr/parts/submodules/stateless_net.py b/nemo/collections/asr/parts/submodules/stateless_net.py index 8d5345f5dfc4..045a31e28363 100644 --- a/nemo/collections/asr/parts/submodules/stateless_net.py +++ b/nemo/collections/asr/parts/submodules/stateless_net.py @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -from typing import Any, Dict, List, Optional, Tuple, Union +from typing import List, Optional import torch diff --git a/nemo/collections/asr/parts/submodules/transducer_decoding/label_looping_base.py b/nemo/collections/asr/parts/submodules/transducer_decoding/label_looping_base.py index 30a4b97366cd..6c649918daa3 100644 --- a/nemo/collections/asr/parts/submodules/transducer_decoding/label_looping_base.py +++ b/nemo/collections/asr/parts/submodules/transducer_decoding/label_looping_base.py @@ -140,6 +140,17 @@ def disable_cuda_graphs(self) -> bool: self.reset_cuda_graphs_state() return True + def _fallback_to_no_while_loop_cuda_graphs(self, error: Exception): + """Fallback when full CUDA graph compilation fails.""" + if not self.cuda_graphs_allow_fallback: + raise RuntimeError("Full CUDA graph decoding failed. Mode is forced, raising exception") from error + logging.warning( + f"Full CUDA graph compilation failed: {error}. " + "Falling back to native PyTorch CUDA graphs. Decoding will be slower." + ) + self.cuda_graphs_mode = self.CudaGraphsMode.NO_WHILE_LOOPS + self._partial_graphs_compile() + # fusion models-related methods @property def per_stream_biasing_enabled(self): diff --git a/nemo/collections/asr/parts/submodules/transducer_decoding/rnnt_label_looping.py b/nemo/collections/asr/parts/submodules/transducer_decoding/rnnt_label_looping.py index a732f45e2721..16f4995957b5 100644 --- a/nemo/collections/asr/parts/submodules/transducer_decoding/rnnt_label_looping.py +++ b/nemo/collections/asr/parts/submodules/transducer_decoding/rnnt_label_looping.py @@ -30,7 +30,7 @@ ) from nemo.collections.asr.parts.utils import rnnt_utils from nemo.collections.asr.parts.utils.asr_confidence_utils import ConfidenceMethodMixin -from nemo.core.utils.cuda_python_utils import NeMoCUDAPythonException, cu_call, run_nvrtc, with_conditional_node +from nemo.core.utils.cuda_python_utils import CUDA_GRAPH_COMPILE_ERROR_TYPES, cu_call, run_nvrtc, with_conditional_node from nemo.core.utils.optional_libs import CUDA_PYTHON_AVAILABLE, cuda_python_required from nemo.utils import logging @@ -874,15 +874,8 @@ def _graph_reinitialize( if self.cuda_graphs_mode is self.CudaGraphsMode.FULL_GRAPH: try: self._full_graph_compile() - except NeMoCUDAPythonException as e: - if not self.cuda_graphs_allow_fallback: - raise RuntimeError("Full CUDA graph decoding failed. Mode is forced, raising exception") from e - logging.warning( - f"Full CUDA graph compilation failed: {e}. " - "Falling back to native PyTorch CUDA graphs. Decoding will be slower." - ) - self.cuda_graphs_mode = self.CudaGraphsMode.NO_WHILE_LOOPS - self._partial_graphs_compile() + except CUDA_GRAPH_COMPILE_ERROR_TYPES as e: + self._fallback_to_no_while_loop_cuda_graphs(e) elif self.cuda_graphs_mode is self.CudaGraphsMode.NO_WHILE_LOOPS: self._partial_graphs_compile() elif self.cuda_graphs_mode is self.CudaGraphsMode.NO_GRAPHS: diff --git a/nemo/collections/asr/parts/submodules/transducer_decoding/tdt_label_looping.py b/nemo/collections/asr/parts/submodules/transducer_decoding/tdt_label_looping.py index 52aa71e98f3e..d9f4a3adce85 100644 --- a/nemo/collections/asr/parts/submodules/transducer_decoding/tdt_label_looping.py +++ b/nemo/collections/asr/parts/submodules/transducer_decoding/tdt_label_looping.py @@ -30,7 +30,7 @@ ) from nemo.collections.asr.parts.utils import rnnt_utils from nemo.collections.asr.parts.utils.asr_confidence_utils import ConfidenceMethodMixin -from nemo.core.utils.cuda_python_utils import NeMoCUDAPythonException, cu_call, run_nvrtc, with_conditional_node +from nemo.core.utils.cuda_python_utils import CUDA_GRAPH_COMPILE_ERROR_TYPES, cu_call, run_nvrtc, with_conditional_node from nemo.core.utils.optional_libs import CUDA_PYTHON_AVAILABLE, cuda_python_required from nemo.utils import logging @@ -947,15 +947,8 @@ def _graph_reinitialize( if self.cuda_graphs_mode is self.CudaGraphsMode.FULL_GRAPH: try: self._full_graph_compile() - except NeMoCUDAPythonException as e: - if not self.cuda_graphs_allow_fallback: - raise RuntimeError("Full CUDA graph decoding failed. Mode is forced, raising exception") from e - logging.warning( - f"Full CUDA graph compilation failed: {e}. " - "Falling back to native PyTorch CUDA graphs. Decoding will be slower." - ) - self.cuda_graphs_mode = self.CudaGraphsMode.NO_WHILE_LOOPS - self._partial_graphs_compile() + except CUDA_GRAPH_COMPILE_ERROR_TYPES as e: + self._fallback_to_no_while_loop_cuda_graphs(e) elif self.cuda_graphs_mode is self.CudaGraphsMode.NO_WHILE_LOOPS: self._partial_graphs_compile() elif self.cuda_graphs_mode is self.CudaGraphsMode.NO_GRAPHS: diff --git a/nemo/collections/asr/parts/utils/online_clustering.py b/nemo/collections/asr/parts/utils/online_clustering.py index d61e63c6e9a6..53278b92d94f 100644 --- a/nemo/collections/asr/parts/utils/online_clustering.py +++ b/nemo/collections/asr/parts/utils/online_clustering.py @@ -36,12 +36,9 @@ from nemo.collections.asr.parts.utils.offline_clustering import ( NMESC, - SpeakerClustering, SpectralClustering, - get_scale_interpolated_embs, getAffinityGraphMat, getCosAffinityMatrix, - split_input_data, ) from nemo.collections.asr.parts.utils.optimization_utils import linear_sum_assignment @@ -689,7 +686,7 @@ def onlineNMEanalysis(self, mat_in: torch.Tensor, frame_index: int) -> Tuple[int p_hat_int_list: List[int] = [int(p) for p in self.p_value_hist] p_hat_value = torch.mode(torch.tensor(p_hat_int_list))[0].item() output = nmesc.getEigRatio(p_hat_value) - g_p, est_num_of_spk = output[0], output[1].int() + est_num_of_spk = output[1].int() return est_num_of_spk, p_hat_value def speaker_counter_buffer(self, est_num_of_spk: int) -> torch.Tensor: diff --git a/nemo/collections/common/losses/multi_similarity_loss.py b/nemo/collections/common/losses/multi_similarity_loss.py index 8bea184fdc64..c699ba940c0e 100644 --- a/nemo/collections/common/losses/multi_similarity_loss.py +++ b/nemo/collections/common/losses/multi_similarity_loss.py @@ -25,6 +25,8 @@ class MultiSimilarityLoss(Loss): + """Multi-similarity metric learning loss.""" + @property def input_types(self): """Returns definitions of module input ports.""" @@ -51,6 +53,7 @@ def __init__( @typecheck() def forward(self, logits, labels): + """Compute the multi-similarity loss for the input embeddings and labels.""" cos_sim = torch.matmul(logits, torch.t(logits)) losses = [] diff --git a/nemo/collections/common/metrics/punct_er.py b/nemo/collections/common/metrics/punct_er.py index 6bff496d594a..4aa486c0a2d5 100644 --- a/nemo/collections/common/metrics/punct_er.py +++ b/nemo/collections/common/metrics/punct_er.py @@ -136,7 +136,7 @@ class OccurancePunctuationErrorRate: def __init__(self, punctuation_marks: list[str], punctuation_mask: str = "[PUNCT]") -> None: - assert len(punctuation_marks) != 0, f"List of punctuation marks is empty" + assert len(punctuation_marks) != 0, "List of punctuation marks is empty" self.punctuation_marks = punctuation_marks self.punctuation_mask = punctuation_mask @@ -144,6 +144,7 @@ def __init__(self, punctuation_marks: list[str], punctuation_mask: str = "[PUNCT self.operations = ["Correct", "Deletions", "Insertions", "Substitutions"] def compute_rates(self, operation_amounts: dict, substitution_amounts: dict): + """Compute punctuation operation and substitution rates.""" operation_rates = {pm: {operation: 0 for operation in self.operations} for pm in self.punctuation_marks} substitution_rates = {pm: {pm: 0 for pm in self.punctuation_marks} for pm in self.punctuation_marks} @@ -208,6 +209,7 @@ def compute_rates(self, operation_amounts: dict, substitution_amounts: dict): return rates def compute_operation_amounts(self, reference: str, hypothesis: str): + """Compute punctuation operation counts between a reference and hypothesis.""" operation_amounts = {pm: {operation: 0 for operation in self.operations} for pm in self.punctuation_marks} substitution_amounts = {pm: {pm: 0 for pm in self.punctuation_marks} for pm in self.punctuation_marks} @@ -315,6 +317,7 @@ def mask_punct_tokens(tokens: list[str], punctuation_marks: list[str], punctuati return operation_amounts, substitution_amounts def compute(self, reference: str, hypothesis: str): + """Compute punctuation operation counts and rates for one reference-hypothesis pair.""" operation_amounts, substitution_amounts = self.compute_operation_amounts(reference, hypothesis) punctuation_rates = self.compute_rates(operation_amounts, substitution_amounts) return operation_amounts, substitution_amounts, punctuation_rates @@ -408,6 +411,8 @@ def __init__( self.punct_er = None def compute(self): + """Compute aggregate punctuation error rates for the dataset.""" + def sum_amounts(amounts_dicts: list[dict]): amounts = {key: {_key: 0 for _key in amounts_dicts[0][key]} for key in amounts_dicts[0].keys()} @@ -440,6 +445,7 @@ def sum_amounts(amounts_dicts: list[dict]): self.punct_er = overall_rates.punct_er def reset(self): + """Reset accumulated punctuation error statistics.""" self.operation_amounts = [] self.substitution_amounts = [] self.rates = [] @@ -453,7 +459,8 @@ def reset(self): self.punct_er = None def print(self): - logging.info(f'Dataset PER ' + str(round(100 * self.punct_er, 2)) + '%') + """Log aggregate punctuation error rates.""" + logging.info('Dataset PER ' + str(round(100 * self.punct_er, 2)) + '%') if HAVE_TABLUATE_AND_PANDAS: rates_by_pm_df = pd.DataFrame(self.operation_rates) * 100 diff --git a/nemo/collections/common/parts/adapter_modules.py b/nemo/collections/common/parts/adapter_modules.py index 0daa8ee083e7..9e87189335ea 100644 --- a/nemo/collections/common/parts/adapter_modules.py +++ b/nemo/collections/common/parts/adapter_modules.py @@ -136,6 +136,7 @@ def __init__( self.reset_parameters() def reset_parameters(self): + """Initialize adapter projection parameters.""" # Final layer initializations must be 0 if self.norm_position == 'pre': self.module[-1].weight.data *= 0 @@ -145,6 +146,7 @@ def reset_parameters(self): self.module[-1].bias.data *= 0 def forward(self, x): + """Apply the adapter module to the input tensor.""" x = self.module(x) # Add dropout if available @@ -156,6 +158,8 @@ def forward(self, x): @dataclass class LinearAdapterConfig: + """Configuration for a linear adapter module.""" + in_features: int dim: int activation: str = 'swish' diff --git a/nemo/collections/common/parts/mlm_scorer.py b/nemo/collections/common/parts/mlm_scorer.py index a6d8547affe8..119272d9c43a 100644 --- a/nemo/collections/common/parts/mlm_scorer.py +++ b/nemo/collections/common/parts/mlm_scorer.py @@ -24,6 +24,8 @@ class MLMScorer: + """Masked language model scorer.""" + def __init__(self, model_name: str, device: str = 'cpu'): """ Creates MLM scorer from https://arxiv.org/abs/1910.14659. diff --git a/nemo/collections/common/parts/preprocessing/parsers.py b/nemo/collections/common/parts/preprocessing/parsers.py index 54be78dc4ffa..6a1e51eb2315 100644 --- a/nemo/collections/common/parts/preprocessing/parsers.py +++ b/nemo/collections/common/parts/preprocessing/parsers.py @@ -106,6 +106,7 @@ def _tokenize(self, text: str) -> List[int]: return tokens def decode(self, str_input): + """Decode token ids into labels.""" r_map = {} for k, v in self._labels_map.items(): r_map[v] = k diff --git a/nemo/collections/speechlm2/data/datamodule.py b/nemo/collections/speechlm2/data/datamodule.py index 0e95542e4ede..d481b6781948 100644 --- a/nemo/collections/speechlm2/data/datamodule.py +++ b/nemo/collections/speechlm2/data/datamodule.py @@ -157,9 +157,14 @@ def _get_dp_rank(self): elif ( "dp_shard" in dm.mesh_dim_names and "dp_replicate" in dm.mesh_dim_names ): # AutomodelParallelStrategy - dp_rank = ( - dm["dp_replicate"].get_local_rank() * dm["dp_shard"].size() + dm["dp_shard"].get_local_rank() - ) + try: + dp_rank = dm["dp"].get_local_rank() + except (KeyError, RuntimeError, ValueError): + # Compatibility for older Automodel/PyTorch meshes without a flattened "dp" submesh. + dp_rank = ( + dm["dp_replicate"].get_local_rank() * dm["dp_shard"].size() + + dm["dp_shard"].get_local_rank() + ) return dp_rank else: return torch.distributed.get_rank() # plain ol' DDP @@ -178,7 +183,11 @@ def _get_world_size(self): elif ( "dp_shard" in dm.mesh_dim_names and "dp_replicate" in dm.mesh_dim_names ): # AutomodelParallelStrategy - dp_size = dm["dp_replicate", "dp_shard"].size() + try: + dp_size = dm["dp"].size() + except (KeyError, RuntimeError, ValueError): + # Compatibility for older Automodel/PyTorch meshes without a flattened "dp" submesh. + dp_size = dm["dp_replicate", "dp_shard"].size() return dp_size else: # plain ol' DDP return torch.distributed.get_world_size() diff --git a/nemo/collections/tts/losses/hifigan_losses.py b/nemo/collections/tts/losses/hifigan_losses.py index 559860ddd7a5..1ad6bccd8b2a 100644 --- a/nemo/collections/tts/losses/hifigan_losses.py +++ b/nemo/collections/tts/losses/hifigan_losses.py @@ -125,8 +125,8 @@ def forward(self, disc_outputs): loss = 0 gen_losses = [] for dg in disc_outputs: - l = torch.mean((1 - dg) ** 2) - gen_losses.append(l) - loss += l + layer_loss = torch.mean((1 - dg) ** 2) + gen_losses.append(layer_loss) + loss += layer_loss return loss, gen_losses diff --git a/nemo/collections/tts/modules/hifigan_modules.py b/nemo/collections/tts/modules/hifigan_modules.py index 5c48c4ca77db..f363272b4070 100644 --- a/nemo/collections/tts/modules/hifigan_modules.py +++ b/nemo/collections/tts/modules/hifigan_modules.py @@ -129,10 +129,10 @@ def forward(self, x): return x def remove_weight_norm(self): - for l in self.convs1: - remove_weight_norm(l) - for l in self.convs2: - remove_weight_norm(l) + for layer in self.convs1: + remove_weight_norm(layer) + for layer in self.convs2: + remove_weight_norm(layer) class ResBlock2(torch.nn.Module): @@ -175,8 +175,8 @@ def forward(self, x): return x def remove_weight_norm(self): - for l in self.convs: - remove_weight_norm(l) + for layer in self.convs: + remove_weight_norm(layer) class Generator(NeuralModule): @@ -258,8 +258,8 @@ def forward(self, x): def remove_weight_norm(self): print('Removing weight norm...') - for l in self.ups: - remove_weight_norm(l) + for layer in self.ups: + remove_weight_norm(layer) for group in self.resblocks: for block in group: block.remove_weight_norm() @@ -309,8 +309,8 @@ def forward(self, x): t = t + n_pad x = x.view(b, c, t // self.period, self.period) - for l in self.convs: - x = l(x) + for layer in self.convs: + x = layer(x) x = F.leaky_relu(x, LRELU_SLOPE) fmap.append(x) x = self.conv_post(x) @@ -400,8 +400,8 @@ def output_types(self): @typecheck() def forward(self, x): fmap = [] - for l in self.convs: - x = l(x) + for layer in self.convs: + x = layer(x) x = F.leaky_relu(x, LRELU_SLOPE) fmap.append(x) x = self.conv_post(x) diff --git a/nemo/core/neural_types/axes.py b/nemo/core/neural_types/axes.py index 0d9c3eef3f34..dbcd9714c8c3 100644 --- a/nemo/core/neural_types/axes.py +++ b/nemo/core/neural_types/axes.py @@ -52,6 +52,7 @@ def __str__(self): return str(self.name).lower() def t_with_string(self, text): + """Check whether a dynamic time-axis label matches this axis kind.""" # it checks if text is "t_" return text.startswith("t_") and text.endswith("_") and text[2:-1] == self.__str__() diff --git a/nemo/core/neural_types/neural_type.py b/nemo/core/neural_types/neural_type.py index 3d234f2dca5a..f717d71eb441 100644 --- a/nemo/core/neural_types/neural_type.py +++ b/nemo/core/neural_types/neural_type.py @@ -55,7 +55,8 @@ def __init__(self, axes: Optional[Any] = None, elements_type: Optional[Any] = No """ Args: axes: a tuple of AxisTypes objects representing the semantics of what varying each axis means - elements_type: None or ElementType; we need Any annotation here to avoid problems with TorchScript (it is checked in _init_internal) + elements_type: None or ElementType; we need Any annotation here to avoid problems with TorchScript + (it is checked in _init_internal) optional: If input to the port of this type can be optional (False by default). """ if not torch.jit.is_scripting(): diff --git a/nemo/core/optim/adafactor.py b/nemo/core/optim/adafactor.py index 925854df338f..e5276a6dd0e0 100644 --- a/nemo/core/optim/adafactor.py +++ b/nemo/core/optim/adafactor.py @@ -95,10 +95,12 @@ def __init__( @property def supports_memory_efficient_fp16(self): + """Whether this optimizer supports memory-efficient fp16 training.""" return True @property def supports_flat_params(self): + """Whether this optimizer supports flattened parameters.""" return False def _get_lr(self, param_group, param_state): diff --git a/nemo/core/utils/cuda_python_utils.py b/nemo/core/utils/cuda_python_utils.py index f67ac8b478d4..1697d4815212 100644 --- a/nemo/core/utils/cuda_python_utils.py +++ b/nemo/core/utils/cuda_python_utils.py @@ -36,6 +36,11 @@ class NeMoCUDAPythonException(NeMoBaseException): pass +CUDA_GRAPH_COMPILE_ERROR_TYPES = (NeMoCUDAPythonException,) +if hasattr(torch, "AcceleratorError"): + CUDA_GRAPH_COMPILE_ERROR_TYPES += (torch.AcceleratorError,) + + def check_cuda_python_cuda_graphs_conditional_nodes_supported(): """Check if CUDA and CUDA-Python are available with CUDA Graphs with conditional nodes support""" # for CPU-only environment we need to raise an exception, otherwise cuda-python library will fail diff --git a/nemo/core/utils/process_launcher/launcher.py b/nemo/core/utils/process_launcher/launcher.py index f1072af14278..4a4d7f141c17 100644 --- a/nemo/core/utils/process_launcher/launcher.py +++ b/nemo/core/utils/process_launcher/launcher.py @@ -38,6 +38,7 @@ # monkey-patch hydra func def is_in_toplevel_plugins_module(*args, **kwargs) -> bool: + """Treat NeMo launcher plugins as top-level Hydra plugins.""" return True @@ -47,6 +48,8 @@ def is_in_toplevel_plugins_module(*args, **kwargs) -> bool: @dataclass class ProcessLauncherConfig: + """Configuration for the NeMo process launcher.""" + _target_: str = "nemo.core.utils.process_launcher.launcher.ProcessLauncher" num_gpus: int = -1 jobs_per_gpu: int = 1 @@ -342,6 +345,8 @@ def launch( class ProcessLauncher(Launcher): + """Hydra launcher that multiplexes jobs across local GPU processes.""" + def __init__(self, **kwargs: Any) -> None: """Process Launcher Based on the JoblibLauncher, but uses processes to scatter jobs in a multiplexed manner across @@ -360,11 +365,13 @@ def setup( task_function: TaskFunction, config: DictConfig, ) -> None: + """Store Hydra launch context and task function.""" self.config = config self.task_function = task_function self.hydra_context = hydra_context def launch(self, job_overrides: Sequence[Sequence[str]], initial_job_idx: int) -> Sequence[JobReturn]: + """Launch jobs with the configured process launcher.""" return launch(launcher=self, job_overrides=job_overrides, initial_job_idx=initial_job_idx) diff --git a/nemo/utils/debug_hook.py b/nemo/utils/debug_hook.py index 5cc393f91735..30470d65346e 100644 --- a/nemo/utils/debug_hook.py +++ b/nemo/utils/debug_hook.py @@ -19,9 +19,11 @@ def get_forward_hook(name, trainer, rank, logger, dump_to_file=False): """ - A forward hook to dump all of the module input and output norms. It is called at every time after forward() has computed an output. + A forward hook to dump all of the module input and output norms. + It is called every time after forward() has computed an output. Only float type input/output tensor norms are computed. - For more details about the forward hook, check https://pytorch.org/docs/stable/generated/torch.nn.modules.module.register_module_forward_hook.html + For more details about the forward hook, check + https://pytorch.org/docs/stable/generated/torch.nn.modules.module.register_module_forward_hook.html Args: name: tensor name @@ -76,9 +78,11 @@ def forward_hook(module, inputs, outputs): def get_backward_hook(name, trainer, rank, logger, dump_to_file=False): """ - A backward hook to dump all of the module input and output grad norms. The hook will be called every time the gradients with respect to module inputs are computed. + A backward hook to dump all of the module input and output grad norms. + The hook is called every time gradients with respect to module inputs are computed. Only float type input/output grad tensor norms are computed. - For more details about the backward hook, check https://pytorch.org/docs/stable/generated/torch.nn.modules.module.register_module_full_backward_hook.html + For more details about the backward hook, check + https://pytorch.org/docs/stable/generated/torch.nn.modules.module.register_module_full_backward_hook.html Args: name: tensor name @@ -133,8 +137,9 @@ def backward_hook(module, inputs, outputs): def get_tensor_hook(module, name, trainer, rank, logger, dump_to_file=False): """ - A tensor hook to dump all of the tensor weight norms and grad norms at the end of each of the backward steps. - For more details about the tensor hook, check https://pytorch.org/docs/stable/generated/torch.Tensor.register_hook.html + A tensor hook to dump tensor weight norms and grad norms at the end of each backward step. + For more details about the tensor hook, check + https://pytorch.org/docs/stable/generated/torch.Tensor.register_hook.html Args: module: the model module diff --git a/nemo/utils/exceptions.py b/nemo/utils/exceptions.py index 5eed8298bf7a..34691f4920ed 100644 --- a/nemo/utils/exceptions.py +++ b/nemo/utils/exceptions.py @@ -18,6 +18,8 @@ class NeMoBaseException(Exception): class LightningNotInstalledException(NeMoBaseException): + """Raised when optional Lightning dependencies are required but unavailable.""" + def __init__(self, obj): message = ( f" You are trying to use {obj} without installing all of pytorch_lightning, hydra, and " @@ -27,6 +29,8 @@ def __init__(self, obj): class CheckInstall: + """Placeholder that raises when optional Lightning dependencies are missing.""" + def __init__(self, *args, **kwargs): raise LightningNotInstalledException(self) diff --git a/nemo/utils/timers.py b/nemo/utils/timers.py index 7aed85ddd3e1..962464646c31 100644 --- a/nemo/utils/timers.py +++ b/nemo/utils/timers.py @@ -58,6 +58,7 @@ def __getitem__(self, k): @property def buffer_size(self): + """Return the number of recent timings retained per timer.""" return self._buffer_size @property @@ -129,6 +130,7 @@ def stop(self, name=""): self.timers[name] = timer_data def is_active(self, name=""): + """Return whether the named timer is currently active.""" timer_data = self.timers.get(name, {}) if "start" in timer_data: return True diff --git a/pyproject.toml b/pyproject.toml index 54ac5b8b2724..39fa6c8212e6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,11 +18,32 @@ build-backend = "setuptools.build_meta" [project] name = "nemo-toolkit" -dynamic = ["dependencies", "optional-dependencies", "version"] +dynamic = ["version"] description = "NeMo - a toolkit for Conversational AI" readme = "README.md" license = {file = "LICENSE"} requires-python = ">=3.10" +dependencies = [ + "fsspec>=2024.12.0", + "huggingface_hub>=0.24", + "numba ; platform_system == 'Darwin'", + "cuda-bindings ; platform_system != 'Darwin'", + # WAR for attempted use of nonexistent numpy.typing + "numexpr<2.14.0", + "numpy>=1.22", + "onnx>=1.7.0", + # Align with upstream PyTorch requirements + "python-dateutil", + "ruamel.yaml", + "scikit-learn", + "setuptools>=70.0.0", + "tensorboard", + "text-unidecode", + "torch>=2.6.0", + "tqdm>=4.41.0", + "wget", + "wrapt", +] authors = [{ name = "NVIDIA", email = "nemo-toolkit@nvidia.com" }] maintainers = [{ name = "NVIDIA", email = "nemo-toolkit@nvidia.com" }] keywords = [ @@ -60,6 +81,422 @@ classifiers = [ "Topic :: Utilities", ] +[project.optional-dependencies] +run = [ + "nemo_run", +] + +core = [ + "cloudpickle", + "fiddle", + "hydra-core>1.3,<=1.3.2", + "lightning>2.2.1,<=2.4.0", + "omegaconf<=2.3", + "peft<=0.18.0", + "torchmetrics>=0.11.0", + "transformers", + "wandb", + "webdataset>=0.2.86", + "nv_one_logger_core>=2.3.1", + "nv_one_logger_training_telemetry>=2.3.1", + "nv_one_logger_pytorch_lightning_integration>=2.3.1", + "aistore" +] + +lightning = [ + "cloudpickle", + "fiddle", + "hydra-core>1.3,<=1.3.2", + "lightning>2.2.1,<=2.4.0", + "omegaconf<=2.3", + "peft<=0.18.0", + "torchmetrics>=0.11.0", + "transformers", + "wandb", + "webdataset>=0.2.86", + "nv_one_logger_core>=2.3.1", + "nv_one_logger_training_telemetry>=2.3.1", + "nv_one_logger_pytorch_lightning_integration>=2.3.1", +] + +common-only = [ + "datasets>=3.2.0", + "einops", + "inflect", + "mediapy==1.1.6", + "pandas", + "sacremoses>=0.0.43", + "sentencepiece<1.0.0", +] + +asr-only = [ + "braceexpand", + "editdistance", + "einops", + "jiwer>=3.1.0,<4.0.0", + "kaldi-python-io", + "kaldialign", + "lhotse>=1.33.0", + "librosa>=0.10.1", + "marshmallow", + "optuna", + "packaging", + "pyannote.core", + "pyannote.metrics", + "pydub", + "pyloudnorm", + "resampy", + "ruamel.yaml", + "sacrebleu", + "scipy>=0.14", + "soundfile", + "sox<=1.5.0", + "whisper_normalizer", +] + +tts = [ + "attrdict", + "cdifflib==1.2.6", + "einops", + "janome", + "jieba", + "kornia", + "librosa", + "matplotlib", + "nemo_text_processing; 'arm' not in platform_machine and 'aarch' not in platform_machine and sys_platform != 'darwin'", + "nltk", + "pandas", + "pypinyin", + "pypinyin-dict", + "seaborn", + "pyopenjtalk", + "braceexpand", + "editdistance", + "jiwer>=3.1.0,<4.0.0", + "kaldi-python-io", + "kaldialign", + "lhotse>=1.33.0", + "librosa>=0.10.1", + "marshmallow", + "optuna", + "packaging", + "pyannote.core", + "pyannote.metrics", + "pydub", + "pyloudnorm", + "resampy", + "ruamel.yaml", + "sacrebleu", + "scipy>=0.14", + "soundfile", + "sox<=1.5.0", + "whisper_normalizer", + "datasets>=3.2.0", + "inflect", + "mediapy==1.1.6", + "sacremoses>=0.0.43", + "sentencepiece<1.0.0", + "cloudpickle", + "fiddle", + "hydra-core>1.3,<=1.3.2", + "lightning>2.2.1,<=2.4.0", + "omegaconf<=2.3", + "peft<=0.18.0", + "torchmetrics>=0.11.0", + "transformers", + "wandb", + "webdataset>=0.2.86", + "nv_one_logger_core>=2.3.1", + "nv_one_logger_training_telemetry>=2.3.1", + "nv_one_logger_pytorch_lightning_integration>=2.3.1", +] + +slu = [ + "jiwer>=2.0.0,<4.0.0", + "progress>=1.5", + "tabulate>=0.8.7", + "textdistance>=4.1.5", + "tqdm", + "braceexpand", + "editdistance", + "einops", + "jiwer>=3.1.0,<4.0.0", + "kaldi-python-io", + "kaldialign", + "lhotse>=1.33.0", + "librosa>=0.10.1", + "marshmallow", + "optuna", + "packaging", + "pyannote.core", + "pyannote.metrics", + "pydub", + "pyloudnorm", + "resampy", + "ruamel.yaml", + "sacrebleu", + "scipy>=0.14", + "soundfile", + "sox<=1.5.0", + "whisper_normalizer", + "datasets>=3.2.0", + "inflect", + "mediapy==1.1.6", + "pandas", + "sacremoses>=0.0.43", + "sentencepiece<1.0.0", + "cloudpickle", + "fiddle", + "hydra-core>1.3,<=1.3.2", + "lightning>2.2.1,<=2.4.0", + "omegaconf<=2.3", + "peft<=0.18.0", + "torchmetrics>=0.11.0", + "transformers", + "wandb", + "webdataset>=0.2.86", + "nv_one_logger_core>=2.3.1", + "nv_one_logger_training_telemetry>=2.3.1", + "nv_one_logger_pytorch_lightning_integration>=2.3.1", +] + +audio = [ + "einops", + "lhotse>=1.33.0", + "librosa>=0.10.0", + "matplotlib", + "pesq; (platform_machine != 'x86_64' or platform_system != 'Darwin')", + "pystoi", + "scipy>=0.14", + "soundfile", + "datasets>=3.2.0", + "inflect", + "mediapy==1.1.6", + "pandas", + "sacremoses>=0.0.43", + "sentencepiece<1.0.0", + "cloudpickle", + "fiddle", + "hydra-core>1.3,<=1.3.2", + "lightning>2.2.1,<=2.4.0", + "omegaconf<=2.3", + "peft<=0.18.0", + "torchmetrics>=0.11.0", + "transformers", + "wandb", + "webdataset>=0.2.86", + "nv_one_logger_core>=2.3.1", + "nv_one_logger_training_telemetry>=2.3.1", + "nv_one_logger_pytorch_lightning_integration>=2.3.1", +] + +speechlm2-only = [ + "nemo_automodel", + "flashoptim", +] + +all = [ + "nemo_run", + "cloudpickle", + "fiddle", + "hydra-core>1.3,<=1.3.2", + "lightning>2.2.1,<=2.4.0", + "omegaconf<=2.3", + "peft<=0.18.0", + "torchmetrics>=0.11.0", + "transformers", + "webdataset>=0.2.86", + "nv_one_logger_core>=2.3.1", + "nv_one_logger_training_telemetry>=2.3.1", + "nv_one_logger_pytorch_lightning_integration>=2.3.1", + "datasets>=3.2.0", + "einops", + "inflect", + "mediapy==1.1.6", + "pandas", + "sacremoses>=0.0.43", + "sentencepiece<1.0.0", + "braceexpand", + "editdistance", + "jiwer>=3.1.0,<4.0.0", + "kaldi-python-io", + "kaldialign", + "lhotse>=1.33.0", + "librosa>=0.10.1", + "marshmallow", + "optuna", + "packaging", + "pyannote.core", + "pyannote.metrics", + "pydub", + "pyloudnorm", + "resampy", + "sacrebleu", + "scipy>=0.14", + "soundfile", + "sox<=1.5.0", + "whisper_normalizer", + "attrdict", + "cdifflib==1.2.6", + "janome", + "jieba", + "kornia", + "librosa", + "matplotlib", + "nemo_text_processing; 'arm' not in platform_machine and 'aarch' not in platform_machine and sys_platform != 'darwin'", + "nltk", + "pypinyin", + "pypinyin-dict", + "seaborn", + "pyopenjtalk", + "jiwer>=2.0.0,<4.0.0", + "progress>=1.5", + "tabulate>=0.8.7", + "textdistance>=4.1.5", + "tqdm", + "librosa>=0.10.0", + "pesq; (platform_machine != 'x86_64' or platform_system != 'Darwin')", + "pystoi", + "nemo_automodel", + "flashoptim", +] + +cu12 = [ + "numba-cuda[cu12] ; platform_system != 'Darwin'", + "cuda-python>=12.6.0,<13 ; platform_system != 'Darwin'", +] + +cu13 = [ + "numba-cuda[cu13] ; platform_system != 'Darwin'", + "cuda-python>=13,<14 ; platform_system != 'Darwin'", +] + +common = [ + "datasets>=3.2.0", + "einops", + "inflect", + "mediapy==1.1.6", + "pandas", + "sacremoses>=0.0.43", + "sentencepiece<1.0.0", + "cloudpickle", + "fiddle", + "hydra-core>1.3,<=1.3.2", + "lightning>2.2.1,<=2.4.0", + "omegaconf<=2.3", + "peft<=0.18.0", + "torchmetrics>=0.11.0", + "transformers", + "wandb", + "webdataset>=0.2.86", + "nv_one_logger_core>=2.3.1", + "nv_one_logger_training_telemetry>=2.3.1", + "nv_one_logger_pytorch_lightning_integration>=2.3.1", +] + +asr = [ + "braceexpand", + "editdistance", + "einops", + "jiwer>=3.1.0,<4.0.0", + "kaldi-python-io", + "kaldialign", + "lhotse>=1.33.0", + "librosa>=0.10.1", + "marshmallow", + "optuna", + "packaging", + "pyannote.core", + "pyannote.metrics", + "pydub", + "pyloudnorm", + "resampy", + "ruamel.yaml", + "sacrebleu", + "scipy>=0.14", + "soundfile", + "sox<=1.5.0", + "whisper_normalizer", + "datasets>=3.2.0", + "inflect", + "mediapy==1.1.6", + "pandas", + "sacremoses>=0.0.43", + "sentencepiece<1.0.0", + "cloudpickle", + "fiddle", + "hydra-core>1.3,<=1.3.2", + "lightning>2.2.1,<=2.4.0", + "omegaconf<=2.3", + "peft<=0.18.0", + "torchmetrics>=0.11.0", + "transformers", + "wandb", + "webdataset>=0.2.86", + "nv_one_logger_core>=2.3.1", + "nv_one_logger_training_telemetry>=2.3.1", + "nv_one_logger_pytorch_lightning_integration>=2.3.1", +] + +speechlm2 = [ + "nemo_automodel", + "flashoptim", + "braceexpand", + "editdistance", + "einops", + "jiwer>=3.1.0,<4.0.0", + "kaldi-python-io", + "kaldialign", + "lhotse>=1.33.0", + "librosa>=0.10.1", + "marshmallow", + "optuna", + "packaging", + "pyannote.core", + "pyannote.metrics", + "pydub", + "pyloudnorm", + "resampy", + "ruamel.yaml", + "sacrebleu", + "scipy>=0.14", + "soundfile", + "sox<=1.5.0", + "whisper_normalizer", + "datasets>=3.2.0", + "inflect", + "mediapy==1.1.6", + "pandas", + "sacremoses>=0.0.43", + "sentencepiece<1.0.0", + "cloudpickle", + "fiddle", + "hydra-core>1.3,<=1.3.2", + "lightning>2.2.1,<=2.4.0", + "omegaconf<=2.3", + "peft<=0.18.0", + "torchmetrics>=0.11.0", + "transformers", + "wandb", + "webdataset>=0.2.86", + "nv_one_logger_core>=2.3.1", + "nv_one_logger_training_telemetry>=2.3.1", + "nv_one_logger_pytorch_lightning_integration>=2.3.1", + "attrdict", + "cdifflib==1.2.6", + "janome", + "jieba", + "kornia", + "librosa", + "matplotlib", + "nemo_text_processing; 'arm' not in platform_machine and 'aarch' not in platform_machine and sys_platform != 'darwin'", + "nltk", + "pypinyin", + "pypinyin-dict", + "seaborn", + "pyopenjtalk", +] + [tool.setuptools] py-modules = ["nemo"] @@ -139,6 +576,8 @@ markers = [ "pleasefixme: marks tests that are broken and need fixing", ] +[tool.setuptools.dynamic] +version = { attr = "nemo.package_info.__version__" } [tool.uv] conflicts = [ @@ -147,15 +586,19 @@ conflicts = [ { extra = "cu13" }, ], ] +override-dependencies = [ + "torch==2.12.0+cu132 ; sys_platform == 'linux'", +] # --- uv configuration --- # Match nemo_automodel's torch index sources so uv doesn't see conflicting # indexes when resolving the speechlm2 extra (which pulls nemo_automodel # from git as a source dependency — uv treats these as workspace members). [tool.uv.sources] +nemo_automodel = { git = "https://github.com/NVIDIA-NeMo/Automodel.git", rev = "9eccbb6102a260efd7cbdffa890fc57b94f94528" } torch = [ { index = "pytorch-cpu", marker = "sys_platform != 'linux' and sys_platform != 'darwin'" }, - { index = "pytorch-cu129", marker = "sys_platform == 'linux'" }, + { index = "pytorch-cu132", marker = "sys_platform == 'linux'" }, { index = "pypi", marker = "sys_platform == 'darwin'" }, ] @@ -170,19 +613,46 @@ url = "https://download.pytorch.org/whl/cpu" explicit = true [[tool.uv.index]] -name = "pytorch-cu129" -url = "https://download.pytorch.org/whl/cu129" +name = "pytorch-cu132" +url = "https://download.pytorch.org/whl/cu132" explicit = true [dependency-groups] +test = [ + "black~=24.3", + "click>=8.1", + "coverage", + "isort>5.1.0,<6.0.0", + "parameterized", + "pytest", + "pytest-httpserver", + "pytest-shard", + "pytest-mock", + "pytest-runner", + "ruamel.yaml", + "sphinx", + "sphinxcontrib-bibtex", + "wandb", + "wget", + "wrapt", +] + docs = [ + "boto3", + "Jinja2", + "latexcodec", "myst-parser>=4.0.1", + "numpy", "nvidia-sphinx-theme>=0.0.8", + "pydata-sphinx-theme", "sphinx>=8.1.3", "sphinx-autobuild>=2024.10.3", "sphinx-autodoc2>=0.5.0", + "sphinx-book-theme", "sphinx-copybutton>=0.5.2", - "sphinxcontrib-mermaid", "sphinxcontrib-bibtex", - "sphinxext-opengraph" + "sphinxcontrib-mermaid", + "sphinxext-opengraph", + "urllib3", + "wrapt", ] diff --git a/requirements/manifest.json b/requirements/manifest.json deleted file mode 100644 index 57644f18305d..000000000000 --- a/requirements/manifest.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "ngc-pytorch": "nvcr.io/nvidia/pytorch:25.11-py3", - "vcs-dependencies": { - "apex": { - "repo": "https://github.com/NVIDIA/Apex", - "ref": "810ffae374a2b9cb4b5c5e28eaeca7d7998fca0c" - }, - "transformer_engine": { - "repo": "https://github.com/NVIDIA/TransformerEngine", - "ref": "40c69e751a47ec87786283e125c5eb264101270f" - }, - "megatron-lm": { - "repo": "https://github.com/NVIDIA/Megatron-LM", - "ref": "bf1a5035f1f776b0bded8bffa0a36eeb573a7a8e" - }, - "trt-llm": { - "repo": "https://github.com/NVIDIA/TensorRT-LLM.git", - "ref": "7965842954628b0b5456a2f7d59786d3dcd41647" - }, - "nemo_automodel": { - "repo": "https://github.com/NVIDIA-NeMo/Automodel.git", - "ref": "9eccbb6102a260efd7cbdffa890fc57b94f94528" - } - }, - "pypi-dependencies": {} -} diff --git a/requirements/requirements.txt b/requirements/requirements.txt deleted file mode 100644 index 03cae8e44b93..000000000000 --- a/requirements/requirements.txt +++ /dev/null @@ -1,18 +0,0 @@ -fsspec>=2024.12.0 -huggingface_hub>=0.24 -numba ; platform_system == 'Darwin' -cuda-bindings ; platform_system != 'Darwin' -numexpr<2.14.0 # WAR for attempted use of nonexistent numpy.typing -numpy>=1.22 -onnx>=1.7.0 -# Align with upstream PyTorch requirements -python-dateutil -ruamel.yaml -scikit-learn -setuptools>=70.0.0 -tensorboard -text-unidecode -torch>=2.6.0 -tqdm>=4.41.0 -wget -wrapt diff --git a/requirements/requirements_asr.txt b/requirements/requirements_asr.txt deleted file mode 100644 index 6e09ebbaee93..000000000000 --- a/requirements/requirements_asr.txt +++ /dev/null @@ -1,23 +0,0 @@ -braceexpand -editdistance -einops -jiwer>=3.1.0,<4.0.0 -kaldi-python-io -kaldialign -lhotse>=1.32.2 -# Align with upstream PyTorch requirements -librosa>=0.10.1 -marshmallow -optuna -packaging -pyannote.core -pyannote.metrics -pydub -pyloudnorm -resampy -ruamel.yaml -sacrebleu -scipy>=0.14 -soundfile -sox<=1.5.0 -whisper_normalizer diff --git a/requirements/requirements_audio.txt b/requirements/requirements_audio.txt deleted file mode 100644 index a578e98ee187..000000000000 --- a/requirements/requirements_audio.txt +++ /dev/null @@ -1,8 +0,0 @@ -einops -lhotse>=1.32.2 -librosa>=0.10.0 -matplotlib -pesq; (platform_machine != 'x86_64' or platform_system != 'Darwin') -pystoi -scipy>=0.14 -soundfile diff --git a/requirements/requirements_common.txt b/requirements/requirements_common.txt deleted file mode 100644 index ad6c3f9e147a..000000000000 --- a/requirements/requirements_common.txt +++ /dev/null @@ -1,7 +0,0 @@ -datasets>=3.2.0 -einops -inflect -mediapy==1.1.6 -pandas -sacremoses>=0.0.43 -sentencepiece<1.0.0 diff --git a/requirements/requirements_cu12.txt b/requirements/requirements_cu12.txt deleted file mode 100644 index 0ca06e81b4e8..000000000000 --- a/requirements/requirements_cu12.txt +++ /dev/null @@ -1,2 +0,0 @@ -numba-cuda[cu12] ; platform_system != "Darwin" -cuda-python>=12.6.0,<13 ; platform_system != "Darwin" diff --git a/requirements/requirements_cu13.txt b/requirements/requirements_cu13.txt deleted file mode 100644 index 351e289ea112..000000000000 --- a/requirements/requirements_cu13.txt +++ /dev/null @@ -1,2 +0,0 @@ -numba-cuda[cu13] ; platform_system != "Darwin" -cuda-python>=13,<14 ; platform_system != "Darwin" diff --git a/requirements/requirements_docs.txt b/requirements/requirements_docs.txt deleted file mode 100644 index 0ebf504204a3..000000000000 --- a/requirements/requirements_docs.txt +++ /dev/null @@ -1,13 +0,0 @@ -boto3 -Jinja2 -latexcodec -numpy -nvidia-sphinx-theme -pydata-sphinx-theme -Sphinx -sphinx-book-theme -sphinx-copybutton -sphinxcontrib-bibtex -sphinxext-opengraph -urllib3 -wrapt diff --git a/requirements/requirements_lightning.txt b/requirements/requirements_lightning.txt deleted file mode 100644 index 422819473b27..000000000000 --- a/requirements/requirements_lightning.txt +++ /dev/null @@ -1,13 +0,0 @@ -cloudpickle -fiddle -hydra-core>1.3,<=1.3.2 -lightning>2.2.1,<=2.4.0 -omegaconf<=2.3 -peft<=0.18.0 # (pzelasko): temporary fix until we update our CI environment with newer torch/torchao -torchmetrics>=0.11.0 -transformers -wandb -webdataset>=0.2.86 -nv_one_logger_core>=2.3.1 -nv_one_logger_training_telemetry>=2.3.1 -nv_one_logger_pytorch_lightning_integration>=2.3.1 diff --git a/requirements/requirements_run.txt b/requirements/requirements_run.txt deleted file mode 100644 index 2950b05a9942..000000000000 --- a/requirements/requirements_run.txt +++ /dev/null @@ -1 +0,0 @@ -nemo_run diff --git a/requirements/requirements_slu.txt b/requirements/requirements_slu.txt deleted file mode 100644 index 475ce7fc24e4..000000000000 --- a/requirements/requirements_slu.txt +++ /dev/null @@ -1,5 +0,0 @@ -jiwer>=2.0.0,<4.0.0 -progress>=1.5 -tabulate>=0.8.7 -textdistance>=4.1.5 -tqdm diff --git a/requirements/requirements_speechlm2.txt b/requirements/requirements_speechlm2.txt deleted file mode 100644 index 14a3a1701002..000000000000 --- a/requirements/requirements_speechlm2.txt +++ /dev/null @@ -1,2 +0,0 @@ -nemo_automodel -flashoptim diff --git a/requirements/requirements_test.txt b/requirements/requirements_test.txt deleted file mode 100644 index 32cdffefcbbe..000000000000 --- a/requirements/requirements_test.txt +++ /dev/null @@ -1,16 +0,0 @@ -black~=24.3 -click>=8.1 -coverage -isort>5.1.0,<6.0.0 -parameterized -pytest -pytest-httpserver -pytest-shard -pytest-mock -pytest-runner -ruamel.yaml -sphinx -sphinxcontrib-bibtex -wandb -wget -wrapt diff --git a/requirements/requirements_tts.txt b/requirements/requirements_tts.txt deleted file mode 100644 index c80652ebf7d0..000000000000 --- a/requirements/requirements_tts.txt +++ /dev/null @@ -1,16 +0,0 @@ -attrdict -cdifflib==1.2.6 -einops -janome -jieba -kornia -librosa -matplotlib -# pynini does not currently support aarch, disable nemo_text_processing for now -nemo_text_processing; 'arm' not in platform_machine and 'aarch' not in platform_machine and sys_platform != "darwin" -nltk -pandas -pypinyin -pypinyin-dict -seaborn -pyopenjtalk diff --git a/setup.py b/setup.py index e98fa8164047..4b4789a1500d 100644 --- a/setup.py +++ b/setup.py @@ -18,11 +18,9 @@ """Setup for pip package.""" import importlib.util -import os import subprocess from distutils import cmd as distutils_cmd from distutils import log as distutils_log -from itertools import chain import setuptools @@ -48,96 +46,6 @@ long_description_content_type = "text/markdown" -############################################################################### -# Dependency Loading # -# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% # - - -def req_file(filename, folder="requirements"): - files = [filename] if not isinstance(filename, list) else filename - ans = [] - for file in files: - with open(os.path.join(folder, file), encoding='utf-8') as f: - ans.extend(list(map(str.strip, f.readlines()))) - return ans - - -install_requires = req_file("requirements.txt") - -extras_require = { - # User packages - 'test': req_file("requirements_test.txt"), - 'run': req_file("requirements_run.txt"), - # Lightning Collections Packages - 'core': req_file(["requirements_lightning.txt"]), - 'lightning': req_file(["requirements_lightning.txt"]), - 'common-only': req_file('requirements_common.txt'), - # domain packages - 'asr-only': req_file("requirements_asr.txt"), - 'tts': req_file("requirements_tts.txt"), - 'slu': req_file("requirements_slu.txt"), - 'audio': req_file("requirements_audio.txt"), - 'speechlm2-only': req_file("requirements_speechlm2.txt"), -} - - -extras_require['all'] = list(chain(val for key, val in extras_require.items())) - -# CUDA version extras (not included in 'all' - user must explicitly select) -extras_require['cu12'] = req_file("requirements_cu12.txt") -extras_require['cu13'] = req_file("requirements_cu13.txt") - -# Add lightning requirements as needed -extras_require['common'] = extras_require['common-only'] - -extras_require['common'] = list( - chain( - extras_require['common'], - extras_require['core'], - ) -) -extras_require['test'] = list( - chain( - extras_require['test'], - extras_require['tts'], - extras_require['common'], - ) -) -extras_require['asr'] = extras_require['asr-only'] -extras_require['asr'] = list( - chain( - extras_require['asr'], - extras_require['common'], - ) -) -extras_require['tts'] = list( - chain( - extras_require['tts'], - extras_require['asr'], - extras_require['common'], - ) -) -extras_require['audio'] = list( - chain( - extras_require['audio'], - extras_require['common'], - ) -) -extras_require['slu'] = list( - chain( - extras_require['slu'], - extras_require['asr'], - ) -) -extras_require['speechlm2'] = list( - chain( - extras_require['speechlm2-only'], - extras_require['asr'], - extras_require['tts'], - ) -) - - ############################################################################### # Code style checkers # # %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% # @@ -265,12 +173,6 @@ def finalize_options(self): ], packages=setuptools.find_packages(), python_requires='>=3.10', - install_requires=install_requires, - # List additional groups of dependencies here (e.g. development - # dependencies). You can install these using the following syntax, - # $ pip install -e ".[all]" - # $ pip install nemo_toolkit[all] - extras_require=extras_require, # Add in any packaged data. include_package_data=True, exclude=['tools', 'tests'], diff --git a/tests/collections/asr/decoding/test_cuda_graph_rnnt_greedy_decoding.py b/tests/collections/asr/decoding/test_cuda_graph_rnnt_greedy_decoding.py index b35b639770de..2375236567d0 100644 --- a/tests/collections/asr/decoding/test_cuda_graph_rnnt_greedy_decoding.py +++ b/tests/collections/asr/decoding/test_cuda_graph_rnnt_greedy_decoding.py @@ -25,6 +25,41 @@ from nemo.core.utils.cuda_python_utils import skip_cuda_python_test_if_cuda_graphs_conditional_nodes_not_supported +# These tests move the model to CUDA before calling transcribe(), so avoid forking DataLoader workers afterwards. +CUDA_GRAPH_TRANSCRIBE_NUM_WORKERS = 0 + + +def test_full_graph_compile_fallback_handles_accelerator_error(): + from nemo.collections.asr.parts.submodules.transducer_decoding.rnnt_label_looping import ( + GreedyBatchedRNNTLabelLoopingComputer, + ) + + accelerator_error = getattr(torch, "AcceleratorError", RuntimeError) + computer = GreedyBatchedRNNTLabelLoopingComputer.__new__(GreedyBatchedRNNTLabelLoopingComputer) + computer.cuda_graphs_mode = computer.CudaGraphsMode.FULL_GRAPH + computer.cuda_graphs_allow_fallback = True + partial_graph_compile_calls = [] + computer._partial_graphs_compile = lambda: partial_graph_compile_calls.append(True) + + computer._fallback_to_no_while_loop_cuda_graphs(accelerator_error("CUDA error: invalid argument")) + + assert computer.cuda_graphs_mode == computer.CudaGraphsMode.NO_WHILE_LOOPS + assert partial_graph_compile_calls == [True] + + +def test_forced_full_graph_compile_does_not_fallback(): + from nemo.collections.asr.parts.submodules.transducer_decoding.rnnt_label_looping import ( + GreedyBatchedRNNTLabelLoopingComputer, + ) + + accelerator_error = getattr(torch, "AcceleratorError", RuntimeError) + computer = GreedyBatchedRNNTLabelLoopingComputer.__new__(GreedyBatchedRNNTLabelLoopingComputer) + computer.cuda_graphs_allow_fallback = False + + with pytest.raises(RuntimeError, match="Full CUDA graph decoding failed"): + computer._fallback_to_no_while_loop_cuda_graphs(accelerator_error("CUDA error: invalid argument")) + + @pytest.mark.with_downloads @pytest.mark.skipif(not torch.cuda.is_available(), reason="CUDA decoder can run only on CUDA") @pytest.mark.parametrize( @@ -54,7 +89,9 @@ def test_cuda_graph_rnnt_greedy_decoder(model_name, batch_size, enable_bfloat16, audio_filepaths = glob.glob("tests/.data/asr/test/an4/wav/*.wav") with torch.cuda.amp.autocast(dtype=torch.bfloat16, enabled=enable_bfloat16): - actual_hypotheses = nemo_model.transcribe(audio_filepaths, batch_size=batch_size, num_workers=None) + actual_hypotheses = nemo_model.transcribe( + audio_filepaths, batch_size=batch_size, num_workers=CUDA_GRAPH_TRANSCRIBE_NUM_WORKERS + ) actual_transcripts = [hyp.text for hyp in actual_hypotheses] actual_y_sequences = [hyp.y_sequence for hyp in actual_hypotheses] @@ -64,7 +101,9 @@ def test_cuda_graph_rnnt_greedy_decoder(model_name, batch_size, enable_bfloat16, nemo_model.change_decoding_strategy(decoding_config) with torch.cuda.amp.autocast(dtype=torch.bfloat16, enabled=enable_bfloat16): - fast_hypotheses = nemo_model.transcribe(audio_filepaths, batch_size=batch_size, num_workers=None) + fast_hypotheses = nemo_model.transcribe( + audio_filepaths, batch_size=batch_size, num_workers=CUDA_GRAPH_TRANSCRIBE_NUM_WORKERS + ) fast_transcripts = [hyp.text for hyp in fast_hypotheses] fast_y_sequences = [hyp.y_sequence for hyp in fast_hypotheses] @@ -118,7 +157,9 @@ def test_loop_labels_cuda_graph_rnnt_greedy_decoder_forced_mode( audio_filepaths = glob.glob("tests/.data/asr/test/an4/wav/*.wav") with torch.cuda.amp.autocast(dtype=torch.bfloat16, enabled=enable_bfloat16): - actual_hypotheses = nemo_model.transcribe(audio_filepaths, batch_size=batch_size, num_workers=None) + actual_hypotheses = nemo_model.transcribe( + audio_filepaths, batch_size=batch_size, num_workers=CUDA_GRAPH_TRANSCRIBE_NUM_WORKERS + ) actual_transcripts = [hyp.text for hyp in actual_hypotheses] # transcribe with use implementation with cuda graphs @@ -129,7 +170,9 @@ def test_loop_labels_cuda_graph_rnnt_greedy_decoder_forced_mode( nemo_model.decoding.decoding.decoding_computer.force_cuda_graphs_mode(mode=force_mode) with torch.cuda.amp.autocast(dtype=torch.bfloat16, enabled=enable_bfloat16): - fast_hypotheses = nemo_model.transcribe(audio_filepaths, batch_size=batch_size, num_workers=None) + fast_hypotheses = nemo_model.transcribe( + audio_filepaths, batch_size=batch_size, num_workers=CUDA_GRAPH_TRANSCRIBE_NUM_WORKERS + ) fast_transcripts = [hyp.text for hyp in fast_hypotheses] wer = jiwer.wer(actual_transcripts, fast_transcripts) @@ -226,7 +269,9 @@ def test_change_devices(loop_labels: bool, stt_en_fastconformer_transducer_large nemo_model.to(first_device) audio_filepaths = glob.glob("tests/.data/asr/test/an4/wav/*.wav") with torch.cuda.amp.autocast(dtype=torch.bfloat16, enabled=True): - second_device_hypotheses = nemo_model.transcribe(audio_filepaths, batch_size=batch_size, num_workers=None) + second_device_hypotheses = nemo_model.transcribe( + audio_filepaths, batch_size=batch_size, num_workers=CUDA_GRAPH_TRANSCRIBE_NUM_WORKERS + ) second_device_transcripts = [hyp.text for hyp in second_device_hypotheses] # Test that the model can run successfully back on second_device @@ -237,7 +282,9 @@ def test_change_devices(loop_labels: bool, stt_en_fastconformer_transducer_large nemo_model.to(second_device) with torch.cuda.amp.autocast(dtype=torch.bfloat16, enabled=True): - first_device_hypotheses = nemo_model.transcribe(audio_filepaths, batch_size=batch_size, num_workers=None) + first_device_hypotheses = nemo_model.transcribe( + audio_filepaths, batch_size=batch_size, num_workers=CUDA_GRAPH_TRANSCRIBE_NUM_WORKERS + ) first_device_transcripts = [hyp.text for hyp in first_device_hypotheses] # Sanity check: The device we run on should not change execution # output. diff --git a/tests/collections/speechlm2/test_datamodule_parallel.py b/tests/collections/speechlm2/test_datamodule_parallel.py index b2e6b2bd3cc1..80e7d1d4dc38 100644 --- a/tests/collections/speechlm2/test_datamodule_parallel.py +++ b/tests/collections/speechlm2/test_datamodule_parallel.py @@ -116,17 +116,15 @@ def _extract_rank_mapping(sym_val, world_size): ], ) def test_dp_rank_via_strategy(fake_dist, pp, dp_rep, dp_shard, cp, tp): - """Verify the DP rank formula using the real AutomodelParallelStrategy. + """Verify DataModule DP rank using the real AutomodelParallelStrategy. Uses ``LocalTensorMode`` to obtain per-rank symbolic results for every global rank in a single process and checks that: - * The DataModule formula (``dp_replicate.local_rank * dp_shard.size + - dp_shard.local_rank``) agrees with the flattened ``"dp"`` submesh. + * The DataModule rank agrees with the strategy's flattened ``"dp"`` submesh. * The correct number of unique DP ranks exists. * All DP ranks are in ``[0, dp_size)``. - * Ranks that share the same ``(dp_replicate, dp_shard)`` coordinates are - assigned the same DP rank. + * Each DP rank covers exactly the non-DP ranks assigned to it. """ dp_size = dp_rep * dp_shard world_size = pp * dp_size * cp * tp @@ -144,39 +142,32 @@ def test_dp_rank_via_strategy(fake_dist, pp, dp_rep, dp_shard, cp, tp): with LocalTensorMode(world_size): device_mesh, _ = strategy.create_device_mesh() - # Method 1: DataModule._get_dp_rank formula - dp_rank_manual = ( - device_mesh["dp_replicate"].get_local_rank() * device_mesh["dp_shard"].size() - + device_mesh["dp_shard"].get_local_rank() - ) - # Method 2: flattened "dp" submesh (used by distributed_sampler_kwargs) - dp_rank_flat = device_mesh["dp"].get_local_rank() - dp_world_size = device_mesh["dp_replicate", "dp_shard"].size() + data = DataModule(DictConfig({"train_ds": {"batch_size": 2}}), tokenizer=None, dataset=Identity()) + data.trainer = SimpleNamespace(model=SimpleNamespace(device_mesh=device_mesh)) + + dp_rank_data = data._get_dp_rank() + dp_world_size = data._get_world_size() + sampler_kwargs = strategy.distributed_sampler_kwargs assert dp_world_size == dp_size + assert sampler_kwargs["num_replicas"] == dp_size - manual = _extract_rank_mapping(dp_rank_manual, world_size) - flat = _extract_rank_mapping(dp_rank_flat, world_size) + data_rank = _extract_rank_mapping(dp_rank_data, world_size) + sampler_rank = _extract_rank_mapping(sampler_kwargs["rank"], world_size) - # The two computation methods must agree for every global rank. - assert manual == flat + # DataModule and strategy sampler rank must agree for every global rank. + assert data_rank == sampler_rank # Correct number of unique dp ranks. - assert len(set(manual.values())) == dp_size + assert len(set(data_rank.values())) == dp_size # All dp_ranks in valid range. - assert all(0 <= v < dp_size for v in manual.values()) + assert all(0 <= v < dp_size for v in data_rank.values()) - # Ranks sharing the same (dp_replicate, dp_shard) coordinates must have - # the same dp_rank; different coordinates must differ. - mesh_tensor = torch.arange(world_size).reshape(pp, dp_rep, dp_shard, cp, tp) - for dr in range(dp_rep): - for ds in range(dp_shard): - ranks_in_group = mesh_tensor[:, dr, ds, :, :].flatten().tolist() - dp_ranks_in_group = {manual[r] for r in ranks_in_group} - assert ( - len(dp_ranks_in_group) == 1 - ), f"DP group (dp_rep={dr}, dp_shard={ds}) maps to multiple dp_ranks: {dp_ranks_in_group}" + ranks_per_dp = {dp_rank: [] for dp_rank in range(dp_size)} + for rank, dp_rank in data_rank.items(): + ranks_per_dp[dp_rank].append(rank) + assert all(len(ranks) == pp * cp * tp for ranks in ranks_per_dp.values()) def test_non_dp_dims_share_dp_rank(fake_dist): @@ -196,10 +187,10 @@ def test_non_dp_dims_share_dp_rank(fake_dist): distributed_config=FSDP2Config(backend="gloo"), ) device_mesh, _ = strategy.create_device_mesh() - dp_rank_sym = ( - device_mesh["dp_replicate"].get_local_rank() * device_mesh["dp_shard"].size() - + device_mesh["dp_shard"].get_local_rank() - ) + + data = DataModule(DictConfig({"train_ds": {"batch_size": 2}}), tokenizer=None, dataset=Identity()) + data.trainer = SimpleNamespace(model=SimpleNamespace(device_mesh=device_mesh)) + dp_rank_sym = data._get_dp_rank() rank_to_dp = _extract_rank_mapping(dp_rank_sym, world_size) diff --git a/tests/e2e_nightly/test_model_support_mel_codec_44khz_medium.py b/tests/e2e_nightly/test_model_support_mel_codec_44khz_medium.py index 6752204e19c1..c2915f8d52a7 100644 --- a/tests/e2e_nightly/test_model_support_mel_codec_44khz_medium.py +++ b/tests/e2e_nightly/test_model_support_mel_codec_44khz_medium.py @@ -73,13 +73,18 @@ def test_model_training_step(): import itertools vq_params = list(model.vector_quantizer.parameters()) if model.vector_quantizer else [] - gen_params = itertools.chain( - model.audio_encoder.parameters(), - model.audio_decoder.parameters(), - vq_params, + gen_params = list( + itertools.chain( + model.audio_encoder.parameters(), + model.audio_decoder.parameters(), + vq_params, + ) ) + disc_params = list(model.discriminator.parameters()) optim_gen = torch.optim.Adam(gen_params, lr=2e-4, betas=(0.8, 0.99)) - optim_disc = torch.optim.Adam(model.discriminator.parameters(), lr=2e-4, betas=(0.8, 0.99)) + optim_disc = torch.optim.Adam(disc_params, lr=2e-4, betas=(0.8, 0.99)) + model.gen_params = gen_params + model.disc_params = disc_params # Capture losses passed to manual_backward so we can assert on them. captured_losses = [] diff --git a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_0_6b_v2.py b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_0_6b_v2.py index ef77e953f2bf..75a9ab0c2b70 100644 --- a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_0_6b_v2.py +++ b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_0_6b_v2.py @@ -56,7 +56,8 @@ def test_model_training_step(): model = _load_model() prepare_for_training_step(model) d = next(model.parameters()).device - vocab_size = model.joint.num_classes_with_blank - 1 + # TDT joints may include duration outputs; transcript targets must use only decoder token IDs. + vocab_size = model.decoder.vocab_size batch = ( torch.randn(2, 16000, device=d), torch.tensor([16000, 12000], device=d), diff --git a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_0_6b_v3.py b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_0_6b_v3.py index ea7bc254bb96..112ce7909a22 100644 --- a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_0_6b_v3.py +++ b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_0_6b_v3.py @@ -56,7 +56,8 @@ def test_model_training_step(): model = _load_model() prepare_for_training_step(model) d = next(model.parameters()).device - vocab_size = model.joint.num_classes_with_blank - 1 + # TDT joints may include duration outputs; transcript targets must use only decoder token IDs. + vocab_size = model.decoder.vocab_size batch = ( torch.randn(2, 16000, device=d), torch.tensor([16000, 12000], device=d), diff --git a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_1_1b.py b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_1_1b.py index 00bbc5725784..cda02ea1903a 100644 --- a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_1_1b.py +++ b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_1_1b.py @@ -56,7 +56,8 @@ def test_model_training_step(): model = _load_model() prepare_for_training_step(model) d = next(model.parameters()).device - vocab_size = model.joint.num_classes_with_blank - 1 + # TDT joints may include duration outputs; transcript targets must use only decoder token IDs. + vocab_size = model.decoder.vocab_size batch = ( torch.randn(2, 16000, device=d), torch.tensor([16000, 12000], device=d), diff --git a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_0_6b_ja.py b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_0_6b_ja.py index ca1197b038e2..90fe21ec249f 100644 --- a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_0_6b_ja.py +++ b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_0_6b_ja.py @@ -56,7 +56,8 @@ def test_model_training_step(): model = _load_model() prepare_for_training_step(model) d = next(model.parameters()).device - vocab_size = model.joint.num_classes_with_blank - 1 + # TDT joints may include duration outputs; transcript targets must use only decoder token IDs. + vocab_size = model.decoder.vocab_size batch = ( torch.randn(2, 16000, device=d), torch.tensor([16000, 12000], device=d), diff --git a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_110m.py b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_110m.py index 855bba18ce54..87603f55dbb3 100644 --- a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_110m.py +++ b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_110m.py @@ -56,7 +56,8 @@ def test_model_training_step(): model = _load_model() prepare_for_training_step(model) d = next(model.parameters()).device - vocab_size = model.joint.num_classes_with_blank - 1 + # TDT joints may include duration outputs; transcript targets must use only decoder token IDs. + vocab_size = model.decoder.vocab_size batch = ( torch.randn(2, 16000, device=d), torch.tensor([16000, 12000], device=d), diff --git a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_1_1b.py b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_1_1b.py index 3c184cb337f5..3366389a2d6a 100644 --- a/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_1_1b.py +++ b/tests/e2e_nightly/test_model_support_nvidia__parakeet_tdt_ctc_1_1b.py @@ -56,7 +56,8 @@ def test_model_training_step(): model = _load_model() prepare_for_training_step(model) d = next(model.parameters()).device - vocab_size = model.joint.num_classes_with_blank - 1 + # TDT joints may include duration outputs; transcript targets must use only decoder token IDs. + vocab_size = model.decoder.vocab_size batch = ( torch.randn(2, 16000, device=d), torch.tensor([16000, 12000], device=d), diff --git a/tests/e2e_nightly/test_model_support_nvidia__se_den_sb_16k_small.py b/tests/e2e_nightly/test_model_support_nvidia__se_den_sb_16k_small.py index 1eaa00ccdec2..36e0b420a87a 100644 --- a/tests/e2e_nightly/test_model_support_nvidia__se_den_sb_16k_small.py +++ b/tests/e2e_nightly/test_model_support_nvidia__se_den_sb_16k_small.py @@ -61,7 +61,7 @@ def test_model_training_step(): input_signal = torch.randn(B, C, T, device=d) input_length = torch.tensor([T], device=d) target_signal = torch.randn(B, C, T, device=d) - loss, _loss_enc, _loss_time = model._step( + loss = model._step( target_signal=target_signal, input_signal=input_signal, input_length=input_length, diff --git a/tests/e2e_nightly/test_model_support_nvidia__se_der_sb_16k_small.py b/tests/e2e_nightly/test_model_support_nvidia__se_der_sb_16k_small.py index 23b793a22c3f..703e4eb11112 100644 --- a/tests/e2e_nightly/test_model_support_nvidia__se_der_sb_16k_small.py +++ b/tests/e2e_nightly/test_model_support_nvidia__se_der_sb_16k_small.py @@ -64,7 +64,7 @@ def test_model_training_step(): input_length = torch.tensor([num_samples, num_samples], device=d) target_signal = torch.randn(batch_size, 1, num_samples, device=d) - loss, loss_encoded, loss_time = model._step( + loss = model._step( target_signal=target_signal, input_signal=input_signal, input_length=input_length, diff --git a/tests/e2e_nightly/test_model_support_nvidia__stt_en_fastconformer_tdt_large.py b/tests/e2e_nightly/test_model_support_nvidia__stt_en_fastconformer_tdt_large.py index 67c51bb2cd80..b85851665ca8 100644 --- a/tests/e2e_nightly/test_model_support_nvidia__stt_en_fastconformer_tdt_large.py +++ b/tests/e2e_nightly/test_model_support_nvidia__stt_en_fastconformer_tdt_large.py @@ -56,7 +56,8 @@ def test_model_training_step(): model = _load_model() prepare_for_training_step(model) d = next(model.parameters()).device - vocab_size = model.joint.num_classes_with_blank - 1 + # TDT joints may include duration outputs; transcript targets must use only decoder token IDs. + vocab_size = model.decoder.vocab_size batch = ( torch.randn(2, 16000, device=d), torch.tensor([16000, 12000], device=d), diff --git a/uv.lock b/uv.lock index dfe671decabb..dea429b9cc7d 100644 --- a/uv.lock +++ b/uv.lock @@ -117,6 +117,9 @@ conflicts = [[ { package = "nemo-toolkit", extra = "cu13" }, ]] +[manifest] +overrides = [{ name = "torch", marker = "sys_platform == 'linux'", specifier = "==2.12.0+cu132", index = "https://download.pytorch.org/whl/cu132" }] + [[package]] name = "absl-py" version = "2.4.0" @@ -138,9 +141,7 @@ dependencies = [ { name = "psutil" }, { name = "pyyaml" }, { name = "safetensors" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/ca/14/787e5498cd062640f0f3d92ef4ae4063174f76f9afd29d13fc52a319daae/accelerate-1.13.0.tar.gz", hash = "sha256:d631b4e0f5b3de4aff2d7e9e6857d164810dfc3237d54d017f075122d057b236", size = 402835, upload-time = "2026-03-04T19:34:12.359Z" } wheels = [ @@ -301,6 +302,30 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/fb/76/641ae371508676492379f16e2fa48f4e2c11741bd63c48be4b12a6b09cba/aiosignal-1.4.0-py3-none-any.whl", hash = "sha256:053243f8b92b990551949e63930a839ff0cf0b0ebbe0597b0f3fb19e1a0fe82e", size = 7490, upload-time = "2025-07-03T22:54:42.156Z" }, ] +[[package]] +name = "aistore" +version = "1.25.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "braceexpand" }, + { name = "cloudpickle" }, + { name = "humanize" }, + { name = "msgspec" }, + { name = "overrides" }, + { name = "packaging" }, + { name = "pydantic" }, + { name = "python-dateutil" }, + { name = "pyyaml" }, + { name = "requests" }, + { name = "tenacity" }, + { name = "urllib3" }, + { name = "xxhash" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/47/fa/6fdd02a22e1f6c107ef4d5710f2e52090a766026edd0776830a4a53f0742/aistore-1.25.0.tar.gz", hash = "sha256:6ac94d091495ed02a0bef0ee5103e071b5325037463f6902e2bc85bba2156181", size = 164909, upload-time = "2026-05-20T20:48:45.823Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1a/30/df4ca85efb3d182322d39f4edddd4170c3110bcde5203c7ff1e1fd35db4b/aistore-1.25.0-py3-none-any.whl", hash = "sha256:0ae22e35a70cfc88276ebadef351d6cae1f635ff9a76dcd84cd3e8c620a97275", size = 233285, upload-time = "2026-05-20T20:48:44.27Z" }, +] + [[package]] name = "alabaster" version = "1.0.0" @@ -652,6 +677,34 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/10/cb/f2ad4230dc2eb1a74edf38f1a38b9b52277f75bef262d8908e60d957e13c/blinker-1.9.0-py3-none-any.whl", hash = "sha256:ba0efaa9080b619ff2f3459d1d500c57bddea4a6b424b60a91141db6fd2f08bc", size = 8458, upload-time = "2024-11-08T17:25:46.184Z" }, ] +[[package]] +name = "boto3" +version = "1.43.6" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "botocore" }, + { name = "jmespath" }, + { name = "s3transfer" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/0a/37/78c630d1308964aa9abf44951d9c4df776546ff37251ec2434944e205c4e/boto3-1.43.6.tar.gz", hash = "sha256:e6315effaf12b890b99956e6f8e2c3000a3f64e4ee91943cec3895ce9a836afb", size = 113153, upload-time = "2026-05-07T20:49:59.694Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c8/e2/3c2eef44f55eafab256836d1d9479bd6a74f70c26cbfdc0639a0e23e4327/boto3-1.43.6-py3-none-any.whl", hash = "sha256:179601ec2992726a718053bf41e43c223ceba397d31ceab11f64d9c910d9fc3a", size = 140502, upload-time = "2026-05-07T20:49:57.8Z" }, +] + +[[package]] +name = "botocore" +version = "1.43.6" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "jmespath" }, + { name = "python-dateutil" }, + { name = "urllib3" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/79/a7/23d0f5028011455096a1eeac0ddf3cbe147b3e855e127342f8202552194d/botocore-1.43.6.tar.gz", hash = "sha256:b1e395b347356860398da42e61c808cf1e34b6fa7180cf2b9d87d986e1a06ba0", size = 15336070, upload-time = "2026-05-07T20:49:48.14Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e5/c8/6f47223840e8d8cfa8c9f7c0ec1b77970417f257fc885169ff4f6326ce09/botocore-1.43.6-py3-none-any.whl", hash = "sha256:b6d1fdbc6f65a5fe0b7e947823aa37535d3f39f3ba4d21110fab1f55bbbcc04b", size = 15017094, upload-time = "2026-05-07T20:49:44.964Z" }, +] + [[package]] name = "braceexpand" version = "0.1.7" @@ -1325,12 +1378,96 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/10/38/2c8dae407d301eaf942e377a5b2b30485cfa0df03c6c2dcc2ac044054ed9/cryptography-42.0.8-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:7016f837e15b0a1c119d27ecd89b3515f01f90a8615ed5e9427e30d9cdbfed3d", size = 2801764, upload-time = "2024-06-04T19:54:25.455Z" }, ] +[[package]] +name = "cuda-bindings" +version = "13.0.3" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'linux'", +] +dependencies = [ + { name = "cuda-pathfinder", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/3b/98/0666ee759cd2e5306f911cbc95d2c6c814326906ed6b9c09e817a4b4a7c8/cuda_bindings-13.0.3-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d56e46a9e984bb754e56b9d060cf027fe99f08a97651ce6d8aa1c2032476d01e", size = 11762523, upload-time = "2025-10-21T15:08:45.913Z" }, + { url = "https://files.pythonhosted.org/packages/e1/36/2b2a43c8a6f8d8ff7a5ec7de1357ba3f1438ea69281c9deb90df29d55d56/cuda_bindings-13.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c5f797ce534a303525259be0ae7ee9cfcf4f7874b22f1f9b8e85555509dccb83", size = 12136098, upload-time = "2025-10-21T15:08:48.233Z" }, + { url = "https://files.pythonhosted.org/packages/47/67/5de1d48189511114859a1a131193896f88271c067a64b1159787e2d9f89b/cuda_bindings-13.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:74307cea1feee6c32a6e27b42e77beb22cd21cff4b7764fd214fa6ff89f8bd69", size = 11106982, upload-time = "2025-10-21T15:08:50.433Z" }, + { url = "https://files.pythonhosted.org/packages/dc/67/9e171ee6359d4aabf2d8202802c85487cae6c2eb52b9352bb7754583802f/cuda_bindings-13.0.3-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:dfd66c25a133365c4f93e3396c38c64b04400ccafd18c3a889ae251a1bfabaa1", size = 11807212, upload-time = "2025-10-21T15:08:52.988Z" }, + { url = "https://files.pythonhosted.org/packages/3a/66/d7036d9e402e6b5b57877a7496aba3bf2a0090f4fa3f072743fce3373eba/cuda_bindings-13.0.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9afede5937474864aa794eb57399dbdf5d2b05427aadcac275209b0857528a61", size = 12198791, upload-time = "2025-10-21T15:08:55.687Z" }, + { url = "https://files.pythonhosted.org/packages/83/25/620ce2afb6ea6d5da89d98375c85641f691924eef574247f7f0dd99f8bee/cuda_bindings-13.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:fce6d6b162457475b35e1a259ab643e683d1d20a84459fea898782e2f1e10a3b", size = 11138783, upload-time = "2025-10-21T15:08:57.741Z" }, + { url = "https://files.pythonhosted.org/packages/61/3c/c33fd3aa5fcc89aa1c135e477a0561f29142ab5fe028ca425fc87f7f0a74/cuda_bindings-13.0.3-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b899e5a513c11eaa18648f9bf5265d8de2a93f76ef66a6bfca0a2887303965cd", size = 11709086, upload-time = "2025-10-21T15:09:00.005Z" }, + { url = "https://files.pythonhosted.org/packages/21/ac/6b34452a3836c9fbabcd360689a353409d15f500dd9d9ced7f837549e383/cuda_bindings-13.0.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cf41d9e69019939aa15296fa66ea7d3fdb8d2c6383f729f4b1156c8b37808a06", size = 12128303, upload-time = "2025-10-21T15:09:02.889Z" }, + { url = "https://files.pythonhosted.org/packages/a8/76/ad9cc2f0496886c37aefbc00256197a6043a3f04bbe959481e6908310afe/cuda_bindings-13.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:6b12ccd98f447aea9589d32caf9efda0c193994080752a60f790b646d519fe8c", size = 11237397, upload-time = "2025-10-21T15:09:05.421Z" }, + { url = "https://files.pythonhosted.org/packages/2f/36/41ccc303eb6be8ae82c5edd2ccae938876e8a794660e8bb96a193174a978/cuda_bindings-13.0.3-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fb16a7f769c9c67469add7a1d9f6c14dd44637f6921cb6b9eb82cb5015b35c3d", size = 11537064, upload-time = "2025-10-21T15:09:07.84Z" }, + { url = "https://files.pythonhosted.org/packages/ab/ac/699889100536f1b63779646291e74eefa818087a0974eb271314d850f5dc/cuda_bindings-13.0.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:512d0d803a5e47a8a42d5a34ce0932802bf72fe952fdb11ac798715a35c6e5cb", size = 11910447, upload-time = "2025-10-21T15:09:09.942Z" }, + { url = "https://files.pythonhosted.org/packages/8c/f9/a2f5910aaf21f4cd43f456ea80f47f1424eece5b8f063dac1980304b8ef0/cuda_bindings-13.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:dd83e8d79587e265b82d3e589ba6b061770537443dfb1bb4a74f755c8b13f62b", size = 11211659, upload-time = "2025-10-21T15:09:12.639Z" }, + { url = "https://files.pythonhosted.org/packages/11/67/9656e003f18c5b32e1a2496998b24f4355ec978c5f3639b0eb9f6d0ff83f/cuda_bindings-13.0.3-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c859e326c776a47e66c50386a10c84fe34291eb6e711610c9fd7cc27d446334f", size = 11522409, upload-time = "2025-10-21T15:09:14.674Z" }, + { url = "https://files.pythonhosted.org/packages/18/d8/a83379caa7c1bed4195e704c24467a6c07fe8e29c7055ccd4f00c5702363/cuda_bindings-13.0.3-cp313-cp313t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e675dbd009fb5e66d63fd13a8ff35f849120f01bcc4dafadbced3004605c3588", size = 11903148, upload-time = "2025-10-21T15:09:16.918Z" }, + { url = "https://files.pythonhosted.org/packages/7c/e0/ff1eeda06364df8c750843432ac6efb33a06df38261f0a1ceee59bb7dac2/cuda_bindings-13.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:193762306b6032c00a141fc38bcef92c6fb4d332fd2d6a550c7f950e7fd8acd8", size = 11543153, upload-time = "2025-10-21T15:09:19.252Z" }, + { url = "https://files.pythonhosted.org/packages/e8/99/0042dc5e98e3364480b1aaabc0f5c150d037825b264bba35ac7a883e46ee/cuda_bindings-13.0.3-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7c7e6e89cdfc9b34f16a065cc6ad6c4bab19ce5dcef8da3ace8ad10bda899fa0", size = 11594384, upload-time = "2025-10-21T15:09:21.938Z" }, + { url = "https://files.pythonhosted.org/packages/7a/c4/a931a90ce763bd7d587e18e73e4ce246b8547c78247c4f50ee24efc0e984/cuda_bindings-13.0.3-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e93866465e7ff4b7ebdf711cf9cd680499cd875f992058c68be08d4775ac233d", size = 11920899, upload-time = "2025-10-21T15:09:26.306Z" }, + { url = "https://files.pythonhosted.org/packages/14/3e/5725b2e5b9ac22bf19a50ec5f7611301ab6111c98ccf1b6b125fdaa71550/cuda_bindings-13.0.3-cp314-cp314-win_amd64.whl", hash = "sha256:bd2364bc49925837ce18dda259c3a36e539977ca0297799a54891cae1d5213f5", size = 11160621, upload-time = "2025-10-21T15:09:28.7Z" }, + { url = "https://files.pythonhosted.org/packages/6f/2c/ec611e27ba48a9056f3b0610c5e27727e539f3905356cfe07acea18e772c/cuda_bindings-13.0.3-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ed06ef3507bd0aefb0da367e3d15676a8c7443bd68a88f298562d60b41078c20", size = 11521928, upload-time = "2025-10-21T15:09:30.714Z" }, + { url = "https://files.pythonhosted.org/packages/d4/2e/02cebf281ef5201b6bb9ea193b1a4d26e6233c46571cfb04c4a7dede12b9/cuda_bindings-13.0.3-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:3ab845487ca2c14accdcb393a559a3070469ea4b591d05e6ef439471f47f3e24", size = 11902749, upload-time = "2025-10-21T15:09:32.688Z" }, + { url = "https://files.pythonhosted.org/packages/36/d2/088c28751f54df7a251259ef3f99d34c428e12653f15db02fd62a96247af/cuda_bindings-13.0.3-cp314-cp314t-win_amd64.whl", hash = "sha256:aaa0934e16aa20ec10fbb1ecc53a6961b8d1c06a970fe05cc6ee7d2a805a090f", size = 11697137, upload-time = "2025-10-21T15:09:35.232Z" }, +] + [[package]] name = "cuda-bindings" version = "13.2.0" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'emscripten' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'emscripten' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", +] dependencies = [ - { name = "cuda-pathfinder", marker = "sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "cuda-pathfinder", marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/1a/fe/7351d7e586a8b4c9f89731bfe4cf0148223e8f9903ff09571f78b3fb0682/cuda_bindings-13.2.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:08b395f79cb89ce0cd8effff07c4a1e20101b873c256a1aeb286e8fd7bd0f556", size = 5744254, upload-time = "2026-03-11T00:12:29.798Z" }, @@ -1439,6 +1576,63 @@ wheels = [ [[package]] name = "cuda-python" +version = "13.0.3" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'linux'", +] +dependencies = [ + { name = "cuda-bindings", version = "13.0.3", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'linux'" }, + { name = "cuda-pathfinder", marker = "sys_platform == 'linux'" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/31/5f/beaa12a11b051027eec0b041df01c6690db4f02e3b2e8fadd5a0eeb4df52/cuda_python-13.0.3-py3-none-any.whl", hash = "sha256:914cd7e2dd075bd06a2d5121c1d9ccdd3d0c94b03ea5a44dbd98d24d8ed93bab", size = 7605, upload-time = "2025-10-21T15:48:59.222Z" }, +] + +[[package]] +name = "cuda-python" +version = "13.2.0" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'emscripten'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'emscripten'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", +] +dependencies = [ + { name = "cuda-bindings", version = "13.2.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform != 'darwin' and sys_platform != 'linux'" }, + { name = "cuda-pathfinder", marker = "sys_platform != 'darwin' and sys_platform != 'linux'" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/4a/da/b4dbe129f941afe1c24a09ba53521b78875626763d96414798a74763282f/cuda_python-13.2.0-py3-none-any.whl", hash = "sha256:2f092b0ec13a860115fa595411889ee939ad203450ea4f91e9461b174ea7b084", size = 8145, upload-time = "2026-03-11T13:55:19.143Z" }, +] + +[[package]] +name = "cuda-toolkit" version = "13.2.0" source = { registry = "https://pypi.org/simple" } resolution-markers = [ @@ -1456,6 +1650,30 @@ resolution-markers = [ "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/44/8a/5b9310b41dea015ce1affc049e1465b89381d30cb64bb12332bd80e39d1a/cuda_toolkit-13.2.0-py2.py3-none-any.whl", hash = "sha256:d749077fdf11010881c208978b5fdd3e302290cc2f141ae92ed6e989ea9a65c7", size = 2463, upload-time = "2026-03-10T15:45:17.25Z" }, +] + +[package.optional-dependencies] +cccl = [ + { name = "nvidia-cuda-cccl", version = "13.2.27", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'win32'" }, +] +cudart = [ + { name = "nvidia-cuda-runtime", version = "13.2.51", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'win32'" }, +] +nvrtc = [ + { name = "nvidia-cuda-nvrtc", version = "13.2.51", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'win32'" }, +] +nvvm = [ + { name = "nvidia-nvvm", version = "13.2.51", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'win32'" }, +] + +[[package]] +name = "cuda-toolkit" +version = "13.2.1" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", @@ -1472,34 +1690,55 @@ resolution-markers = [ "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'linux'", ] -dependencies = [ - { name = "cuda-bindings", marker = "sys_platform != 'darwin'" }, - { name = "cuda-pathfinder", marker = "sys_platform != 'darwin'" }, -] -wheels = [ - { url = "https://files.pythonhosted.org/packages/4a/da/b4dbe129f941afe1c24a09ba53521b78875626763d96414798a74763282f/cuda_python-13.2.0-py3-none-any.whl", hash = "sha256:2f092b0ec13a860115fa595411889ee939ad203450ea4f91e9461b174ea7b084", size = 8145, upload-time = "2026-03-11T13:55:19.143Z" }, -] - -[[package]] -name = "cuda-toolkit" -version = "13.2.0" -source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/44/8a/5b9310b41dea015ce1affc049e1465b89381d30cb64bb12332bd80e39d1a/cuda_toolkit-13.2.0-py2.py3-none-any.whl", hash = "sha256:d749077fdf11010881c208978b5fdd3e302290cc2f141ae92ed6e989ea9a65c7", size = 2463, upload-time = "2026-03-10T15:45:17.25Z" }, + { url = "https://files.pythonhosted.org/packages/bd/6a/f79c134fa8e6d5fe028584933be063ce7961b1a85ce217f261cdda176e48/cuda_toolkit-13.2.1-py2.py3-none-any.whl", hash = "sha256:646d0e3668ce6f78f2312bb9cc0f668b9cbfcbef187eaa6a39eb2ea6dbec2a31", size = 2612, upload-time = "2026-04-14T01:10:36.163Z" }, ] [package.optional-dependencies] cccl = [ - { name = "nvidia-cuda-cccl", marker = "sys_platform == 'linux' or sys_platform == 'win32'" }, + { name = "nvidia-cuda-cccl", version = "13.2.75", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux')" }, +] +cublas = [ + { name = "nvidia-cublas", version = "13.4.0.1", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-cuda-nvrtc", version = "13.2.78", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] cudart = [ - { name = "nvidia-cuda-runtime", marker = "sys_platform == 'linux' or sys_platform == 'win32'" }, + { name = "nvidia-cuda-runtime", version = "13.2.75", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +cufft = [ + { name = "nvidia-cufft", marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvjitlink", version = "13.3.33", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +cufile = [ + { name = "nvidia-cufile", marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +cupti = [ + { name = "nvidia-cuda-cupti", marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +curand = [ + { name = "nvidia-curand", marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +cusolver = [ + { name = "nvidia-cublas", version = "13.4.0.1", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-cusolver", marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-cusparse", marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvjitlink", version = "13.3.33", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +cusparse = [ + { name = "nvidia-cusparse", marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvjitlink", version = "13.3.33", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +nvjitlink = [ + { name = "nvidia-nvjitlink", version = "13.3.33", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] nvrtc = [ - { name = "nvidia-cuda-nvrtc", marker = "sys_platform == 'linux' or sys_platform == 'win32'" }, + { name = "nvidia-cuda-nvrtc", version = "13.2.78", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +nvtx = [ + { name = "nvidia-nvtx", marker = "(platform_machine != 'aarch64' and platform_machine != 'x86_64' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] nvvm = [ - { name = "nvidia-nvvm", marker = "sys_platform == 'linux' or sys_platform == 'win32'" }, + { name = "nvidia-nvvm", version = "13.2.78", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine == 'aarch64' and sys_platform == 'linux') or (platform_machine == 'x86_64' and sys_platform == 'linux')" }, ] [[package]] @@ -1744,15 +1983,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/1e/77/dc8c558f7593132cf8fefec57c4f60c83b16941c574ac5f619abb3ae7933/dill-0.4.1-py3-none-any.whl", hash = "sha256:1e1ce33e978ae97fcfcff5638477032b801c46c7c65cf717f95fbc2248f79a9d", size = 120019, upload-time = "2026-01-19T02:36:55.663Z" }, ] -[[package]] -name = "diskcache" -version = "5.6.3" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/3f/21/1c1ffc1a039ddcc459db43cc108658f32c57d271d7289a2794e401d0fdb6/diskcache-5.6.3.tar.gz", hash = "sha256:2c3a3fa2743d8535d832ec61c2054a1641f41775aa7c556758a109941e33e4fc", size = 67916, upload-time = "2023-08-31T06:12:00.316Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/3f/27/4570e78fc0bf5ea0ca45eb1de3818a23787af9b390c0b0a0033a1b8236f9/diskcache-5.6.3-py3-none-any.whl", hash = "sha256:5e31b2d5fbad117cc363ebaf6b689474db18a1f6438bc82358b024abd4c2ca19", size = 45550, upload-time = "2023-08-31T06:11:58.822Z" }, -] - [[package]] name = "docker" version = "7.1.0" @@ -2032,9 +2262,7 @@ dependencies = [ { name = "numpy", version = "2.2.6", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "numpy", version = "2.4.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "packaging" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "triton", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/97/f5/3f463bff2d9f86c230c0ef5c7632ae180e25e4523a4494ad8844ed704879/flashoptim-0.1.3.tar.gz", hash = "sha256:8dc7238224883aa3e8aca40f992d7432e76d5c641255a9dd29c5633741fbfdf1", size = 90240, upload-time = "2026-03-07T09:29:11.414Z" } @@ -2561,6 +2789,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/57/d4/e33bf0b362810a9b96c5923e38908950d58ecb512db42e3730320c7f4a3a/huggingface_hub-1.9.2-py3-none-any.whl", hash = "sha256:e1e62ce237d4fbeca9f970aeb15176fbd503e04c25577bfd22f44aa7aa2b5243", size = 637349, upload-time = "2026-04-08T08:43:09.114Z" }, ] +[[package]] +name = "humanize" +version = "4.15.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/ba/66/a3921783d54be8a6870ac4ccffcd15c4dc0dd7fcce51c6d63b8c63935276/humanize-4.15.0.tar.gz", hash = "sha256:1dd098483eb1c7ee8e32eb2e99ad1910baefa4b75c3aff3a82f4d78688993b10", size = 83599, upload-time = "2025-12-20T20:16:13.19Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/c5/7b/bca5613a0c3b542420cf92bd5e5fb8ebd5435ce1011a091f66bb7693285e/humanize-4.15.0-py3-none-any.whl", hash = "sha256:b1186eb9f5a9749cd9cb8565aee77919dd7c8d076161cf44d70e59e3301e1769", size = 132203, upload-time = "2025-12-20T20:16:11.67Z" }, +] + [[package]] name = "hydra-core" version = "1.3.2" @@ -2904,6 +3141,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/ba/f4/35634d9eeff3b0bab51f5b9474ee569b1186bf29cf0d9d67b84acc80c53d/jiwer-3.1.0-py3-none-any.whl", hash = "sha256:5a14b5bba4692e1946ca3c6946435f7d90b1b526076ccb6c12be763e2146237d", size = 22303, upload-time = "2025-01-31T12:14:08.893Z" }, ] +[[package]] +name = "jmespath" +version = "1.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/d3/59/322338183ecda247fb5d1763a6cbe46eff7222eaeebafd9fa65d4bf5cb11/jmespath-1.1.0.tar.gz", hash = "sha256:472c87d80f36026ae83c6ddd0f1d05d4e510134ed462851fd5f754c8c3cbb88d", size = 27377, upload-time = "2026-01-22T16:35:26.279Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/14/2f/967ba146e6d58cf6a652da73885f52fc68001525b4197effc174321d70b4/jmespath-1.1.0-py3-none-any.whl", hash = "sha256:a5663118de4908c91729bea0acadca56526eb2698e83de10cd116ae0f4e97c64", size = 20419, upload-time = "2026-01-22T16:35:24.919Z" }, +] + [[package]] name = "joblib" version = "1.5.3" @@ -3121,9 +3367,7 @@ source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "kornia-rs" }, { name = "packaging" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/c6/e6/45e757d4924176e4d4e111e10effaab7db382313243e0188a06805010073/kornia-0.8.2.tar.gz", hash = "sha256:5411b2ce0dd909d1608016308cd68faeef90f88c47f47e8ecd40553fd4d8b937", size = 667151, upload-time = "2025-11-08T12:10:03.042Z" } wheels = [ @@ -3196,28 +3440,25 @@ wheels = [ [[package]] name = "lhotse" -version = "1.32.2" +version = "1.33.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "audioread" }, { name = "click" }, { name = "cytoolz" }, { name = "intervaltree" }, - { name = "lilcom" }, { name = "numpy", version = "2.2.6", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "numpy", version = "2.4.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "packaging" }, { name = "pyyaml" }, { name = "soundfile" }, { name = "tabulate" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "tqdm" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/e0/4c/5bb9a0a5a92b3aca726ec9eeb0f9695a15c448a2c775108a9a066bdaead5/lhotse-1.32.2.tar.gz", hash = "sha256:11a6b86cd12ea2c3781b79ac4d877cffd2885042ca3aae5181b3099ce7770f5b", size = 672691, upload-time = "2026-01-14T15:08:58.015Z" } +sdist = { url = "https://files.pythonhosted.org/packages/9d/5a/b606c87b0a50322200aafb0f0682e719890bf0f045152b53e161090a6e8f/lhotse-1.33.0.tar.gz", hash = "sha256:3e91fca8531fc4c1798d0a6de1b3c7ea6bf2e181df70e5985927a131761c67f5", size = 686482, upload-time = "2026-04-20T13:11:08.579Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/bf/1d/1e962e1a9307a0fe2c71a885d88e8c0f50bb95f7e909ff52dee04e1050c4/lhotse-1.32.2-py3-none-any.whl", hash = "sha256:2522749a6d4251a6d7fd8d8363bfe665877af7341ee5ba7ceca59708ea95c61e", size = 889657, upload-time = "2026-01-14T15:08:56.499Z" }, + { url = "https://files.pythonhosted.org/packages/ad/e2/fbcb65dfed851f28ea15eca62cf449bc0b36378b005e6bec720714a9fb19/lhotse-1.33.0-py3-none-any.whl", hash = "sha256:8697bc74a8f3101594fca5661c7318c30899f3fdb132a44c7e99e794be6ac061", size = 903925, upload-time = "2026-04-20T13:11:07.027Z" }, ] [[package]] @@ -3327,9 +3568,7 @@ dependencies = [ { name = "packaging" }, { name = "pytorch-lightning" }, { name = "pyyaml" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "torchmetrics" }, { name = "tqdm" }, { name = "typing-extensions" }, @@ -3352,38 +3591,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/25/f4/ead6e0e37209b07c9baa3e984ccdb0348ca370b77cea3aaea8ddbb097e00/lightning_utilities-0.15.3-py3-none-any.whl", hash = "sha256:6c55f1bee70084a1cbeaa41ada96e4b3a0fea5909e844dd335bd80f5a73c5f91", size = 31906, upload-time = "2026-02-22T14:48:52.488Z" }, ] -[[package]] -name = "lilcom" -version = "1.8.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "numpy", version = "2.2.6", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "numpy", version = "2.4.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/29/18/dad9eb84512a517f3c810f5fa47959303b3b33b100fca93d6f5796a7251f/lilcom-1.8.2.tar.gz", hash = "sha256:674dc1bef8c7d403d2e8f274705a4e3e1c1f1e430d4e94e209356b57c1619aca", size = 46683, upload-time = "2026-01-20T00:25:41.872Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/83/a0/8df96b9c184574bcd4ec8ed2dd95aee123d06ceb60843f51229af72350b9/lilcom-1.8.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3f4a225c645f033c9bec75e3c10d2711613533e2cdecd07fd0ff5171d16de20c", size = 117519, upload-time = "2026-01-15T01:55:48.76Z" }, - { url = "https://files.pythonhosted.org/packages/8a/48/1a7b1fc2a1abf5b20c2f14fafa54cccccd25027e946be43ec0d2b6ab0577/lilcom-1.8.2-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:c34a2fc511c2de382c1e414f58388f0bca62e19d689efbc6459fb036ef6e4e6f", size = 86593, upload-time = "2026-01-15T01:49:09.802Z" }, - { url = "https://files.pythonhosted.org/packages/fe/7a/447e4b8d98976dbe946cf2c59b09147c0bd70370bba608b786f16c8af054/lilcom-1.8.2-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a6b1f8cbb2100a6342749af389f707053a4eb78a778c1159680ddec60d5c7c42", size = 92336, upload-time = "2026-01-20T00:25:48.216Z" }, - { url = "https://files.pythonhosted.org/packages/5c/7a/d80515faf9e45d122bf39395dc028133f6ade04e86d1a6c97716a4a630c6/lilcom-1.8.2-cp310-cp310-win_amd64.whl", hash = "sha256:63b9dad9873cc03a9a99efd7951079461b94d3f1d510e92378ba89dc1f7a5b1c", size = 68523, upload-time = "2026-01-15T01:48:43.389Z" }, - { url = "https://files.pythonhosted.org/packages/f7/2c/9b4fd5cf5efeb3a7e76e46d465baf5cf808c18233d9c127cc2dfec050af0/lilcom-1.8.2-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:845c1365b6f16377a5846b27e8be56e64740d29913e8534a9206cf73c8d5afd0", size = 119986, upload-time = "2026-01-15T01:49:48.125Z" }, - { url = "https://files.pythonhosted.org/packages/37/12/26f37710806001a933fde08c92337e12fb0f2fb9380650b6a075d0b077be/lilcom-1.8.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:324d9251d2690586868ce88ad557a43e5e408f592260d877f24ac15b0a0b582a", size = 88440, upload-time = "2026-01-15T01:50:55.064Z" }, - { url = "https://files.pythonhosted.org/packages/14/7c/cd8374371c2fe5cfb9364f67601d18ec158e7f0290a57a7e58a5f71c8b93/lilcom-1.8.2-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7a4b78053567e0b39f0479b159bf98c45dba8dcc4a7c7fa03b9ae4900d6bf419", size = 94254, upload-time = "2026-01-20T00:28:40.618Z" }, - { url = "https://files.pythonhosted.org/packages/e5/66/9cf625f791d4707ab264a27142105b13d6141885096e49ee17b0eeb63db2/lilcom-1.8.2-cp311-cp311-win_amd64.whl", hash = "sha256:3b33d0171df9f2b26daf5c03dceaffdd708231058a8d73430c5870fe97a4c1b7", size = 69185, upload-time = "2026-01-15T01:49:12.555Z" }, - { url = "https://files.pythonhosted.org/packages/ab/a5/e3d9b6a0177a7c78c2adf30ebdcfe550b2801f10c95efea39de5d4d2e481/lilcom-1.8.2-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:9c2d0e7522554b6c13f9f7e54db3c2c917a4fd41e1ac29afd9fa7973f935315a", size = 118495, upload-time = "2026-01-15T01:51:33.422Z" }, - { url = "https://files.pythonhosted.org/packages/ce/4d/de0f5d220bc52f4140f5a09239c795575d1ca0fc84c4ec2ac98015071cfc/lilcom-1.8.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:f28a68165b7dbf55613fbe463f2e322165de4f54a8744ef653f5b112eca4ca24", size = 86841, upload-time = "2026-01-15T01:50:43.642Z" }, - { url = "https://files.pythonhosted.org/packages/52/43/f1f585d1a05d7774e2a678c2a73b4f771011a33c7ae04eb42cbc9d68752e/lilcom-1.8.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:7a32895134ae754ca889ef456dfb1e8d90355c33367ec1f1943211001df480c1", size = 92959, upload-time = "2026-01-20T00:28:35.536Z" }, - { url = "https://files.pythonhosted.org/packages/fb/2b/49b0fd9d58afa3dcd128ed892c51ff162a63abdbb8754114c1f0060128b0/lilcom-1.8.2-cp312-cp312-win_amd64.whl", hash = "sha256:0bdee08cb1582532b090eb07aeaed116343e861b945a89d068dc8c27c156afb2", size = 69719, upload-time = "2026-01-15T01:48:42.092Z" }, - { url = "https://files.pythonhosted.org/packages/56/06/e7e81d70ff5b2c8434fe2ad870659b5e5c1e6ba948d9bae5eb14459c4c1f/lilcom-1.8.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:d80427c0bd2e9d7d3d0cceb45ca3c3e65330274085055efed3079da71029f322", size = 118542, upload-time = "2026-01-15T01:53:08.184Z" }, - { url = "https://files.pythonhosted.org/packages/b0/8e/66dc6509608f2e23ab6fa0e260eb4c37d840a091ba1502e670208042b4df/lilcom-1.8.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:35012978dcd94b27b878ca5566c4c0d713c89544673aa41a971ac0e09fe38245", size = 86849, upload-time = "2026-01-15T01:51:12.155Z" }, - { url = "https://files.pythonhosted.org/packages/43/08/ed28f4a048229029a07b6808cdbdc26de0c0be889ca29454e07677cc303b/lilcom-1.8.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:988538da5b7e819443f2e10f800d79299fe8055ec3a91db8b1ed661dab3223bc", size = 93485, upload-time = "2026-01-20T00:28:43.271Z" }, - { url = "https://files.pythonhosted.org/packages/a3/07/4febd60c0571f838a33a5342e7235a997369c0cac5ab71ea3fea04b65585/lilcom-1.8.2-cp313-cp313-win_amd64.whl", hash = "sha256:13d387472a9860909dbead72af29ceaa4f92be27d694df388a1b4a299c42d6a0", size = 69719, upload-time = "2026-01-15T01:48:42.389Z" }, - { url = "https://files.pythonhosted.org/packages/a1/f1/6f3ff00fd3011276490ca6fbe14713a6062397fb06d397eb23a0f12bfa79/lilcom-1.8.2-cp314-cp314-macosx_10_15_universal2.whl", hash = "sha256:86c68bef3e5ef443eec092384606ece2b94babde83650437079f63afe1aef1c4", size = 118880, upload-time = "2026-01-15T01:52:22.281Z" }, - { url = "https://files.pythonhosted.org/packages/23/76/781fa0a40cc74cf255b2be0be72d7562e3a4a8c9dc6e95b2b428217aa78c/lilcom-1.8.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:738e10878b86a59ddb706fd55206dd186c5ff1b1d8640e79ceac2d3e25d65537", size = 87055, upload-time = "2026-01-15T01:51:36.692Z" }, - { url = "https://files.pythonhosted.org/packages/2e/2a/6705814902bb8c236a7c1d46dcb4331288d39b877c6d819f93495cac8688/lilcom-1.8.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:150ee54632ae366f0c41f8136dede1d3f55286f7b7137b2c4de45d52db16a333", size = 93529, upload-time = "2026-01-20T00:28:42.97Z" }, - { url = "https://files.pythonhosted.org/packages/09/cc/14073ccde224da3a4f4284f38d0220b47b09a059d1181af576ac7cb69157/lilcom-1.8.2-cp314-cp314-win_amd64.whl", hash = "sha256:174a284e973b6b57b9432c55978413c9b8a3112833e7cc890f5f5209a8a665c9", size = 71614, upload-time = "2026-01-15T01:49:04.606Z" }, -] - [[package]] name = "llvmlite" version = "0.47.0" @@ -3916,9 +4123,7 @@ source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "einops" }, { name = "packaging" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/e4/22/4930d14d4403a0ee2574bc868576d78dd4167dd8d3ca9e868a25ba04083a/megatron_fsdp-0.3.1.tar.gz", hash = "sha256:3644be9196193ca55242577dd87672d65b6349c9ba3df303f2f5192ccebefc5f", size = 95685, upload-time = "2026-03-20T21:23:37.85Z" } wheels = [ @@ -4279,6 +4484,62 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/81/f2/08ace4142eb281c12701fc3b93a10795e4d4dc7f753911d836675050f886/msgpack-1.1.2-cp314-cp314t-win_arm64.whl", hash = "sha256:d99ef64f349d5ec3293688e91486c5fdb925ed03807f64d98d205d2713c60b46", size = 70868, upload-time = "2025-10-08T09:15:44.959Z" }, ] +[[package]] +name = "msgspec" +version = "0.21.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e3/60/f79b9b013a16fa3a58350c9295ddc6789f2e335f36ea61ed10a21b215364/msgspec-0.21.1.tar.gz", hash = "sha256:2313508e394b0d208f8f56892ca9b2799e2561329de9763b19619595a6c0f72c", size = 319193, upload-time = "2026-04-12T21:44:50.394Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/96/38/d591d9f66d43d897ecbd249f2833665823d19c8b043f16619bc8343e23df/msgspec-0.21.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72d9cd03241b8b2edb2e12dcc66c500fa480d8cbd71a8bac105809d468882064", size = 195172, upload-time = "2026-04-12T21:43:45.062Z" }, + { url = "https://files.pythonhosted.org/packages/69/1a/6899188b5982ec1324e0c629b7801eed2db987f6634fab58abd9fc82d317/msgspec-0.21.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ed2ab278200e743a1d2610a4e0c8fc74f6cecb8548544cdec43f927bd9265238", size = 188316, upload-time = "2026-04-12T21:43:46.641Z" }, + { url = "https://files.pythonhosted.org/packages/9e/95/7e591b4fa11fdbbf9891164473c23420a8c781ef553295abe416bf335f42/msgspec-0.21.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:dd677e3001fdfed9186de72eab434da2976303cd5eb9550921d3d0c3e3e168ce", size = 216565, upload-time = "2026-04-12T21:43:48.081Z" }, + { url = "https://files.pythonhosted.org/packages/19/86/714feeaf3b84cf2027235681725593840153dedd2868578f9f2715e296bb/msgspec-0.21.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f667b90b37fad734a91671abd68e0d7f4d066862771b87e91c53996dcb7a9027", size = 222689, upload-time = "2026-04-12T21:43:49.385Z" }, + { url = "https://files.pythonhosted.org/packages/7d/b9/4384243e814f2579e5205e17d170b9c1a30121afd1393298d904817a7fa7/msgspec-0.21.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:49880fd20fdbcfe1b793f07dd83f12572bab679c9800352c8b2240289aa46a06", size = 222343, upload-time = "2026-04-12T21:43:50.612Z" }, + { url = "https://files.pythonhosted.org/packages/04/01/4b227d9c4057346271043632bad41979cf8c3dca372e41bb1f7d546395b2/msgspec-0.21.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ae0162e22849a5e91eaad907766525107523b0daea3df267a9fcb5ba4e0936ae", size = 225607, upload-time = "2026-04-12T21:43:52.129Z" }, + { url = "https://files.pythonhosted.org/packages/c1/ce/27021d1c3e5da837743092a7b7a5e8818397e1f4c05ee8b068bd7d1fd78a/msgspec-0.21.1-cp310-cp310-win_amd64.whl", hash = "sha256:f041a2279f31e3a53319005e4d60ba77c085cfcbe394cdc7ce803c2d01fe9449", size = 188392, upload-time = "2026-04-12T21:43:53.384Z" }, + { url = "https://files.pythonhosted.org/packages/80/2b/daf7a8d6d7cf00e0dcd0439178b284ade701234abdcadf3385601da04fbd/msgspec-0.21.1-cp310-cp310-win_arm64.whl", hash = "sha256:1bf17cbd7b28a5dffc7e764c654eed8ccde5e0f1de7970628608304640d4ce4e", size = 174191, upload-time = "2026-04-12T21:43:54.6Z" }, + { url = "https://files.pythonhosted.org/packages/ba/7f/bbc4e74cd33d316b75541149e4d35b163b63bce066530ae185a2ec3b5bfc/msgspec-0.21.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b504b6e7f7a22a24b27232b73034421692147865162daaec9f3bf62439007c87", size = 193131, upload-time = "2026-04-12T21:43:56.094Z" }, + { url = "https://files.pythonhosted.org/packages/c1/60/504886af1aaf854112663b842d5eea9a15d9588f9bf7d0d2df736424b84d/msgspec-0.21.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:4692b7c1609155708c4418f88e92f63c13fdf08aa095c84bae82bad75b53389b", size = 186597, upload-time = "2026-04-12T21:43:57.242Z" }, + { url = "https://files.pythonhosted.org/packages/fa/54/d24ddeaa65b5278c9e67f48ce3c17a9831e8f3722f3c8322ee120aca22ef/msgspec-0.21.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d3124010b3815451494c85ff345e693cb9fe5889cfcbbef39ed8622e0e72319c", size = 215158, upload-time = "2026-04-12T21:43:58.442Z" }, + { url = "https://files.pythonhosted.org/packages/9f/75/bb79c8b89a93ae23cd33c0d802373f16feaf9633f05d8af77091350dda0a/msgspec-0.21.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6badc03b9725352219cca017bfe71c61f2fbd0fb5982b410ac17c97c213deb30", size = 219856, upload-time = "2026-04-12T21:44:00.015Z" }, + { url = "https://files.pythonhosted.org/packages/b4/9c/c5ca26b46f0ebbd3a6683695ef89396712cb9e4199fd1f0bc1dd968216b1/msgspec-0.21.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:5d2d4116ebe3035a78d9ec76e99a9d64e5fa6d44fe61a9c5de7fd1acf54bcc69", size = 220314, upload-time = "2026-04-12T21:44:01.548Z" }, + { url = "https://files.pythonhosted.org/packages/c8/31/645a351c4285dce40ed6755c3dcc0aa648e26dacb20a98018fe2cce5e87b/msgspec-0.21.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:0d1009f6715f5bff3b54d4ff5c7428ad96197e0534e1645b8e9b955890c84664", size = 223215, upload-time = "2026-04-12T21:44:02.884Z" }, + { url = "https://files.pythonhosted.org/packages/09/af/8bf15736a6dd3cb4f90c5467f6dc39197d2daaf10754490cdc0aa17b7312/msgspec-0.21.1-cp311-cp311-win_amd64.whl", hash = "sha256:c6faffe5bb644ec884052679af4dfd776d4b5ca90e4a7ec7e7e319e4e6b93a6e", size = 188554, upload-time = "2026-04-12T21:44:04.151Z" }, + { url = "https://files.pythonhosted.org/packages/ef/29/cc7db3a165b62d16e64a83f82eccb79655055cb5bc1f60459a6f9d7c82f2/msgspec-0.21.1-cp311-cp311-win_arm64.whl", hash = "sha256:ee9e3f11fa94603f7d673bf795cfa31b549c4a2c723bc39b45beb1e7f5a3fb99", size = 174517, upload-time = "2026-04-12T21:44:05.66Z" }, + { url = "https://files.pythonhosted.org/packages/6e/cf/317224852c00248c620a9bcf4b26e2e4ab8afd752f18d2a6ef73ebd423b6/msgspec-0.21.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d4248cf0b6129b7d230eacd493c17cc2d4f3989f3bb7f633a928a85b7dcfa251", size = 196188, upload-time = "2026-04-12T21:44:07.181Z" }, + { url = "https://files.pythonhosted.org/packages/6d/81/074612945c0666078f7366f40000013de9f6ba687491d450df699bceebc9/msgspec-0.21.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5102c7e9b3acff82178449b85006d96310e690291bb1ea0142f1b24bcb8aabcb", size = 188473, upload-time = "2026-04-12T21:44:08.736Z" }, + { url = "https://files.pythonhosted.org/packages/8a/37/655101799590bcc5fddb2bd3fe0e6194e816c2d1da7c361725f5eb89a910/msgspec-0.21.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:846758412e9518252b2ac9bffd6f0e54d9ff614f5f9488df7749f81ff5c80920", size = 218871, upload-time = "2026-04-12T21:44:09.917Z" }, + { url = "https://files.pythonhosted.org/packages/b5/d1/d4cd9fe89c7d400d7a18f86ccc94daa3f0927f53558846fcb60791dce5d6/msgspec-0.21.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:21995e74b5c598c2e004110ad66ec7f1b8c20bf2bcf3b2de8fd9a3094422d3ff", size = 225025, upload-time = "2026-04-12T21:44:11.191Z" }, + { url = "https://files.pythonhosted.org/packages/24/bf/e20549e602b9edccadeeff98760345a416f9cce846a657e8b18e3396b212/msgspec-0.21.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:6129f0cca52992e898fd5344187f7c8127b63d810b2fd73e36fca73b4c6475ee", size = 222672, upload-time = "2026-04-12T21:44:12.481Z" }, + { url = "https://files.pythonhosted.org/packages/b4/68/04d7a8f0f786545cf9b8c280c57aa6befb5977af6e884b8b54191cbe44b3/msgspec-0.21.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ef3ec2296248d1f8b9231acb051b6d471dfde8f21819e86c9adaaa9f42918521", size = 227303, upload-time = "2026-04-12T21:44:13.709Z" }, + { url = "https://files.pythonhosted.org/packages/cc/4d/619866af2840875be408047bf9e70ceafbae6ab50660de7134ed1b25eb86/msgspec-0.21.1-cp312-cp312-win_amd64.whl", hash = "sha256:d4ab834a054c6f0cbeef6df9e7e1b33d5f1bc7b86dea1d2fd7cad003873e783d", size = 190017, upload-time = "2026-04-12T21:44:14.977Z" }, + { url = "https://files.pythonhosted.org/packages/5e/2e/a8f9eca8fd00e097d7a9e99ba8a4685db994494448e3d4f0b7f6e9a3c0f7/msgspec-0.21.1-cp312-cp312-win_arm64.whl", hash = "sha256:628aaa35c74950a8c59da330d7e98917e1c7188f983745782027748ee4ca573e", size = 175345, upload-time = "2026-04-12T21:44:16.431Z" }, + { url = "https://files.pythonhosted.org/packages/7e/74/f11ede02839b19ff459f88e3145df5d711626ca84da4e23520cebf819367/msgspec-0.21.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:764173717a01743f007e9f74520ed281f24672c604514f7d76c1c3a10e8edb66", size = 196176, upload-time = "2026-04-12T21:44:17.613Z" }, + { url = "https://files.pythonhosted.org/packages/bb/40/4476c1bd341418a046c4955aff632ec769315d1e3cb94e6acf86d461f9ed/msgspec-0.21.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:344c7cd0eaed1fb81d7959f99100ef71ec9b536881a376f11b9a6c4803365697", size = 188524, upload-time = "2026-04-12T21:44:18.815Z" }, + { url = "https://files.pythonhosted.org/packages/ca/d9/9e9d7d7e5061b47540d03d640fab9b3965ba7ae49c1b2154861c8f007518/msgspec-0.21.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:48943e278b3854c2f89f955ddc6f9f430d3f0784b16e47d10604ee0463cd21f5", size = 218880, upload-time = "2026-04-12T21:44:20.028Z" }, + { url = "https://files.pythonhosted.org/packages/74/66/2bb344f34abb4b57e60c7c9c761994e0417b9718ec1460bf00c296f2a7ea/msgspec-0.21.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a9aa659ebb0101b1cbc31461212b87e341d961f0ab0772aaf068a99e001ec4aa", size = 225050, upload-time = "2026-04-12T21:44:21.577Z" }, + { url = "https://files.pythonhosted.org/packages/1a/84/7c1e412f76092277bf760cef12b7979d03314d259ab5b5cafde5d0c1722d/msgspec-0.21.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f7b27d1a8ead2b6f5b0c4f2d07b8be1ccfcc041c8a0e704781edebe3ae13c484", size = 222713, upload-time = "2026-04-12T21:44:22.83Z" }, + { url = "https://files.pythonhosted.org/packages/4e/27/0bba04b2b4ef05f3d068429410bc71d2cea925f1596a8f41152cccd5edb8/msgspec-0.21.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:38fe93e86b61328fe544cb7fd871fad5a27c8734bfda90f65e5dbe288ae50f61", size = 227259, upload-time = "2026-04-12T21:44:24.11Z" }, + { url = "https://files.pythonhosted.org/packages/b0/2d/09574b0eea02fed2c2c1383dbaae2c7f79dc16dcd6487a886000afb5d7c4/msgspec-0.21.1-cp313-cp313-win_amd64.whl", hash = "sha256:8bc666331c35fcce05a7cd2d6221adbe0f6058f8e750711413d22793c080ac6a", size = 189857, upload-time = "2026-04-12T21:44:25.359Z" }, + { url = "https://files.pythonhosted.org/packages/46/34/105b1576ad182879914f0c821f17ee1d13abb165cb060448f96fe2aff078/msgspec-0.21.1-cp313-cp313-win_arm64.whl", hash = "sha256:42bb1241e0750c1a4346f2aa84db26c5ffd99a4eb3a954927d9f149ff2f42898", size = 175403, upload-time = "2026-04-12T21:44:26.608Z" }, + { url = "https://files.pythonhosted.org/packages/5a/ad/86954e987d1d6a5c579e2c2e7832b65e0fff194179fdac4f581536086024/msgspec-0.21.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:fab48eb45fdbfbdb2c0edfec00ffc53b6b6085beefc6b50b61e01659f9f8757f", size = 196261, upload-time = "2026-04-12T21:44:27.807Z" }, + { url = "https://files.pythonhosted.org/packages/d1/a1/c5e46c3e42b866199365e35d11dddfd1fbd8bba4fdb3c52f965b1607ce94/msgspec-0.21.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:3cb779ea0c35bc807ff941d415875c1f69ca0be91a2e907ab99a171811d86a9a", size = 188729, upload-time = "2026-04-12T21:44:28.99Z" }, + { url = "https://files.pythonhosted.org/packages/85/7d/1e29a319d678d6cb962ae5bdf32a6858ebdf38f73bc654c0e9c742a0c2c8/msgspec-0.21.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:68604db36b3b4dd9bf160e436e12798a4738848144cea1aca1cb984011eb160f", size = 219866, upload-time = "2026-04-12T21:44:31.104Z" }, + { url = "https://files.pythonhosted.org/packages/25/1f/cca084ca2572810fff12ea9dbdcbe39eac048f40daf4a9077b49fcbe8cee/msgspec-0.21.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:3d6b9dc50948eaf65df54d2fd0ff66e6d8c32f116037209ee861810eb9b676cb", size = 224993, upload-time = "2026-04-12T21:44:32.649Z" }, + { url = "https://files.pythonhosted.org/packages/71/94/d2120fc9d419a89a3a7c13e5b7078798c4b392a96a02a6e2b3ce43a8766c/msgspec-0.21.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:52c5e21930942302394429c5a582ce7e6b62c7f983b3760834c2ce107e0dd6df", size = 223535, upload-time = "2026-04-12T21:44:33.839Z" }, + { url = "https://files.pythonhosted.org/packages/75/17/42418b66a3ad972a89bab73dd78b79cc6282bb488a25e73c853cee7443b9/msgspec-0.21.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:abbb39d65681fa24ed394e01af3d59d869068324f900c61d06062b7fb9980f2f", size = 227222, upload-time = "2026-04-12T21:44:35.093Z" }, + { url = "https://files.pythonhosted.org/packages/c4/33/265c894268cca88ff67b144ca2b4c522fc8b9a6f1966a3640c70516e78e1/msgspec-0.21.1-cp314-cp314-win_amd64.whl", hash = "sha256:5666b1b560b97b6ec2eb3fca8a502298ebac56e13bbca1f88523538ce83d01ea", size = 193810, upload-time = "2026-04-12T21:44:36.612Z" }, + { url = "https://files.pythonhosted.org/packages/3b/8f/a6d35f25bf1fc63c492fdd88fdce01ba0875ead48c2b91f90f33653b4131/msgspec-0.21.1-cp314-cp314-win_arm64.whl", hash = "sha256:d8b8578e4c83b14ceea4cef0d0b747e31d9330fe4b03b2b2ad4063866a178f93", size = 179125, upload-time = "2026-04-12T21:44:38.198Z" }, + { url = "https://files.pythonhosted.org/packages/c6/39/74839641e64b99d87da55af0fc472854d42b46e2183b9e2a67fe1bb2a512/msgspec-0.21.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:15f523d51c00ebad412213bfe9f06f0a50ec2b93e0c19e824a2d267cabb48ea2", size = 200171, upload-time = "2026-04-12T21:44:39.414Z" }, + { url = "https://files.pythonhosted.org/packages/70/9b/ce0cca6d2d87fcd4b6ff97600790494e64f26a2c55d61507cd2755c16193/msgspec-0.21.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:4e47390360583ba3d5c6cb44cf0a9f61b0a06a899d3c2c00627cedebb2e2884b", size = 192879, upload-time = "2026-04-12T21:44:40.882Z" }, + { url = "https://files.pythonhosted.org/packages/a7/08/673a7bb05e5702dc787ddd3011195b509f9867927970da59052211929987/msgspec-0.21.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f60800e6299b798142dc40b0644da77ceac5ea0568be58228417eae14135c847", size = 226281, upload-time = "2026-04-12T21:44:42.181Z" }, + { url = "https://files.pythonhosted.org/packages/7d/45/86508cf57283e9070b3c447e3ab25b792a7a0855a3ea4e0c6d111ac34c97/msgspec-0.21.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5f8e9dfcd98419cf7568808470c4317a3fb30bef0e3715b568730a2b272a20d7", size = 229863, upload-time = "2026-04-12T21:44:43.442Z" }, + { url = "https://files.pythonhosted.org/packages/2c/62/e7c9367cd08d590559faacd711edbae36840342843e669440363f33c7d36/msgspec-0.21.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:92d89dfad13bd1ea640dc3e37e724ed380da1030b272bdf5ecafb983c3ad7c75", size = 230445, upload-time = "2026-04-12T21:44:44.806Z" }, + { url = "https://files.pythonhosted.org/packages/42/b4/c0f54632103846b658a10930025f4de41c8724b5e4805a5f3b395586cb7e/msgspec-0.21.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:0d03867786e5d7ba25d666df4b11320c27170f4aeafcb8e3a8b0a50a4fb742ca", size = 231822, upload-time = "2026-04-12T21:44:46.343Z" }, + { url = "https://files.pythonhosted.org/packages/ea/1d/0d85cc79d0ccf5508e9c846cc66552a6a16bf92abd1dbd8362617f7b35cd/msgspec-0.21.1-cp314-cp314t-win_amd64.whl", hash = "sha256:740fbf1c9d59992ca3537d6fbe9ebbf9eaf726a65fbf31448e0ecbc710697a63", size = 206650, upload-time = "2026-04-12T21:44:47.601Z" }, + { url = "https://files.pythonhosted.org/packages/90/91/56c5d560f20e6c20e9e4f55bd0e458f7f162aa689ee350346c04c48eac0b/msgspec-0.21.1-cp314-cp314t-win_arm64.whl", hash = "sha256:0d2cc73df6058d811a126ac3a8ad63a4dfa210c82f9cf5a004802eaf4712de90", size = 183149, upload-time = "2026-04-12T21:44:48.833Z" }, +] + [[package]] name = "multidict" version = "6.7.1" @@ -4585,8 +4846,8 @@ wheels = [ [[package]] name = "nemo-automodel" -version = "0.3.0rc0" -source = { git = "https://github.com/NVIDIA-NeMo/Automodel.git?rev=cadbba77a6466f1acdabd7382fd90e0c3f821c19#cadbba77a6466f1acdabd7382fd90e0c3f821c19" } +version = "0.4.0+9eccbb61" +source = { git = "https://github.com/NVIDIA-NeMo/Automodel.git?rev=9eccbb6102a260efd7cbdffa890fc57b94f94528#9eccbb6102a260efd7cbdffa890fc57b94f94528" } dependencies = [ { name = "datasets" }, { name = "flashoptim" }, @@ -4597,9 +4858,8 @@ dependencies = [ { name = "opencv-python-headless" }, { name = "pybind11" }, { name = "pyyaml" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "tiktoken" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "torchao" }, { name = "torchdata" }, { name = "transformers" }, @@ -4643,7 +4903,8 @@ dependencies = [ { name = "pynini", marker = "sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "regex", marker = "sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "sacremoses", marker = "sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "setuptools", marker = "sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "setuptools", version = "81.0.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "setuptools", version = "82.0.1", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "tqdm", marker = "sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "transformers", marker = "sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "wget", marker = "sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, @@ -4658,7 +4919,8 @@ wheels = [ name = "nemo-toolkit" source = { editable = "." } dependencies = [ - { name = "cuda-bindings", marker = "sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "cuda-bindings", version = "13.0.3", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "cuda-bindings", version = "13.2.0", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "fsspec" }, { name = "huggingface-hub" }, { name = "numba", marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, @@ -4670,12 +4932,11 @@ dependencies = [ { name = "ruamel-yaml" }, { name = "scikit-learn", version = "1.7.2", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "scikit-learn", version = "1.8.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "setuptools" }, + { name = "setuptools", version = "81.0.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "setuptools", version = "82.0.1", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform != 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "tensorboard" }, { name = "text-unidecode" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "tqdm" }, { name = "wget" }, { name = "wrapt" }, @@ -4684,21 +4945,16 @@ dependencies = [ [package.optional-dependencies] all = [ { name = "attrdict" }, - { name = "black" }, { name = "braceexpand" }, { name = "cdifflib" }, - { name = "click" }, { name = "cloudpickle" }, - { name = "coverage" }, { name = "datasets" }, - { name = "diskcache" }, { name = "editdistance" }, { name = "einops" }, { name = "fiddle" }, { name = "flashoptim" }, { name = "hydra-core" }, { name = "inflect" }, - { name = "isort" }, { name = "janome" }, { name = "jieba" }, { name = "jiwer" }, @@ -4722,7 +4978,6 @@ all = [ { name = "optuna" }, { name = "packaging" }, { name = "pandas" }, - { name = "parameterized" }, { name = "peft" }, { name = "pesq", marker = "platform_machine != 'x86_64' or sys_platform != 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "progress" }, @@ -4734,12 +4989,7 @@ all = [ { name = "pypinyin" }, { name = "pypinyin-dict" }, { name = "pystoi" }, - { name = "pytest" }, - { name = "pytest-httpserver" }, - { name = "pytest-mock" }, - { name = "pytest-runner" }, { name = "resampy" }, - { name = "ruamel-yaml" }, { name = "sacrebleu" }, { name = "sacremoses" }, { name = "scipy", version = "1.15.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, @@ -4748,26 +4998,18 @@ all = [ { name = "sentencepiece" }, { name = "soundfile" }, { name = "sox" }, - { name = "sphinx", version = "8.1.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "sphinx", version = "9.0.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.11.*' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "sphinx", version = "9.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "sphinxcontrib-bibtex" }, { name = "tabulate" }, { name = "textdistance" }, { name = "torchmetrics" }, { name = "tqdm" }, { name = "transformers" }, - { name = "wandb" }, { name = "webdataset" }, - { name = "wget" }, { name = "whisper-normalizer" }, - { name = "wrapt" }, ] asr = [ { name = "braceexpand" }, { name = "cloudpickle" }, { name = "datasets" }, - { name = "diskcache" }, { name = "editdistance" }, { name = "einops" }, { name = "fiddle" }, @@ -4810,7 +5052,6 @@ asr = [ ] asr-only = [ { name = "braceexpand" }, - { name = "diskcache" }, { name = "editdistance" }, { name = "einops" }, { name = "jiwer" }, @@ -4896,6 +5137,7 @@ common-only = [ { name = "sentencepiece" }, ] core = [ + { name = "aistore" }, { name = "cloudpickle" }, { name = "fiddle" }, { name = "hydra-core" }, @@ -4915,7 +5157,8 @@ cu12 = [ { name = "numba-cuda", version = "0.13.0", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform != 'darwin' and extra == 'extra-12-nemo-toolkit-cu12') or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] cu13 = [ - { name = "cuda-python", version = "13.2.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform != 'darwin'" }, + { name = "cuda-python", version = "13.0.3", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "cuda-python", version = "13.2.0", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "numba-cuda", version = "0.30.0", source = { registry = "https://pypi.org/simple" }, extra = ["cu13"], marker = "(sys_platform != 'darwin' and extra == 'extra-12-nemo-toolkit-cu13') or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] lightning = [ @@ -4940,7 +5183,6 @@ slu = [ { name = "braceexpand" }, { name = "cloudpickle" }, { name = "datasets" }, - { name = "diskcache" }, { name = "editdistance" }, { name = "einops" }, { name = "fiddle" }, @@ -4991,7 +5233,6 @@ speechlm2 = [ { name = "cdifflib" }, { name = "cloudpickle" }, { name = "datasets" }, - { name = "diskcache" }, { name = "editdistance" }, { name = "einops" }, { name = "fiddle" }, @@ -5048,24 +5289,27 @@ speechlm2-only = [ { name = "flashoptim" }, { name = "nemo-automodel" }, ] -test = [ +tts = [ { name = "attrdict" }, - { name = "black" }, + { name = "braceexpand" }, { name = "cdifflib" }, - { name = "click" }, { name = "cloudpickle" }, - { name = "coverage" }, { name = "datasets" }, + { name = "editdistance" }, { name = "einops" }, { name = "fiddle" }, { name = "hydra-core" }, { name = "inflect" }, - { name = "isort" }, { name = "janome" }, { name = "jieba" }, + { name = "jiwer" }, + { name = "kaldi-python-io" }, + { name = "kaldialign" }, { name = "kornia" }, + { name = "lhotse" }, { name = "librosa" }, { name = "lightning" }, + { name = "marshmallow" }, { name = "matplotlib" }, { name = "mediapy" }, { name = "nemo-text-processing", marker = "('aarch' not in platform_machine and 'arm' not in platform_machine and sys_platform != 'darwin') or ('aarch' in platform_machine and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or ('arm' in platform_machine and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, @@ -5074,69 +5318,14 @@ test = [ { name = "nv-one-logger-pytorch-lightning-integration" }, { name = "nv-one-logger-training-telemetry" }, { name = "omegaconf" }, + { name = "optuna" }, + { name = "packaging" }, { name = "pandas" }, - { name = "parameterized" }, { name = "peft" }, - { name = "pyopenjtalk" }, - { name = "pypinyin" }, - { name = "pypinyin-dict" }, - { name = "pytest" }, - { name = "pytest-httpserver" }, - { name = "pytest-mock" }, - { name = "pytest-runner" }, - { name = "ruamel-yaml" }, - { name = "sacremoses" }, - { name = "seaborn" }, - { name = "sentencepiece" }, - { name = "sphinx", version = "8.1.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "sphinx", version = "9.0.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.11.*' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "sphinx", version = "9.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "sphinxcontrib-bibtex" }, - { name = "torchmetrics" }, - { name = "transformers" }, - { name = "wandb" }, - { name = "webdataset" }, - { name = "wget" }, - { name = "wrapt" }, -] -tts = [ - { name = "attrdict" }, - { name = "braceexpand" }, - { name = "cdifflib" }, - { name = "cloudpickle" }, - { name = "datasets" }, - { name = "diskcache" }, - { name = "editdistance" }, - { name = "einops" }, - { name = "fiddle" }, - { name = "hydra-core" }, - { name = "inflect" }, - { name = "janome" }, - { name = "jieba" }, - { name = "jiwer" }, - { name = "kaldi-python-io" }, - { name = "kaldialign" }, - { name = "kornia" }, - { name = "lhotse" }, - { name = "librosa" }, - { name = "lightning" }, - { name = "marshmallow" }, - { name = "matplotlib" }, - { name = "mediapy" }, - { name = "nemo-text-processing", marker = "('aarch' not in platform_machine and 'arm' not in platform_machine and sys_platform != 'darwin') or ('aarch' in platform_machine and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or ('arm' in platform_machine and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nltk" }, - { name = "nv-one-logger-core" }, - { name = "nv-one-logger-pytorch-lightning-integration" }, - { name = "nv-one-logger-training-telemetry" }, - { name = "omegaconf" }, - { name = "optuna" }, - { name = "packaging" }, - { name = "pandas" }, - { name = "peft" }, - { name = "pyannote-core" }, - { name = "pyannote-metrics" }, - { name = "pydub" }, - { name = "pyloudnorm" }, + { name = "pyannote-core" }, + { name = "pyannote-metrics" }, + { name = "pydub" }, + { name = "pyloudnorm" }, { name = "pyopenjtalk" }, { name = "pypinyin" }, { name = "pypinyin-dict" }, @@ -5159,29 +5348,56 @@ tts = [ [package.dev-dependencies] docs = [ + { name = "boto3" }, + { name = "jinja2" }, + { name = "latexcodec" }, { name = "myst-parser", version = "4.0.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "myst-parser", version = "5.0.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "numpy", version = "2.2.6", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "numpy", version = "2.4.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "nvidia-sphinx-theme" }, + { name = "pydata-sphinx-theme" }, { name = "sphinx", version = "8.1.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "sphinx", version = "9.0.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.11.*' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "sphinx", version = "9.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "sphinx-autobuild", version = "2024.10.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "sphinx-autobuild", version = "2025.8.25", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "sphinx-autodoc2" }, + { name = "sphinx-book-theme" }, { name = "sphinx-copybutton" }, { name = "sphinxcontrib-bibtex" }, { name = "sphinxcontrib-mermaid" }, { name = "sphinxext-opengraph" }, + { name = "urllib3" }, + { name = "wrapt" }, +] +test = [ + { name = "black" }, + { name = "click" }, + { name = "coverage" }, + { name = "isort" }, + { name = "parameterized" }, + { name = "pytest" }, + { name = "pytest-httpserver" }, + { name = "pytest-mock" }, + { name = "pytest-runner" }, + { name = "pytest-shard" }, + { name = "ruamel-yaml" }, + { name = "sphinx", version = "8.1.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "sphinx", version = "9.0.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.11.*' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "sphinx", version = "9.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "sphinxcontrib-bibtex" }, + { name = "wandb" }, + { name = "wget" }, + { name = "wrapt" }, ] [package.metadata] requires-dist = [ + { name = "aistore", marker = "extra == 'core'" }, { name = "attrdict", marker = "extra == 'all'" }, { name = "attrdict", marker = "extra == 'speechlm2'" }, - { name = "attrdict", marker = "extra == 'test'" }, { name = "attrdict", marker = "extra == 'tts'" }, - { name = "black", marker = "extra == 'all'", specifier = "~=24.3" }, - { name = "black", marker = "extra == 'test'", specifier = "~=24.3" }, { name = "braceexpand", marker = "extra == 'all'" }, { name = "braceexpand", marker = "extra == 'asr'" }, { name = "braceexpand", marker = "extra == 'asr-only'" }, @@ -5190,10 +5406,7 @@ requires-dist = [ { name = "braceexpand", marker = "extra == 'tts'" }, { name = "cdifflib", marker = "extra == 'all'", specifier = "==1.2.6" }, { name = "cdifflib", marker = "extra == 'speechlm2'", specifier = "==1.2.6" }, - { name = "cdifflib", marker = "extra == 'test'", specifier = "==1.2.6" }, { name = "cdifflib", marker = "extra == 'tts'", specifier = "==1.2.6" }, - { name = "click", marker = "extra == 'all'", specifier = ">=8.1" }, - { name = "click", marker = "extra == 'test'", specifier = ">=8.1" }, { name = "cloudpickle", marker = "extra == 'all'" }, { name = "cloudpickle", marker = "extra == 'asr'" }, { name = "cloudpickle", marker = "extra == 'audio'" }, @@ -5202,10 +5415,7 @@ requires-dist = [ { name = "cloudpickle", marker = "extra == 'lightning'" }, { name = "cloudpickle", marker = "extra == 'slu'" }, { name = "cloudpickle", marker = "extra == 'speechlm2'" }, - { name = "cloudpickle", marker = "extra == 'test'" }, { name = "cloudpickle", marker = "extra == 'tts'" }, - { name = "coverage", marker = "extra == 'all'" }, - { name = "coverage", marker = "extra == 'test'" }, { name = "cuda-bindings", marker = "sys_platform != 'darwin'" }, { name = "cuda-python", marker = "sys_platform != 'darwin' and extra == 'cu12'", specifier = ">=12.6.0,<13" }, { name = "cuda-python", marker = "sys_platform != 'darwin' and extra == 'cu13'", specifier = ">=13,<14" }, @@ -5216,14 +5426,7 @@ requires-dist = [ { name = "datasets", marker = "extra == 'common-only'", specifier = ">=3.2.0" }, { name = "datasets", marker = "extra == 'slu'", specifier = ">=3.2.0" }, { name = "datasets", marker = "extra == 'speechlm2'", specifier = ">=3.2.0" }, - { name = "datasets", marker = "extra == 'test'", specifier = ">=3.2.0" }, { name = "datasets", marker = "extra == 'tts'", specifier = ">=3.2.0" }, - { name = "diskcache", marker = "extra == 'all'" }, - { name = "diskcache", marker = "extra == 'asr'" }, - { name = "diskcache", marker = "extra == 'asr-only'" }, - { name = "diskcache", marker = "extra == 'slu'" }, - { name = "diskcache", marker = "extra == 'speechlm2'" }, - { name = "diskcache", marker = "extra == 'tts'" }, { name = "editdistance", marker = "extra == 'all'" }, { name = "editdistance", marker = "extra == 'asr'" }, { name = "editdistance", marker = "extra == 'asr-only'" }, @@ -5238,7 +5441,6 @@ requires-dist = [ { name = "einops", marker = "extra == 'common-only'" }, { name = "einops", marker = "extra == 'slu'" }, { name = "einops", marker = "extra == 'speechlm2'" }, - { name = "einops", marker = "extra == 'test'" }, { name = "einops", marker = "extra == 'tts'" }, { name = "fiddle", marker = "extra == 'all'" }, { name = "fiddle", marker = "extra == 'asr'" }, @@ -5248,7 +5450,6 @@ requires-dist = [ { name = "fiddle", marker = "extra == 'lightning'" }, { name = "fiddle", marker = "extra == 'slu'" }, { name = "fiddle", marker = "extra == 'speechlm2'" }, - { name = "fiddle", marker = "extra == 'test'" }, { name = "fiddle", marker = "extra == 'tts'" }, { name = "flashoptim", marker = "extra == 'all'" }, { name = "flashoptim", marker = "extra == 'speechlm2'" }, @@ -5263,7 +5464,6 @@ requires-dist = [ { name = "hydra-core", marker = "extra == 'lightning'", specifier = ">1.3,<=1.3.2" }, { name = "hydra-core", marker = "extra == 'slu'", specifier = ">1.3,<=1.3.2" }, { name = "hydra-core", marker = "extra == 'speechlm2'", specifier = ">1.3,<=1.3.2" }, - { name = "hydra-core", marker = "extra == 'test'", specifier = ">1.3,<=1.3.2" }, { name = "hydra-core", marker = "extra == 'tts'", specifier = ">1.3,<=1.3.2" }, { name = "inflect", marker = "extra == 'all'" }, { name = "inflect", marker = "extra == 'asr'" }, @@ -5272,17 +5472,12 @@ requires-dist = [ { name = "inflect", marker = "extra == 'common-only'" }, { name = "inflect", marker = "extra == 'slu'" }, { name = "inflect", marker = "extra == 'speechlm2'" }, - { name = "inflect", marker = "extra == 'test'" }, { name = "inflect", marker = "extra == 'tts'" }, - { name = "isort", marker = "extra == 'all'", specifier = ">5.1.0,<6.0.0" }, - { name = "isort", marker = "extra == 'test'", specifier = ">5.1.0,<6.0.0" }, { name = "janome", marker = "extra == 'all'" }, { name = "janome", marker = "extra == 'speechlm2'" }, - { name = "janome", marker = "extra == 'test'" }, { name = "janome", marker = "extra == 'tts'" }, { name = "jieba", marker = "extra == 'all'" }, { name = "jieba", marker = "extra == 'speechlm2'" }, - { name = "jieba", marker = "extra == 'test'" }, { name = "jieba", marker = "extra == 'tts'" }, { name = "jiwer", marker = "extra == 'all'", specifier = ">=2.0.0,<4.0.0" }, { name = "jiwer", marker = "extra == 'all'", specifier = ">=3.1.0,<4.0.0" }, @@ -5306,15 +5501,14 @@ requires-dist = [ { name = "kaldialign", marker = "extra == 'tts'" }, { name = "kornia", marker = "extra == 'all'" }, { name = "kornia", marker = "extra == 'speechlm2'" }, - { name = "kornia", marker = "extra == 'test'" }, { name = "kornia", marker = "extra == 'tts'" }, - { name = "lhotse", marker = "extra == 'all'", specifier = ">=1.32.2" }, - { name = "lhotse", marker = "extra == 'asr'", specifier = ">=1.32.2" }, - { name = "lhotse", marker = "extra == 'asr-only'", specifier = ">=1.32.2" }, - { name = "lhotse", marker = "extra == 'audio'", specifier = ">=1.32.2" }, - { name = "lhotse", marker = "extra == 'slu'", specifier = ">=1.32.2" }, - { name = "lhotse", marker = "extra == 'speechlm2'", specifier = ">=1.32.2" }, - { name = "lhotse", marker = "extra == 'tts'", specifier = ">=1.32.2" }, + { name = "lhotse", marker = "extra == 'all'", specifier = ">=1.33.0" }, + { name = "lhotse", marker = "extra == 'asr'", specifier = ">=1.33.0" }, + { name = "lhotse", marker = "extra == 'asr-only'", specifier = ">=1.33.0" }, + { name = "lhotse", marker = "extra == 'audio'", specifier = ">=1.33.0" }, + { name = "lhotse", marker = "extra == 'slu'", specifier = ">=1.33.0" }, + { name = "lhotse", marker = "extra == 'speechlm2'", specifier = ">=1.33.0" }, + { name = "lhotse", marker = "extra == 'tts'", specifier = ">=1.33.0" }, { name = "librosa", marker = "extra == 'all'" }, { name = "librosa", marker = "extra == 'all'", specifier = ">=0.10.0" }, { name = "librosa", marker = "extra == 'all'", specifier = ">=0.10.1" }, @@ -5324,7 +5518,6 @@ requires-dist = [ { name = "librosa", marker = "extra == 'slu'", specifier = ">=0.10.1" }, { name = "librosa", marker = "extra == 'speechlm2'" }, { name = "librosa", marker = "extra == 'speechlm2'", specifier = ">=0.10.1" }, - { name = "librosa", marker = "extra == 'test'" }, { name = "librosa", marker = "extra == 'tts'" }, { name = "librosa", marker = "extra == 'tts'", specifier = ">=0.10.1" }, { name = "lightning", marker = "extra == 'all'", specifier = ">2.2.1,<=2.4.0" }, @@ -5335,7 +5528,6 @@ requires-dist = [ { name = "lightning", marker = "extra == 'lightning'", specifier = ">2.2.1,<=2.4.0" }, { name = "lightning", marker = "extra == 'slu'", specifier = ">2.2.1,<=2.4.0" }, { name = "lightning", marker = "extra == 'speechlm2'", specifier = ">2.2.1,<=2.4.0" }, - { name = "lightning", marker = "extra == 'test'", specifier = ">2.2.1,<=2.4.0" }, { name = "lightning", marker = "extra == 'tts'", specifier = ">2.2.1,<=2.4.0" }, { name = "marshmallow", marker = "extra == 'all'" }, { name = "marshmallow", marker = "extra == 'asr'" }, @@ -5346,7 +5538,6 @@ requires-dist = [ { name = "matplotlib", marker = "extra == 'all'" }, { name = "matplotlib", marker = "extra == 'audio'" }, { name = "matplotlib", marker = "extra == 'speechlm2'" }, - { name = "matplotlib", marker = "extra == 'test'" }, { name = "matplotlib", marker = "extra == 'tts'" }, { name = "mediapy", marker = "extra == 'all'", specifier = "==1.1.6" }, { name = "mediapy", marker = "extra == 'asr'", specifier = "==1.1.6" }, @@ -5355,20 +5546,17 @@ requires-dist = [ { name = "mediapy", marker = "extra == 'common-only'", specifier = "==1.1.6" }, { name = "mediapy", marker = "extra == 'slu'", specifier = "==1.1.6" }, { name = "mediapy", marker = "extra == 'speechlm2'", specifier = "==1.1.6" }, - { name = "mediapy", marker = "extra == 'test'", specifier = "==1.1.6" }, { name = "mediapy", marker = "extra == 'tts'", specifier = "==1.1.6" }, - { name = "nemo-automodel", marker = "extra == 'all'", git = "https://github.com/NVIDIA-NeMo/Automodel.git?rev=cadbba77a6466f1acdabd7382fd90e0c3f821c19" }, - { name = "nemo-automodel", marker = "extra == 'speechlm2'", git = "https://github.com/NVIDIA-NeMo/Automodel.git?rev=cadbba77a6466f1acdabd7382fd90e0c3f821c19" }, - { name = "nemo-automodel", marker = "extra == 'speechlm2-only'", git = "https://github.com/NVIDIA-NeMo/Automodel.git?rev=cadbba77a6466f1acdabd7382fd90e0c3f821c19" }, + { name = "nemo-automodel", marker = "extra == 'all'", git = "https://github.com/NVIDIA-NeMo/Automodel.git?rev=9eccbb6102a260efd7cbdffa890fc57b94f94528" }, + { name = "nemo-automodel", marker = "extra == 'speechlm2'", git = "https://github.com/NVIDIA-NeMo/Automodel.git?rev=9eccbb6102a260efd7cbdffa890fc57b94f94528" }, + { name = "nemo-automodel", marker = "extra == 'speechlm2-only'", git = "https://github.com/NVIDIA-NeMo/Automodel.git?rev=9eccbb6102a260efd7cbdffa890fc57b94f94528" }, { name = "nemo-run", marker = "extra == 'all'" }, { name = "nemo-run", marker = "extra == 'run'" }, { name = "nemo-text-processing", marker = "'aarch' not in platform_machine and 'arm' not in platform_machine and sys_platform != 'darwin' and extra == 'all'" }, { name = "nemo-text-processing", marker = "'aarch' not in platform_machine and 'arm' not in platform_machine and sys_platform != 'darwin' and extra == 'speechlm2'" }, - { name = "nemo-text-processing", marker = "'aarch' not in platform_machine and 'arm' not in platform_machine and sys_platform != 'darwin' and extra == 'test'" }, { name = "nemo-text-processing", marker = "'aarch' not in platform_machine and 'arm' not in platform_machine and sys_platform != 'darwin' and extra == 'tts'" }, { name = "nltk", marker = "extra == 'all'" }, { name = "nltk", marker = "extra == 'speechlm2'" }, - { name = "nltk", marker = "extra == 'test'" }, { name = "nltk", marker = "extra == 'tts'" }, { name = "numba", marker = "sys_platform == 'darwin'" }, { name = "numba-cuda", extras = ["cu12"], marker = "sys_platform != 'darwin' and extra == 'cu12'" }, @@ -5383,7 +5571,6 @@ requires-dist = [ { name = "nv-one-logger-core", marker = "extra == 'lightning'", specifier = ">=2.3.1" }, { name = "nv-one-logger-core", marker = "extra == 'slu'", specifier = ">=2.3.1" }, { name = "nv-one-logger-core", marker = "extra == 'speechlm2'", specifier = ">=2.3.1" }, - { name = "nv-one-logger-core", marker = "extra == 'test'", specifier = ">=2.3.1" }, { name = "nv-one-logger-core", marker = "extra == 'tts'", specifier = ">=2.3.1" }, { name = "nv-one-logger-pytorch-lightning-integration", marker = "extra == 'all'", specifier = ">=2.3.1" }, { name = "nv-one-logger-pytorch-lightning-integration", marker = "extra == 'asr'", specifier = ">=2.3.1" }, @@ -5393,7 +5580,6 @@ requires-dist = [ { name = "nv-one-logger-pytorch-lightning-integration", marker = "extra == 'lightning'", specifier = ">=2.3.1" }, { name = "nv-one-logger-pytorch-lightning-integration", marker = "extra == 'slu'", specifier = ">=2.3.1" }, { name = "nv-one-logger-pytorch-lightning-integration", marker = "extra == 'speechlm2'", specifier = ">=2.3.1" }, - { name = "nv-one-logger-pytorch-lightning-integration", marker = "extra == 'test'", specifier = ">=2.3.1" }, { name = "nv-one-logger-pytorch-lightning-integration", marker = "extra == 'tts'", specifier = ">=2.3.1" }, { name = "nv-one-logger-training-telemetry", marker = "extra == 'all'", specifier = ">=2.3.1" }, { name = "nv-one-logger-training-telemetry", marker = "extra == 'asr'", specifier = ">=2.3.1" }, @@ -5403,7 +5589,6 @@ requires-dist = [ { name = "nv-one-logger-training-telemetry", marker = "extra == 'lightning'", specifier = ">=2.3.1" }, { name = "nv-one-logger-training-telemetry", marker = "extra == 'slu'", specifier = ">=2.3.1" }, { name = "nv-one-logger-training-telemetry", marker = "extra == 'speechlm2'", specifier = ">=2.3.1" }, - { name = "nv-one-logger-training-telemetry", marker = "extra == 'test'", specifier = ">=2.3.1" }, { name = "nv-one-logger-training-telemetry", marker = "extra == 'tts'", specifier = ">=2.3.1" }, { name = "omegaconf", marker = "extra == 'all'", specifier = "<=2.3" }, { name = "omegaconf", marker = "extra == 'asr'", specifier = "<=2.3" }, @@ -5413,7 +5598,6 @@ requires-dist = [ { name = "omegaconf", marker = "extra == 'lightning'", specifier = "<=2.3" }, { name = "omegaconf", marker = "extra == 'slu'", specifier = "<=2.3" }, { name = "omegaconf", marker = "extra == 'speechlm2'", specifier = "<=2.3" }, - { name = "omegaconf", marker = "extra == 'test'", specifier = "<=2.3" }, { name = "omegaconf", marker = "extra == 'tts'", specifier = "<=2.3" }, { name = "onnx", specifier = ">=1.7.0" }, { name = "optuna", marker = "extra == 'all'" }, @@ -5435,10 +5619,7 @@ requires-dist = [ { name = "pandas", marker = "extra == 'common-only'" }, { name = "pandas", marker = "extra == 'slu'" }, { name = "pandas", marker = "extra == 'speechlm2'" }, - { name = "pandas", marker = "extra == 'test'" }, { name = "pandas", marker = "extra == 'tts'" }, - { name = "parameterized", marker = "extra == 'all'" }, - { name = "parameterized", marker = "extra == 'test'" }, { name = "peft", marker = "extra == 'all'", specifier = "<=0.18.0" }, { name = "peft", marker = "extra == 'asr'", specifier = "<=0.18.0" }, { name = "peft", marker = "extra == 'audio'", specifier = "<=0.18.0" }, @@ -5447,7 +5628,6 @@ requires-dist = [ { name = "peft", marker = "extra == 'lightning'", specifier = "<=0.18.0" }, { name = "peft", marker = "extra == 'slu'", specifier = "<=0.18.0" }, { name = "peft", marker = "extra == 'speechlm2'", specifier = "<=0.18.0" }, - { name = "peft", marker = "extra == 'test'", specifier = "<=0.18.0" }, { name = "peft", marker = "extra == 'tts'", specifier = "<=0.18.0" }, { name = "pesq", marker = "(platform_machine != 'x86_64' and extra == 'all') or (sys_platform != 'darwin' and extra == 'all')" }, { name = "pesq", marker = "(platform_machine != 'x86_64' and extra == 'audio') or (sys_platform != 'darwin' and extra == 'audio')" }, @@ -5479,26 +5659,15 @@ requires-dist = [ { name = "pyloudnorm", marker = "extra == 'tts'" }, { name = "pyopenjtalk", marker = "extra == 'all'" }, { name = "pyopenjtalk", marker = "extra == 'speechlm2'" }, - { name = "pyopenjtalk", marker = "extra == 'test'" }, { name = "pyopenjtalk", marker = "extra == 'tts'" }, { name = "pypinyin", marker = "extra == 'all'" }, { name = "pypinyin", marker = "extra == 'speechlm2'" }, - { name = "pypinyin", marker = "extra == 'test'" }, { name = "pypinyin", marker = "extra == 'tts'" }, { name = "pypinyin-dict", marker = "extra == 'all'" }, { name = "pypinyin-dict", marker = "extra == 'speechlm2'" }, - { name = "pypinyin-dict", marker = "extra == 'test'" }, { name = "pypinyin-dict", marker = "extra == 'tts'" }, { name = "pystoi", marker = "extra == 'all'" }, { name = "pystoi", marker = "extra == 'audio'" }, - { name = "pytest", marker = "extra == 'all'" }, - { name = "pytest", marker = "extra == 'test'" }, - { name = "pytest-httpserver", marker = "extra == 'all'" }, - { name = "pytest-httpserver", marker = "extra == 'test'" }, - { name = "pytest-mock", marker = "extra == 'all'" }, - { name = "pytest-mock", marker = "extra == 'test'" }, - { name = "pytest-runner", marker = "extra == 'all'" }, - { name = "pytest-runner", marker = "extra == 'test'" }, { name = "python-dateutil" }, { name = "resampy", marker = "extra == 'all'" }, { name = "resampy", marker = "extra == 'asr'" }, @@ -5507,12 +5676,10 @@ requires-dist = [ { name = "resampy", marker = "extra == 'speechlm2'" }, { name = "resampy", marker = "extra == 'tts'" }, { name = "ruamel-yaml" }, - { name = "ruamel-yaml", marker = "extra == 'all'" }, { name = "ruamel-yaml", marker = "extra == 'asr'" }, { name = "ruamel-yaml", marker = "extra == 'asr-only'" }, { name = "ruamel-yaml", marker = "extra == 'slu'" }, { name = "ruamel-yaml", marker = "extra == 'speechlm2'" }, - { name = "ruamel-yaml", marker = "extra == 'test'" }, { name = "ruamel-yaml", marker = "extra == 'tts'" }, { name = "sacrebleu", marker = "extra == 'all'" }, { name = "sacrebleu", marker = "extra == 'asr'" }, @@ -5527,7 +5694,6 @@ requires-dist = [ { name = "sacremoses", marker = "extra == 'common-only'", specifier = ">=0.0.43" }, { name = "sacremoses", marker = "extra == 'slu'", specifier = ">=0.0.43" }, { name = "sacremoses", marker = "extra == 'speechlm2'", specifier = ">=0.0.43" }, - { name = "sacremoses", marker = "extra == 'test'", specifier = ">=0.0.43" }, { name = "sacremoses", marker = "extra == 'tts'", specifier = ">=0.0.43" }, { name = "scikit-learn" }, { name = "scipy", marker = "extra == 'all'", specifier = ">=0.14" }, @@ -5539,7 +5705,6 @@ requires-dist = [ { name = "scipy", marker = "extra == 'tts'", specifier = ">=0.14" }, { name = "seaborn", marker = "extra == 'all'" }, { name = "seaborn", marker = "extra == 'speechlm2'" }, - { name = "seaborn", marker = "extra == 'test'" }, { name = "seaborn", marker = "extra == 'tts'" }, { name = "sentencepiece", marker = "extra == 'all'", specifier = "<1.0.0" }, { name = "sentencepiece", marker = "extra == 'asr'", specifier = "<1.0.0" }, @@ -5548,7 +5713,6 @@ requires-dist = [ { name = "sentencepiece", marker = "extra == 'common-only'", specifier = "<1.0.0" }, { name = "sentencepiece", marker = "extra == 'slu'", specifier = "<1.0.0" }, { name = "sentencepiece", marker = "extra == 'speechlm2'", specifier = "<1.0.0" }, - { name = "sentencepiece", marker = "extra == 'test'", specifier = "<1.0.0" }, { name = "sentencepiece", marker = "extra == 'tts'", specifier = "<1.0.0" }, { name = "setuptools", specifier = ">=70.0.0" }, { name = "soundfile", marker = "extra == 'all'" }, @@ -5564,10 +5728,6 @@ requires-dist = [ { name = "sox", marker = "extra == 'slu'", specifier = "<=1.5.0" }, { name = "sox", marker = "extra == 'speechlm2'", specifier = "<=1.5.0" }, { name = "sox", marker = "extra == 'tts'", specifier = "<=1.5.0" }, - { name = "sphinx", marker = "extra == 'all'" }, - { name = "sphinx", marker = "extra == 'test'" }, - { name = "sphinxcontrib-bibtex", marker = "extra == 'all'" }, - { name = "sphinxcontrib-bibtex", marker = "extra == 'test'" }, { name = "tabulate", marker = "extra == 'all'", specifier = ">=0.8.7" }, { name = "tabulate", marker = "extra == 'slu'", specifier = ">=0.8.7" }, { name = "tensorboard" }, @@ -5576,7 +5736,7 @@ requires-dist = [ { name = "textdistance", marker = "extra == 'slu'", specifier = ">=4.1.5" }, { name = "torch", marker = "sys_platform != 'darwin' and sys_platform != 'linux'", specifier = ">=2.6.0", index = "https://download.pytorch.org/whl/cpu" }, { name = "torch", marker = "sys_platform == 'darwin'", specifier = ">=2.6.0", index = "https://pypi.org/simple" }, - { name = "torch", marker = "sys_platform == 'linux'", specifier = ">=2.6.0", index = "https://download.pytorch.org/whl/cu129" }, + { name = "torch", marker = "sys_platform == 'linux'", specifier = ">=2.6.0", index = "https://download.pytorch.org/whl/cu132" }, { name = "torchmetrics", marker = "extra == 'all'", specifier = ">=0.11.0" }, { name = "torchmetrics", marker = "extra == 'asr'", specifier = ">=0.11.0" }, { name = "torchmetrics", marker = "extra == 'audio'", specifier = ">=0.11.0" }, @@ -5585,7 +5745,6 @@ requires-dist = [ { name = "torchmetrics", marker = "extra == 'lightning'", specifier = ">=0.11.0" }, { name = "torchmetrics", marker = "extra == 'slu'", specifier = ">=0.11.0" }, { name = "torchmetrics", marker = "extra == 'speechlm2'", specifier = ">=0.11.0" }, - { name = "torchmetrics", marker = "extra == 'test'", specifier = ">=0.11.0" }, { name = "torchmetrics", marker = "extra == 'tts'", specifier = ">=0.11.0" }, { name = "tqdm", specifier = ">=4.41.0" }, { name = "tqdm", marker = "extra == 'all'" }, @@ -5598,9 +5757,7 @@ requires-dist = [ { name = "transformers", marker = "extra == 'lightning'" }, { name = "transformers", marker = "extra == 'slu'" }, { name = "transformers", marker = "extra == 'speechlm2'" }, - { name = "transformers", marker = "extra == 'test'" }, { name = "transformers", marker = "extra == 'tts'" }, - { name = "wandb", marker = "extra == 'all'" }, { name = "wandb", marker = "extra == 'asr'" }, { name = "wandb", marker = "extra == 'audio'" }, { name = "wandb", marker = "extra == 'common'" }, @@ -5608,7 +5765,6 @@ requires-dist = [ { name = "wandb", marker = "extra == 'lightning'" }, { name = "wandb", marker = "extra == 'slu'" }, { name = "wandb", marker = "extra == 'speechlm2'" }, - { name = "wandb", marker = "extra == 'test'" }, { name = "wandb", marker = "extra == 'tts'" }, { name = "webdataset", marker = "extra == 'all'", specifier = ">=0.2.86" }, { name = "webdataset", marker = "extra == 'asr'", specifier = ">=0.2.86" }, @@ -5618,11 +5774,8 @@ requires-dist = [ { name = "webdataset", marker = "extra == 'lightning'", specifier = ">=0.2.86" }, { name = "webdataset", marker = "extra == 'slu'", specifier = ">=0.2.86" }, { name = "webdataset", marker = "extra == 'speechlm2'", specifier = ">=0.2.86" }, - { name = "webdataset", marker = "extra == 'test'", specifier = ">=0.2.86" }, { name = "webdataset", marker = "extra == 'tts'", specifier = ">=0.2.86" }, { name = "wget" }, - { name = "wget", marker = "extra == 'all'" }, - { name = "wget", marker = "extra == 'test'" }, { name = "whisper-normalizer", marker = "extra == 'all'" }, { name = "whisper-normalizer", marker = "extra == 'asr'" }, { name = "whisper-normalizer", marker = "extra == 'asr-only'" }, @@ -5630,22 +5783,46 @@ requires-dist = [ { name = "whisper-normalizer", marker = "extra == 'speechlm2'" }, { name = "whisper-normalizer", marker = "extra == 'tts'" }, { name = "wrapt" }, - { name = "wrapt", marker = "extra == 'all'" }, - { name = "wrapt", marker = "extra == 'test'" }, ] -provides-extras = ["test", "run", "core", "lightning", "common-only", "asr-only", "tts", "slu", "audio", "speechlm2-only", "all", "cu12", "cu13", "common", "asr", "speechlm2"] +provides-extras = ["run", "core", "lightning", "common-only", "asr-only", "tts", "slu", "audio", "speechlm2-only", "all", "cu12", "cu13", "common", "asr", "speechlm2"] [package.metadata.requires-dev] docs = [ + { name = "boto3" }, + { name = "jinja2" }, + { name = "latexcodec" }, { name = "myst-parser", specifier = ">=4.0.1" }, + { name = "numpy" }, { name = "nvidia-sphinx-theme", specifier = ">=0.0.8" }, + { name = "pydata-sphinx-theme" }, { name = "sphinx", specifier = ">=8.1.3" }, { name = "sphinx-autobuild", specifier = ">=2024.10.3" }, { name = "sphinx-autodoc2", specifier = ">=0.5.0" }, + { name = "sphinx-book-theme" }, { name = "sphinx-copybutton", specifier = ">=0.5.2" }, { name = "sphinxcontrib-bibtex" }, { name = "sphinxcontrib-mermaid" }, { name = "sphinxext-opengraph" }, + { name = "urllib3" }, + { name = "wrapt" }, +] +test = [ + { name = "black", specifier = "~=24.3" }, + { name = "click", specifier = ">=8.1" }, + { name = "coverage" }, + { name = "isort", specifier = ">5.1.0,<6.0.0" }, + { name = "parameterized" }, + { name = "pytest" }, + { name = "pytest-httpserver" }, + { name = "pytest-mock" }, + { name = "pytest-runner" }, + { name = "pytest-shard" }, + { name = "ruamel-yaml" }, + { name = "sphinx" }, + { name = "sphinxcontrib-bibtex" }, + { name = "wandb" }, + { name = "wget" }, + { name = "wrapt" }, ] [[package]] @@ -5892,7 +6069,8 @@ resolution-markers = [ "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'linux'", ] dependencies = [ - { name = "cuda-bindings", marker = "sys_platform != 'darwin'" }, + { name = "cuda-bindings", version = "13.0.3", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "cuda-bindings", version = "13.2.0", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "cuda-core", marker = "sys_platform != 'darwin'" }, { name = "cuda-pathfinder", marker = "sys_platform != 'darwin'" }, { name = "numba", marker = "sys_platform != 'darwin'" }, @@ -5918,9 +6096,13 @@ wheels = [ [package.optional-dependencies] cu13 = [ - { name = "cuda-bindings", marker = "sys_platform != 'darwin'" }, - { name = "cuda-toolkit", extra = ["cccl", "cudart", "nvrtc", "nvvm"], marker = "(sys_platform != 'darwin' and extra == 'extra-12-nemo-toolkit-cu13') or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-nvjitlink", marker = "sys_platform != 'darwin'" }, + { name = "cuda-bindings", version = "13.0.3", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "cuda-bindings", version = "13.2.0", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "cuda-toolkit", version = "13.2.0", source = { registry = "https://pypi.org/simple" }, extra = ["cccl", "cudart", "nvrtc", "nvvm"], marker = "(sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "cuda-toolkit", version = "13.2.1", source = { registry = "https://pypi.org/simple" }, extra = ["cccl", "cudart", "nvrtc", "nvvm"], marker = "(sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvjitlink", version = "13.0.88", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine == 's390x' and sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine != 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvjitlink", version = "13.2.51", source = { registry = "https://pypi.org/simple" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvjitlink", version = "13.3.33", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 's390x' and sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu13') or (platform_machine == 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] [[package]] @@ -6255,7 +6437,8 @@ dependencies = [ { name = "lightning" }, { name = "nv-one-logger-core" }, { name = "nv-one-logger-training-telemetry" }, - { name = "setuptools" }, + { name = "setuptools", version = "81.0.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "setuptools", version = "82.0.1", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform != 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "strenum" }, ] sdist = { url = "https://files.pythonhosted.org/packages/0c/d0/3475b7ab17d367362f650fb0419e8669f41e63c1018f4a8ac2fbecfd2e85/nv_one_logger_pytorch_lightning_integration-2.3.1.tar.gz", hash = "sha256:b32d99b6a8f02a16538bcade939b0a7edd7249e936aacefe336b5519447340c3", size = 10979, upload-time = "2025-10-29T21:22:10.464Z" } @@ -6278,19 +6461,63 @@ wheels = [ ] [[package]] -name = "nvidia-cublas-cu12" -version = "12.9.1.4" +name = "nvidia-cublas" +version = "13.1.0.3" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'linux'", +] wheels = [ - { url = "https://files.pythonhosted.org/packages/82/6c/90d3f532f608a03a13c1d6c16c266ffa3828e8011b1549d3b61db2ad59f5/nvidia_cublas_cu12-12.9.1.4-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:7a950dae01add3b415a5a5cdc4ec818fb5858263e9cca59004bb99fdbbd3a5d6", size = 575006342, upload-time = "2025-06-05T20:04:16.902Z" }, - { url = "https://files.pythonhosted.org/packages/77/3c/aa88abe01f3be3d1f8f787d1d33dc83e76fec05945f9a28fbb41cfb99cd5/nvidia_cublas_cu12-12.9.1.4-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:453611eb21a7c1f2c2156ed9f3a45b691deda0440ec550860290dc901af5b4c2", size = 581242350, upload-time = "2025-06-05T20:04:51.979Z" }, - { url = "https://files.pythonhosted.org/packages/45/a1/a17fade6567c57452cfc8f967a40d1035bb9301db52f27808167fbb2be2f/nvidia_cublas_cu12-12.9.1.4-py3-none-win_amd64.whl", hash = "sha256:1e5fee10662e6e52bd71dec533fbbd4971bb70a5f24f3bc3793e5c2e9dc640bf", size = 553153899, upload-time = "2025-06-05T20:13:35.556Z" }, + { url = "https://files.pythonhosted.org/packages/e1/a5/fce49e2ae977e0ccc084e5adafceb4f0ac0c8333cb6863501618a7277f67/nvidia_cublas-13.1.0.3-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:c86fc7f7ae36d7528288c5d88098edcb7b02c633d262e7ddbb86b0ad91be5df2", size = 542851226, upload-time = "2025-10-09T08:59:04.818Z" }, + { url = "https://files.pythonhosted.org/packages/e7/44/423ac00af4dd95a5aeb27207e2c0d9b7118702149bf4704c3ddb55bb7429/nvidia_cublas-13.1.0.3-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:ee8722c1f0145ab246bccb9e452153b5e0515fd094c3678df50b2a0888b8b171", size = 423133236, upload-time = "2025-10-09T08:59:32.536Z" }, + { url = "https://files.pythonhosted.org/packages/10/f5/f50bc3f5c2bb57ab8f5b4d78bc1146b57810d42cb8fcb28cbe2e14050376/nvidia_cublas-13.1.0.3-py3-none-win_amd64.whl", hash = "sha256:2a3b94a37def342471c59fad7856caee4926809a72dd5270155d6a31b5b277be", size = 404355960, upload-time = "2025-10-09T09:07:00.987Z" }, +] + +[[package]] +name = "nvidia-cublas" +version = "13.4.0.1" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", +] +dependencies = [ + { name = "nvidia-cuda-nvrtc", version = "13.2.78", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 's390x' and sys_platform == 'linux') or (platform_machine == 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/d0/48/8571e55aaabbd112f06a39a71fbc3abf0b8a0d450921816a13a6d5e8fa0b/nvidia_cublas-13.4.0.1-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:705d7d214fbb20f134415ecadc488abf74f444c155a6555dec5687404afb18a9", size = 513051304, upload-time = "2026-04-13T09:49:32.758Z" }, + { url = "https://files.pythonhosted.org/packages/3d/ec/c9b2998aebe3149dee2769e501257e048c8701de51263925f4dff76ddedc/nvidia_cublas-13.4.0.1-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:53bf22e2ccbf644db74b6cc21cea7f5efb1a52aa64515438b430abbd05af4106", size = 404872465, upload-time = "2026-04-13T09:50:12.116Z" }, + { url = "https://files.pythonhosted.org/packages/d6/97/a7ac03495c1ca3c250f12f094dec46e945e38c06f24f3b11c168894a37d1/nvidia_cublas-13.4.0.1-py3-none-win_amd64.whl", hash = "sha256:37a142e2643c928f498f12f4f61c2ecd1c6c6c9608e16f6a4d45ec8d5d057733", size = 388919782, upload-time = "2026-04-13T10:09:36.942Z" }, ] [[package]] name = "nvidia-cuda-cccl" version = "13.2.27" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", +] wheels = [ { url = "https://files.pythonhosted.org/packages/f4/9f/0678a8761631ff399e41876352b2c041c05a4630eb2888ef53f74776cd4d/nvidia_cuda_cccl-13.2.27-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8e5c228bf1990eecd8d770d58f850b15923f78d3df1299e71c0c45054afc56c3", size = 3652707, upload-time = "2026-03-09T09:28:09.177Z" }, { url = "https://files.pythonhosted.org/packages/5c/c6/0d0a3ba1fb6d683bfbc27f5e622aa0c954808194851b762613eee274695c/nvidia_cuda_cccl-13.2.27-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f71b5dbc838867d1281715f34e642263098ea2ce59d85e9192f140ee24744f49", size = 3599896, upload-time = "2026-03-09T09:28:39.064Z" }, @@ -6298,19 +6525,53 @@ wheels = [ ] [[package]] -name = "nvidia-cuda-cupti-cu12" -version = "12.9.79" +name = "nvidia-cuda-cccl" +version = "13.2.75" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/45/a4/15fbcc9f3dd481a37321bee6610388435611399853ac0f235220a8136377/nvidia_cuda_cccl-13.2.75-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d3b4129c84a8b94ac09fc3042c98c71bd0821e140f0ae213b319a9a86506d781", size = 3652758, upload-time = "2026-04-13T09:36:16.648Z" }, + { url = "https://files.pythonhosted.org/packages/92/87/d23db8276b76b4a7e4a702eebdc0a70e3b56c17b4dcd980ecb0f68b022e1/nvidia_cuda_cccl-13.2.75-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:11a2b1948e8709805a0ccf04441baf5279a9219c13eb11dc13d57bb023151768", size = 3600170, upload-time = "2026-04-13T09:36:35.192Z" }, + { url = "https://files.pythonhosted.org/packages/40/f0/24c99c6867679a46b78aa9dfff649c04bf3f0a74aef4652c1ed1cdbf960b/nvidia_cuda_cccl-13.2.75-py3-none-win_amd64.whl", hash = "sha256:5d17f254bb0151b196a116301c1716395903d714c7e871cd8791b998b6a77c63", size = 3523477, upload-time = "2026-04-13T10:03:27.098Z" }, +] + +[[package]] +name = "nvidia-cuda-cupti" +version = "13.2.75" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/b4/78/351b5c8cdbd9a6b4fb0d6ee73fb176dcdc1b6b6ad47c2ffff5ae8ca4a1f7/nvidia_cuda_cupti_cu12-12.9.79-py3-none-manylinux_2_25_aarch64.whl", hash = "sha256:791853b030602c6a11d08b5578edfb957cadea06e9d3b26adbf8d036135a4afe", size = 10077166, upload-time = "2025-06-05T20:01:01.385Z" }, - { url = "https://files.pythonhosted.org/packages/c1/2e/b84e32197e33f39907b455b83395a017e697c07a449a2b15fd07fc1c9981/nvidia_cuda_cupti_cu12-12.9.79-py3-none-manylinux_2_25_x86_64.whl", hash = "sha256:096bcf334f13e1984ba36685ad4c1d6347db214de03dbb6eebb237b41d9d934f", size = 10814997, upload-time = "2025-06-05T20:01:10.168Z" }, - { url = "https://files.pythonhosted.org/packages/3b/b4/298983ab1a83de500f77d0add86d16d63b19d1a82c59f8eaf04f90445703/nvidia_cuda_cupti_cu12-12.9.79-py3-none-win_amd64.whl", hash = "sha256:1848a9380067560d5bee10ed240eecc22991713e672c0515f9c3d9396adf93c8", size = 7730496, upload-time = "2025-06-05T20:11:26.444Z" }, + { url = "https://files.pythonhosted.org/packages/4e/e2/b7bbe4e39781024fcc698fa3d0a788cd9559d9cba5e23fdbcff0a27783e4/nvidia_cuda_cupti-13.2.75-py3-none-manylinux_2_25_aarch64.whl", hash = "sha256:003157a0ca04d34a1f83a764dcbe36eabceda5a771e9a2cc85a461b2765888b6", size = 11759634, upload-time = "2026-04-13T09:40:35.162Z" }, + { url = "https://files.pythonhosted.org/packages/b7/2d/cbf8f6288259c502165282fdaa2b733daae98434e3f2aee2b7952ba87c6f/nvidia_cuda_cupti-13.2.75-py3-none-manylinux_2_25_x86_64.whl", hash = "sha256:f75aca6bef89c625a4076a820302bb06764daa1d21595286f6bee5e237d3a187", size = 11986992, upload-time = "2026-04-13T09:40:54.517Z" }, + { url = "https://files.pythonhosted.org/packages/a8/cc/05314fcb3bd2d00eeab989f1dd30e16a99361e3d0d5cb6174003c4bed9f1/nvidia_cuda_cupti-13.2.75-py3-none-win_amd64.whl", hash = "sha256:39bd75dd3ab29ad26fabd25738cc6f6cd3452d8f8f1a1ac482c395e977eaaa55", size = 8175944, upload-time = "2026-04-13T10:04:48.902Z" }, ] [[package]] name = "nvidia-cuda-nvrtc" version = "13.2.51" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", +] wheels = [ { url = "https://files.pythonhosted.org/packages/5e/21/2fd0aa5a03a8c71962d281084ac44ae7b3b6690d6163ffd7d6486fdb7aa8/nvidia_cuda_nvrtc-13.2.51-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:c88076f32cbbd26e7ebd2107d4b093dd8667e2a90b23b3273d028f3daf574d2e", size = 47019178, upload-time = "2026-03-09T09:38:11.629Z" }, { url = "https://files.pythonhosted.org/packages/27/ce/ef85d9b59e3fcb0e44041d72de857bf4e87f772d747c603018acbb4addb1/nvidia_cuda_nvrtc-13.2.51-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:8d4ddd23dbd4878eea5d970a70631d2668381fc2bdc5ec16cd5faa8c2db24d03", size = 44754448, upload-time = "2026-03-09T09:37:38.021Z" }, @@ -6318,19 +6579,43 @@ wheels = [ ] [[package]] -name = "nvidia-cuda-nvrtc-cu12" -version = "12.9.86" +name = "nvidia-cuda-nvrtc" +version = "13.2.78" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", +] wheels = [ - { url = "https://files.pythonhosted.org/packages/b8/85/e4af82cc9202023862090bfca4ea827d533329e925c758f0cde964cb54b7/nvidia_cuda_nvrtc_cu12-12.9.86-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:210cf05005a447e29214e9ce50851e83fc5f4358df8b453155d5e1918094dcb4", size = 89568129, upload-time = "2025-06-05T20:02:41.973Z" }, - { url = "https://files.pythonhosted.org/packages/64/eb/c2295044b8f3b3b08860e2f6a912b702fc92568a167259df5dddb78f325e/nvidia_cuda_nvrtc_cu12-12.9.86-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:096d4de6bda726415dfaf3198d4f5c522b8e70139c97feef5cd2ca6d4cd9cead", size = 44528905, upload-time = "2025-06-05T20:02:29.754Z" }, - { url = "https://files.pythonhosted.org/packages/52/de/823919be3b9d0ccbf1f784035423c5f18f4267fb0123558d58b813c6ec86/nvidia_cuda_nvrtc_cu12-12.9.86-py3-none-win_amd64.whl", hash = "sha256:72972ebdcf504d69462d3bcd67e7b81edd25d0fb85a2c46d3ea3517666636349", size = 76408187, upload-time = "2025-06-05T20:12:27.819Z" }, + { url = "https://files.pythonhosted.org/packages/5f/96/237b40b171e06eb65905375c4ad5c96f78c2f861ac6e8ae7f650d95e1dfd/nvidia_cuda_nvrtc-13.2.78-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:a9049031da08cbedd0c20e3470e5a978dc330af0e0326b3b05774718c665dc3e", size = 47019062, upload-time = "2026-04-13T09:45:33.875Z" }, + { url = "https://files.pythonhosted.org/packages/af/be/8476aa006686fb264d61de43e0408a8dbd001003a702574759b25e645587/nvidia_cuda_nvrtc-13.2.78-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:a50367a7e2a0bd00fb27e5648179149cc7a60e7c7811740a5ff559f06234526d", size = 44754755, upload-time = "2026-04-13T09:44:58.919Z" }, + { url = "https://files.pythonhosted.org/packages/48/35/41b84ff9b4a9acc42590be44e69f32fc867a57d7018e87c532019d627f17/nvidia_cuda_nvrtc-13.2.78-py3-none-win_amd64.whl", hash = "sha256:46aff2df5615c408f23fb968a75e5641060f89fa611a85af51a387dff9bf375b", size = 40817783, upload-time = "2026-04-13T10:06:31.711Z" }, ] [[package]] name = "nvidia-cuda-runtime" version = "13.2.51" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", +] wheels = [ { url = "https://files.pythonhosted.org/packages/12/ec/0fa54349c6cf17054746529a3b99c6bc0049a229ac7fe667a24a244f79fa/nvidia_cuda_runtime-13.2.51-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:dfcccf62936b211a86e3cbc5fcc30647af8e601744e987f6a5925ed045b58672", size = 2340606, upload-time = "2026-03-09T09:29:42.659Z" }, { url = "https://files.pythonhosted.org/packages/a6/5a/b116ad2b7e574d691458ca0139ab4e9f26beed62184c85570636ce127b7f/nvidia_cuda_runtime-13.2.51-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:9c43b06a52c5b9316e19abc047236932c4d5c729969918a83223c4d2a4132f9a", size = 2321923, upload-time = "2026-03-09T09:30:13.061Z" }, @@ -6338,111 +6623,157 @@ wheels = [ ] [[package]] -name = "nvidia-cuda-runtime-cu12" -version = "12.9.79" +name = "nvidia-cuda-runtime" +version = "13.2.75" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", +] wheels = [ - { url = "https://files.pythonhosted.org/packages/bc/e0/0279bd94539fda525e0c8538db29b72a5a8495b0c12173113471d28bce78/nvidia_cuda_runtime_cu12-12.9.79-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:83469a846206f2a733db0c42e223589ab62fd2fabac4432d2f8802de4bded0a4", size = 3515012, upload-time = "2025-06-05T20:00:35.519Z" }, - { url = "https://files.pythonhosted.org/packages/bc/46/a92db19b8309581092a3add7e6fceb4c301a3fd233969856a8cbf042cd3c/nvidia_cuda_runtime_cu12-12.9.79-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:25bba2dfb01d48a9b59ca474a1ac43c6ebf7011f1b0b8cc44f54eb6ac48a96c3", size = 3493179, upload-time = "2025-06-05T20:00:53.735Z" }, - { url = "https://files.pythonhosted.org/packages/59/df/e7c3a360be4f7b93cee39271b792669baeb3846c58a4df6dfcf187a7ffab/nvidia_cuda_runtime_cu12-12.9.79-py3-none-win_amd64.whl", hash = "sha256:8e018af8fa02363876860388bd10ccb89eb9ab8fb0aa749aaf58430a9f7c4891", size = 3591604, upload-time = "2025-06-05T20:11:17.036Z" }, + { url = "https://files.pythonhosted.org/packages/f1/40/56a70b5a4e0a2881a1b7c172fea8025ab6b3cfb2de61c743fb7974d1ded4/nvidia_cuda_runtime-13.2.75-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:36e539e8deb01568025830c1454216c26ef4b4529507220b1d8ef739bf5c6439", size = 2339755, upload-time = "2026-04-13T09:37:53.791Z" }, + { url = "https://files.pythonhosted.org/packages/dc/74/f1493b0774c6eaf0234512bb650e1ab90ce8f61fecf0b4aaf1fb416f571e/nvidia_cuda_runtime-13.2.75-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:72bf454902da594e0b833cadeddc8b7100ce1c7cf7ed9023943931be1aa913b7", size = 2321965, upload-time = "2026-04-13T09:38:26.359Z" }, + { url = "https://files.pythonhosted.org/packages/ea/ea/efd56431c409f292739b0f69ceae9f1469599e9e228706b4f1fad45a32ba/nvidia_cuda_runtime-13.2.75-py3-none-win_amd64.whl", hash = "sha256:16a2ff1b786d52c7b4d4439c7f5fc05cf9e086071f51efd5163989dee65bd4ea", size = 3154350, upload-time = "2026-04-13T10:04:17.355Z" }, ] [[package]] -name = "nvidia-cudnn-cu12" -version = "9.10.2.21" +name = "nvidia-cudnn-cu13" +version = "9.20.0.48" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "nvidia-cublas-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-cublas", version = "13.1.0.3", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine == 's390x' and sys_platform == 'linux') or (platform_machine != 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-cublas", version = "13.4.0.1", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 's390x' and sys_platform == 'linux') or (platform_machine == 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/fa/41/e79269ce215c857c935fd86bcfe91a451a584dfc27f1e068f568b9ad1ab7/nvidia_cudnn_cu12-9.10.2.21-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:c9132cc3f8958447b4910a1720036d9eff5928cc3179b0a51fb6d167c6cc87d8", size = 705026878, upload-time = "2025-06-06T21:52:51.348Z" }, - { url = "https://files.pythonhosted.org/packages/ba/51/e123d997aa098c61d029f76663dedbfb9bc8dcf8c60cbd6adbe42f76d049/nvidia_cudnn_cu12-9.10.2.21-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:949452be657fa16687d0930933f032835951ef0892b37d2d53824d1a84dc97a8", size = 706758467, upload-time = "2025-06-06T21:54:08.597Z" }, - { url = "https://files.pythonhosted.org/packages/3d/90/0bd6e586701b3a890fd38aa71c387dab4883d619d6e5ad912ccbd05bfd67/nvidia_cudnn_cu12-9.10.2.21-py3-none-win_amd64.whl", hash = "sha256:c6288de7d63e6cf62988f0923f96dc339cea362decb1bf5b3141883392a7d65e", size = 692992268, upload-time = "2025-06-06T21:55:18.114Z" }, + { url = "https://files.pythonhosted.org/packages/56/c5/83384d846b2fd17c44bd499b36c75a45ed4f095fbbb2252294e89cea5c5c/nvidia_cudnn_cu13-9.20.0.48-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:e31454ae00094b0c55319d9d15b6fa2fc50a9e1c0f5c8c80fb75258234e731e1", size = 444574296, upload-time = "2026-03-09T19:28:27.751Z" }, + { url = "https://files.pythonhosted.org/packages/6e/5e/edb9c0ae051602c3ccaffe424256463636d639e27d7f302dde9975ef9e7a/nvidia_cudnn_cu13-9.20.0.48-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:0c45dd8eeb50b603f07995b1b300c62ffe6a1980482b82b3bcf94a4ca9d49304", size = 366173588, upload-time = "2026-03-09T19:29:34.474Z" }, + { url = "https://files.pythonhosted.org/packages/78/39/21507455b1bca8b5702a9e9fc6ce73735f216f558dac2c9ede58e4d456b8/nvidia_cudnn_cu13-9.20.0.48-py3-none-win_amd64.whl", hash = "sha256:af8139732b99c0118be65ea5aac97f0d46018f8c552889e49d2fb0c6261a4a24", size = 350712614, upload-time = "2026-03-09T19:31:11.398Z" }, ] [[package]] -name = "nvidia-cufft-cu12" -version = "11.4.1.4" +name = "nvidia-cufft" +version = "12.2.0.46" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "nvidia-nvjitlink-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvjitlink", version = "13.3.33", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 's390x' and sys_platform == 'linux') or (platform_machine == 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/9b/2b/76445b0af890da61b501fde30650a1a4bd910607261b209cccb5235d3daa/nvidia_cufft_cu12-11.4.1.4-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:1a28c9b12260a1aa7a8fd12f5ebd82d027963d635ba82ff39a1acfa7c4c0fbcf", size = 200822453, upload-time = "2025-06-05T20:05:27.889Z" }, - { url = "https://files.pythonhosted.org/packages/95/f4/61e6996dd20481ee834f57a8e9dca28b1869366a135e0d42e2aa8493bdd4/nvidia_cufft_cu12-11.4.1.4-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c67884f2a7d276b4b80eb56a79322a95df592ae5e765cf1243693365ccab4e28", size = 200877592, upload-time = "2025-06-05T20:05:45.862Z" }, - { url = "https://files.pythonhosted.org/packages/20/ee/29955203338515b940bd4f60ffdbc073428f25ef9bfbce44c9a066aedc5c/nvidia_cufft_cu12-11.4.1.4-py3-none-win_amd64.whl", hash = "sha256:8e5bfaac795e93f80611f807d42844e8e27e340e0cde270dcb6c65386d795b80", size = 200067309, upload-time = "2025-06-05T20:13:59.762Z" }, + { url = "https://files.pythonhosted.org/packages/be/b1/6e36381739b51e692d91646298ad5685c562929b899331c2bb6e9722a176/nvidia_cufft-12.2.0.46-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:2e8f3a22c2745f95327b7639ba2868ea2cbd5d3131ebe6313394e24164054f41", size = 218244743, upload-time = "2026-04-13T09:51:24.75Z" }, + { url = "https://files.pythonhosted.org/packages/36/3e/8d717a6e1f6e27b85b64650b1104dbcf6108c9dc7e27e9e26a0d8e936cc5/nvidia_cufft-12.2.0.46-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a9667ae4d81b9e54ddbbad24a9e72334f89d4fc184566d05ef028e2760c820eb", size = 218258098, upload-time = "2026-04-13T09:52:04.915Z" }, + { url = "https://files.pythonhosted.org/packages/03/34/8bed3c530c0c732de39281ca51fe4ba83503cfc055b7935e8377f7cbb9f8/nvidia_cufft-12.2.0.46-py3-none-win_amd64.whl", hash = "sha256:e35b0cb44a971dad5cbbf8d166fb89061f329b41e466631ee85d301628f1b943", size = 217463595, upload-time = "2026-04-13T10:10:12.17Z" }, ] [[package]] -name = "nvidia-cufile-cu12" -version = "1.14.1.1" +name = "nvidia-cufile" +version = "1.17.1.22" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/ad/28/b960e06d705a440c030edd84e16888ee14c743390bdb2a6368e92ffe8ef8/nvidia_cufile_cu12-1.14.1.1-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:9552e2231792e94b1ff17bc99e958cc0e6bbbaa4a9d91fa2dbeed97716628fe6", size = 1210714, upload-time = "2025-06-05T20:06:11.898Z" }, - { url = "https://files.pythonhosted.org/packages/b9/d2/110af3a1f77999d5eebf6ffae5d2305ab839e53c76eec3696640cc25b35d/nvidia_cufile_cu12-1.14.1.1-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:8dea77590761e02cb6dd955a57cb6414c58aa3cb1b7adbf9919869a11509cf65", size = 1135994, upload-time = "2025-06-05T20:06:03.952Z" }, + { url = "https://files.pythonhosted.org/packages/fe/fd/4b4157512a131a51e1514d40d0199b1c5b7b10c6856db274ff22e5fe15be/nvidia_cufile-1.17.1.22-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:bec33d7f1f12691dce330275246587569c2ed90b1ce43b0f94b3e1ce9268744b", size = 1226736, upload-time = "2026-04-13T09:52:40.142Z" }, + { url = "https://files.pythonhosted.org/packages/23/c5/661a73a9042fc5f81cdd5fe6e89f4170b3b33f7962e709987e2b5e5f1381/nvidia_cufile-1.17.1.22-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:87feaf8c3ad20d3d03a01933181801ff6892bace5c8f0b1e4b48f319d3e62d36", size = 1387670, upload-time = "2026-04-13T09:52:57.783Z" }, ] [[package]] -name = "nvidia-curand-cu12" -version = "10.3.10.19" +name = "nvidia-curand" +version = "10.4.2.55" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/14/1c/2a45afc614d99558d4a773fa740d8bb5471c8398eeed925fc0fcba020173/nvidia_curand_cu12-10.3.10.19-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:de663377feb1697e1d30ed587b07d5721fdd6d2015c738d7528a6002a6134d37", size = 68292066, upload-time = "2025-05-01T19:39:13.595Z" }, - { url = "https://files.pythonhosted.org/packages/31/44/193a0e171750ca9f8320626e8a1f2381e4077a65e69e2fb9708bd479e34a/nvidia_curand_cu12-10.3.10.19-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:49b274db4780d421bd2ccd362e1415c13887c53c214f0d4b761752b8f9f6aa1e", size = 68295626, upload-time = "2025-05-01T19:39:38.885Z" }, - { url = "https://files.pythonhosted.org/packages/e5/98/1bd66fd09cbe1a5920cb36ba87029d511db7cca93979e635fd431ad3b6c0/nvidia_curand_cu12-10.3.10.19-py3-none-win_amd64.whl", hash = "sha256:e8129e6ac40dc123bd948e33d3e11b4aa617d87a583fa2f21b3210e90c743cde", size = 68774847, upload-time = "2025-05-01T19:48:52.93Z" }, + { url = "https://files.pythonhosted.org/packages/ee/7c/7c2042b5badc251236bc1f23627d5554cf2ecff37e92ea0a9d39dfc20a61/nvidia_curand-10.4.2.55-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:342e40ddcaedc92aedc72839e0c10064096fceea2f1d0eb57951f86d2901f8c0", size = 62372157, upload-time = "2026-04-13T09:53:32.34Z" }, + { url = "https://files.pythonhosted.org/packages/f4/bc/f02a1d180d288e49b1a4548698b59755e9c485ee39c041fdeaf4d2cc2117/nvidia_curand-10.4.2.55-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:b4080cab49d4939f8e46b2c195c76c698d2289835c36ede558836daa40000e70", size = 59920450, upload-time = "2026-04-13T09:54:07.224Z" }, + { url = "https://files.pythonhosted.org/packages/b7/72/9301996f4d54bd770001e05fa182be1ef5c81deccd98980b296d3b2fb659/nvidia_curand-10.4.2.55-py3-none-win_amd64.whl", hash = "sha256:ce09678a852f4c224738abc56ea196bf981bb0db25b720438bd8416c5d52f056", size = 55508324, upload-time = "2026-04-13T10:10:46.673Z" }, ] [[package]] -name = "nvidia-cusolver-cu12" -version = "11.7.5.82" +name = "nvidia-cusolver" +version = "12.2.0.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "nvidia-cublas-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cusparse-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-nvjitlink-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-cublas", version = "13.4.0.1", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 's390x' and sys_platform == 'linux') or (platform_machine == 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-cusparse", marker = "(platform_machine != 's390x' and sys_platform == 'linux') or (platform_machine == 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvjitlink", version = "13.3.33", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 's390x' and sys_platform == 'linux') or (platform_machine == 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/03/99/686ff9bf3a82a531c62b1a5c614476e8dfa24a9d89067aeedf3592ee4538/nvidia_cusolver_cu12-11.7.5.82-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:62efa83e4ace59a4c734d052bb72158e888aa7b770e1a5f601682f16fe5b4fd2", size = 337869834, upload-time = "2025-06-05T20:06:53.125Z" }, - { url = "https://files.pythonhosted.org/packages/33/40/79b0c64d44d6c166c0964ec1d803d067f4a145cca23e23925fd351d0e642/nvidia_cusolver_cu12-11.7.5.82-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:15da72d1340d29b5b3cf3fd100e3cd53421dde36002eda6ed93811af63c40d88", size = 338117415, upload-time = "2025-06-05T20:07:16.809Z" }, - { url = "https://files.pythonhosted.org/packages/32/5d/feb7f86b809f89b14193beffebe24cf2e4bf7af08372ab8cdd34d19a65a0/nvidia_cusolver_cu12-11.7.5.82-py3-none-win_amd64.whl", hash = "sha256:77666337237716783c6269a658dea310195cddbd80a5b2919b1ba8735cec8efd", size = 326215953, upload-time = "2025-06-05T20:14:41.76Z" }, + { url = "https://files.pythonhosted.org/packages/94/21/21e5c491a8285a6ed039cbb8c60ec13ff3aff60c669e1caa4adaeb71f997/nvidia_cusolver-12.2.0.1-py3-none-manylinux_2_27_aarch64.whl", hash = "sha256:c9def09fcf300b9465cdf800142abf10149df28c4290bdf9e7b4a700480d31d7", size = 249744985, upload-time = "2026-04-13T09:54:33.757Z" }, + { url = "https://files.pythonhosted.org/packages/6b/97/a3c41eac54c89f6aac788d2b3ccd6642b32aa6b79650af3dedb8ee7c2bfa/nvidia_cusolver-12.2.0.1-py3-none-manylinux_2_27_x86_64.whl", hash = "sha256:4693ea3c2a5d20369da7b5a4970a41df9b40f1b6f2ef9909c95f7c8c8c5ffb4d", size = 227391570, upload-time = "2026-04-13T09:55:12.999Z" }, + { url = "https://files.pythonhosted.org/packages/ee/60/4d8cd064a29e53f6df1e1f22791d46457063191fbe4267caf1f5d58f70d6/nvidia_cusolver-12.2.0.1-py3-none-win_amd64.whl", hash = "sha256:0776a83624e39a277cb26cc064164a70b7e89a594fb950bf0771be20c8eb8172", size = 217210178, upload-time = "2026-04-13T10:11:25.025Z" }, ] [[package]] -name = "nvidia-cusparse-cu12" -version = "12.5.10.65" +name = "nvidia-cusparse" +version = "12.7.10.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "nvidia-nvjitlink-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvjitlink", version = "13.3.33", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine != 's390x' and sys_platform == 'linux') or (platform_machine == 's390x' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] wheels = [ - { url = "https://files.pythonhosted.org/packages/5e/6f/8710fbd17cdd1d0fc3fea7d36d5b65ce1933611c31e1861da330206b253a/nvidia_cusparse_cu12-12.5.10.65-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:221c73e7482dd93eda44e65ce567c031c07e2f93f6fa0ecd3ba876a195023e83", size = 366359408, upload-time = "2025-06-05T20:07:42.501Z" }, - { url = "https://files.pythonhosted.org/packages/12/46/b0fd4b04f86577921feb97d8e2cf028afe04f614d17fb5013de9282c9216/nvidia_cusparse_cu12-12.5.10.65-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:73060ce019ac064a057267c585bf1fd5a353734151f87472ff02b2c5c9984e78", size = 366465088, upload-time = "2025-06-05T20:08:20.413Z" }, - { url = "https://files.pythonhosted.org/packages/73/ef/063500c25670fbd1cbb0cd3eb7c8a061585b53adb4dd8bf3492bb49b0df3/nvidia_cusparse_cu12-12.5.10.65-py3-none-win_amd64.whl", hash = "sha256:9e487468a22a1eaf1fbd1d2035936a905feb79c4ce5c2f67626764ee4f90227c", size = 362504719, upload-time = "2025-06-05T20:15:17.947Z" }, + { url = "https://files.pythonhosted.org/packages/b5/09/9f1fa88dd305e838b71f2ca4e50064e7cbdf2e15cd6410d9e1b74066cc41/nvidia_cusparse-12.7.10.1-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:80cc98b38fdcf054a80bd9782fe2e63c66f90e202cac269f641357ccac5fe7e3", size = 168860233, upload-time = "2026-04-13T09:55:48.891Z" }, + { url = "https://files.pythonhosted.org/packages/b7/bd/bad43b37bcf13167637bef26399693d517b95092d742e8749eda5f4a85f3/nvidia_cusparse-12.7.10.1-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:f0d110640aa63e7182fa787cc245afa07c5fb84ac30f1c4029e4fa3012353172", size = 150855566, upload-time = "2026-04-13T09:56:29.21Z" }, + { url = "https://files.pythonhosted.org/packages/4c/ca/7b910f56e02a251df7ed59f8f5f628da7ffd2422bc3e43c292980b1578ec/nvidia_cusparse-12.7.10.1-py3-none-win_amd64.whl", hash = "sha256:8786474c768d147e9969d3fac96b46399eb5f397c57a2ad57c1d4cdc4bb59f65", size = 149165663, upload-time = "2026-04-13T10:12:04.286Z" }, ] [[package]] -name = "nvidia-cusparselt-cu12" -version = "0.7.1" +name = "nvidia-cusparselt-cu13" +version = "0.8.1" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/73/b9/598f6ff36faaece4b3c50d26f50e38661499ff34346f00e057760b35cc9d/nvidia_cusparselt_cu12-0.7.1-py3-none-manylinux2014_aarch64.whl", hash = "sha256:8878dce784d0fac90131b6817b607e803c36e629ba34dc5b433471382196b6a5", size = 283835557, upload-time = "2025-02-26T00:16:54.265Z" }, - { url = "https://files.pythonhosted.org/packages/56/79/12978b96bd44274fe38b5dde5cfb660b1d114f70a65ef962bcbbed99b549/nvidia_cusparselt_cu12-0.7.1-py3-none-manylinux2014_x86_64.whl", hash = "sha256:f1bb701d6b930d5a7cea44c19ceb973311500847f81b634d802b7b539dc55623", size = 287193691, upload-time = "2025-02-26T00:15:44.104Z" }, - { url = "https://files.pythonhosted.org/packages/2f/d8/a6b0d0d0c2435e9310f3e2bb0d9c9dd4c33daef86aa5f30b3681defd37ea/nvidia_cusparselt_cu12-0.7.1-py3-none-win_amd64.whl", hash = "sha256:f67fbb5831940ec829c9117b7f33807db9f9678dc2a617fbe781cac17b4e1075", size = 271020911, upload-time = "2025-02-26T00:14:47.204Z" }, + { url = "https://files.pythonhosted.org/packages/46/e1/cdc1797eadf82d3a9a575a19b33fdc871a97edbec42c00b5b5e914f4aff4/nvidia_cusparselt_cu13-0.8.1-py3-none-manylinux2014_aarch64.whl", hash = "sha256:4dca476c50bf4780d46cd0bfbd82e2bc10a08e4fef7950917ce8d7578d22a23f", size = 221051344, upload-time = "2025-09-05T18:49:51.289Z" }, + { url = "https://files.pythonhosted.org/packages/34/7d/2661f2fb3ac4302f3a246f5fc030213ac60c1fe0bce84f9783dbd831dbb7/nvidia_cusparselt_cu13-0.8.1-py3-none-manylinux2014_x86_64.whl", hash = "sha256:786ce87568c303fadb5afcc7102d454cd3040d75f6f8626f5db460d1871f4dd0", size = 170148586, upload-time = "2025-09-05T18:50:50.248Z" }, + { url = "https://files.pythonhosted.org/packages/31/83/f3647ce26916c94a6ca4ff1810623e2c405cff2dea6e78d29516b2514df9/nvidia_cusparselt_cu13-0.8.1-py3-none-win_amd64.whl", hash = "sha256:dccbd362f91a7b9024d1f55ee9f548ac065027ff15d8c8b0db889ab3a8f31215", size = 156885108, upload-time = "2025-09-05T18:51:35.958Z" }, ] [[package]] -name = "nvidia-nccl-cu12" -version = "2.27.5" +name = "nvidia-nccl-cu13" +version = "2.29.7" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/bb/1c/857979db0ef194ca5e21478a0612bcdbbe59458d7694361882279947b349/nvidia_nccl_cu12-2.27.5-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:31432ad4d1fb1004eb0c56203dc9bc2178a1ba69d1d9e02d64a6938ab5e40e7a", size = 322400625, upload-time = "2025-06-26T04:11:04.496Z" }, - { url = "https://files.pythonhosted.org/packages/6e/89/f7a07dc961b60645dbbf42e80f2bc85ade7feb9a491b11a1e973aa00071f/nvidia_nccl_cu12-2.27.5-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ad730cf15cb5d25fe849c6e6ca9eb5b76db16a80f13f425ac68d8e2e55624457", size = 322348229, upload-time = "2025-06-26T04:11:28.385Z" }, + { url = "https://files.pythonhosted.org/packages/72/0d/daf50d44177ee0cbc7ff0a0c91eb5ff676c82be42f9a970bc7597f440c3a/nvidia_nccl_cu13-2.29.7-py3-none-manylinux_2_18_aarch64.whl", hash = "sha256:674a12383e3c38a1bcccae7d4f3633b37852230b6047883cb2f4c2d1b36d9bf5", size = 206014712, upload-time = "2026-03-03T05:34:20.843Z" }, + { url = "https://files.pythonhosted.org/packages/67/f4/58e4e91b6919367c7aafb8e36fce9aad1a3047e536bf7e2fd560927d3a4c/nvidia_nccl_cu13-2.29.7-py3-none-manylinux_2_18_x86_64.whl", hash = "sha256:edd81538446786ec3b73972543e53bb43bcaf0bfc8ef76cb679fcc390ffe136d", size = 205976000, upload-time = "2026-03-03T05:36:24.472Z" }, +] + +[[package]] +name = "nvidia-nvjitlink" +version = "13.0.88" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'linux'", +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/56/7a/123e033aaff487c77107195fa5a2b8686795ca537935a24efae476c41f05/nvidia_nvjitlink-13.0.88-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:13a74f429e23b921c1109976abefacc69835f2f433ebd323d3946e11d804e47b", size = 40713933, upload-time = "2025-09-04T08:35:43.553Z" }, + { url = "https://files.pythonhosted.org/packages/ab/2c/93c5250e64df4f894f1cbb397c6fd71f79813f9fd79d7cd61de3f97b3c2d/nvidia_nvjitlink-13.0.88-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:e931536ccc7d467a98ba1d8b89ff7fa7f1fa3b13f2b0069118cd7f47bff07d0c", size = 38768748, upload-time = "2025-09-04T08:35:20.008Z" }, + { url = "https://files.pythonhosted.org/packages/e4/01/07530b0e37546231052e30234540289c42eaffa486f1a34a87fed340157b/nvidia_nvjitlink-13.0.88-py3-none-win_amd64.whl", hash = "sha256:634e96e3da9ef845ae744097a1f289238ecf946ce0b82e93cdce14b9782e682f", size = 36035115, upload-time = "2025-09-04T08:43:03.001Z" }, ] [[package]] name = "nvidia-nvjitlink" version = "13.2.51" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'emscripten'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'emscripten'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", +] wheels = [ { url = "https://files.pythonhosted.org/packages/12/ae/ef3c49f1918aef93b39045499bfdb0ac9fb13e1785bc83f7a1b5d58a292d/nvidia_nvjitlink-13.2.51-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:6703c9ed79301382787a23fda9a7388af0779ecbc37545e4d50c055c897694a0", size = 41370377, upload-time = "2026-03-09T09:55:51.938Z" }, { url = "https://files.pythonhosted.org/packages/6d/44/9e42f8ad320a23dfcb9542fc6ccd06a3a3ef495a779ade5937540fe7aa59/nvidia_nvjitlink-13.2.51-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:3ba8bc06d756d10b643929e1f65dd162120c3e25ace58bd6414ee7eb98e10dde", size = 39285486, upload-time = "2026-03-09T09:55:19.032Z" }, @@ -6450,44 +6781,90 @@ wheels = [ ] [[package]] -name = "nvidia-nvjitlink-cu12" -version = "12.9.86" +name = "nvidia-nvjitlink" +version = "13.3.33" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", +] wheels = [ - { url = "https://files.pythonhosted.org/packages/46/0c/c75bbfb967457a0b7670b8ad267bfc4fffdf341c074e0a80db06c24ccfd4/nvidia_nvjitlink_cu12-12.9.86-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:e3f1171dbdc83c5932a45f0f4c99180a70de9bd2718c1ab77d14104f6d7147f9", size = 39748338, upload-time = "2025-06-05T20:10:25.613Z" }, - { url = "https://files.pythonhosted.org/packages/97/bc/2dcba8e70cf3115b400fef54f213bcd6715a3195eba000f8330f11e40c45/nvidia_nvjitlink_cu12-12.9.86-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:994a05ef08ef4b0b299829cde613a424382aff7efb08a7172c1fa616cc3af2ca", size = 39514880, upload-time = "2025-06-05T20:10:04.89Z" }, - { url = "https://files.pythonhosted.org/packages/dd/7e/2eecb277d8a98184d881fb98a738363fd4f14577a4d2d7f8264266e82623/nvidia_nvjitlink_cu12-12.9.86-py3-none-win_amd64.whl", hash = "sha256:cc6fcec260ca843c10e34c936921a1c426b351753587fdd638e8cff7b16bb9db", size = 35584936, upload-time = "2025-06-05T20:16:08.525Z" }, + { url = "https://files.pythonhosted.org/packages/f0/ee/580ca6f29dcab0221db8706badca1bbbb084f1975c4d4e83329c3a7e31f0/nvidia_nvjitlink-13.3.33-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:26a6de7fb4c8fdaa7703d3dad720d6d427ddfea5c48a528fd97c11733ad830e5", size = 40742423, upload-time = "2026-05-26T16:54:51.613Z" }, + { url = "https://files.pythonhosted.org/packages/69/30/45414e35ff2eee7db3da037e5707037ccf9d2b5218ffbdb055ea4d5aa98a/nvidia_nvjitlink-13.3.33-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:ce48b37dfeb3cb1eae4cf85adacb47d7a6539ea2272870c9a3628ce275c2037e", size = 39168635, upload-time = "2026-05-26T16:54:13.906Z" }, + { url = "https://files.pythonhosted.org/packages/67/f2/ec9c05a108095828dfc58840978c627b3c313fdf2a567c6de9ffbbb46901/nvidia_nvjitlink-13.3.33-py3-none-win_amd64.whl", hash = "sha256:4297ee49639b4f2e07255a1d69b3acc7ab2d011bb892b403e91ac98368962e3b", size = 37766359, upload-time = "2026-05-26T17:11:28.96Z" }, ] [[package]] -name = "nvidia-nvshmem-cu12" -version = "3.3.20" +name = "nvidia-nvshmem-cu13" +version = "3.4.5" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/92/9d/3dd98852568fb845ec1f7902c90a22b240fe1cbabda411ccedf2fd737b7b/nvidia_nvshmem_cu12-3.3.20-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:0b0b960da3842212758e4fa4696b94f129090b30e5122fea3c5345916545cff0", size = 124484616, upload-time = "2025-08-04T20:24:59.172Z" }, - { url = "https://files.pythonhosted.org/packages/3b/6c/99acb2f9eb85c29fc6f3a7ac4dccfd992e22666dd08a642b303311326a97/nvidia_nvshmem_cu12-3.3.20-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:d00f26d3f9b2e3c3065be895e3059d6479ea5c638a3f38c9fec49b1b9dd7c1e5", size = 124657145, upload-time = "2025-08-04T20:25:19.995Z" }, + { url = "https://files.pythonhosted.org/packages/dc/0f/05cc9c720236dcd2db9c1ab97fff629e96821be2e63103569da0c9b72f19/nvidia_nvshmem_cu13-3.4.5-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:6dc2a197f38e5d0376ad52cd1a2a3617d3cdc150fd5966f4aee9bcebb1d68fe9", size = 60215947, upload-time = "2025-09-06T00:32:20.022Z" }, + { url = "https://files.pythonhosted.org/packages/3c/35/a9bf80a609e74e3b000fef598933235c908fcefcef9026042b8e6dfde2a9/nvidia_nvshmem_cu13-3.4.5-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:290f0a2ee94c9f3687a02502f3b9299a9f9fe826e6d0287ee18482e78d495b80", size = 60412546, upload-time = "2025-09-06T00:32:41.564Z" }, ] [[package]] -name = "nvidia-nvtx-cu12" -version = "12.9.79" +name = "nvidia-nvtx" +version = "13.2.75" source = { registry = "https://pypi.org/simple" } wheels = [ - { url = "https://files.pythonhosted.org/packages/86/ed/bb230dce7741f2778ba2ae3e8778fdb8bc58eee9fd95f07bf7b2d18e8081/nvidia_nvtx_cu12-12.9.79-py3-none-manylinux1_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:fec150986817f2b4e7eed72ed059f2dcb9ba3856b9a96134e448eac946a6952f", size = 85504, upload-time = "2025-06-05T20:03:10.21Z" }, - { url = "https://files.pythonhosted.org/packages/c4/e4/82155e4aaedb41621087ba219c95e99c5e417f37a7649b4fb6ec32dcb14d/nvidia_nvtx_cu12-12.9.79-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d1f258e752294acdb4f61c3d31fee87bd0f60e459f1e2f624376369b524cd15d", size = 86120, upload-time = "2025-06-05T20:02:51.838Z" }, - { url = "https://files.pythonhosted.org/packages/9a/cc/efd28e4b3f4019f7ef176f4baa5c1ef7dcd3ac8c9e6d2b15bcbf3f1297d3/nvidia_nvtx_cu12-12.9.79-py3-none-win_amd64.whl", hash = "sha256:1f504e573b3a955e55aae6c747e2ae561b63fdcafcd591e43d18dae9875504f8", size = 77774, upload-time = "2025-06-05T20:12:39.44Z" }, + { url = "https://files.pythonhosted.org/packages/b0/cc/314eac684677dced22b913b5d1b3d03adcbe59d6c7332c5d04f864cdb079/nvidia_nvtx-13.2.75-py3-none-manylinux1_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:2d7c24fc582d841493c6dc2cf017c25e4428cf583a3bd9e9325a65f0ecc65f73", size = 153460, upload-time = "2026-04-13T09:46:23.256Z" }, + { url = "https://files.pythonhosted.org/packages/6a/48/c02f2aa1662edaddac87e0501142a65765af8010a788b087d920a9f80fb7/nvidia_nvtx-13.2.75-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d8e1c4a14a21d6dd4bc2fc59eb1e3f42447db40edf5d0f580c0eba5f9abb606c", size = 154291, upload-time = "2026-04-13T09:45:53.009Z" }, + { url = "https://files.pythonhosted.org/packages/30/38/6aad46328210858348cb8b90729a223037cb0cd6681657e92d95d016d536/nvidia_nvtx-13.2.75-py3-none-win_amd64.whl", hash = "sha256:b0a85fe36c3e9d56225fc30297577535a5a35f19545c8073926fe89807617e52", size = 142534, upload-time = "2026-04-13T10:07:03.941Z" }, ] [[package]] name = "nvidia-nvvm" version = "13.2.51" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'win32'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux'", +] wheels = [ { url = "https://files.pythonhosted.org/packages/34/4c/865325b6cffe2c2c20fe63696dca29b869ea7c0845aa743c217c2fb987dd/nvidia_nvvm-13.2.51-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:9c5725d97b1108bdb6c474784f7901c34f570319a2c2a0f279d23190070915f3", size = 64279456, upload-time = "2026-03-09T09:58:39.231Z" }, { url = "https://files.pythonhosted.org/packages/8d/f2/c67ff35faf322d29a41046af76b4d9b86d8ac3f555f59d1a1defb7a4eca4/nvidia_nvvm-13.2.51-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:bcfd4be51f011045520974bd93f467bc2d64b87f333ccbdec883a372a55aa8f6", size = 61886052, upload-time = "2026-03-09T09:58:05.734Z" }, { url = "https://files.pythonhosted.org/packages/ec/11/3f1ee9dce24b41812dd572a037c4436d4d21f759fbe373cc271b0ce98805/nvidia_nvvm-13.2.51-py3-none-win_amd64.whl", hash = "sha256:a4809baaa5429eabe1878853761ce31f0ba15216e2348710b7898dc591f5fc14", size = 56751075, upload-time = "2026-03-09T10:11:09.994Z" }, ] +[[package]] +name = "nvidia-nvvm" +version = "13.2.78" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/e8/1f/930d63ccc8adcdf27bfc051a24e3e4da2cf6ef987848d6d1d642e29d704b/nvidia_nvvm-13.2.78-py3-none-manylinux2010_x86_64.manylinux_2_12_x86_64.whl", hash = "sha256:f5aa433631109bbdec81802c5b5f319bf10bc891fe2f212e4e445845211d6f77", size = 64279462, upload-time = "2026-04-13T10:02:25.719Z" }, + { url = "https://files.pythonhosted.org/packages/8b/fd/db44b7a662a6af75a9a0683ca4580c855a3f5fcfdf1261b0ddb9fce0ee26/nvidia_nvvm-13.2.78-py3-none-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:88075f87a361a1dce95c799cabc028f7093af616a5702dcfb74eba4045dbbd5f", size = 61886055, upload-time = "2026-04-13T10:02:00.345Z" }, + { url = "https://files.pythonhosted.org/packages/35/b9/c3862fd1073326c61233f05e816c17a28ab86a361db1b7561c7f33ac3af4/nvidia_nvvm-13.2.78-py3-none-win_amd64.whl", hash = "sha256:cf8e91654e74285e9c574b3a45b92928c0a6d135928906cf11ce470bbec6a8ec", size = 56752219, upload-time = "2026-04-13T10:15:11.102Z" }, +] + [[package]] name = "nvidia-sphinx-theme" version = "0.0.9.post1" @@ -6769,9 +7146,7 @@ dependencies = [ { name = "psutil" }, { name = "pyyaml" }, { name = "safetensors" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "tqdm" }, { name = "transformers" }, ] @@ -7685,6 +8060,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/23/2b/73982c02d28538b6a1182c0a2faf764ca6a76a6dbe89a69288184051a67b/pytest_runner-6.0.1-py3-none-any.whl", hash = "sha256:ea326ed6f6613992746062362efab70212089a4209c08d67177b3df1c52cd9f2", size = 7186, upload-time = "2023-12-04T01:03:28.706Z" }, ] +[[package]] +name = "pytest-shard" +version = "0.1.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pytest" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/c6/ca/3efa6f3b84dab83220db45997e785be726684c2c2c4267bffb7d80101c7f/pytest-shard-0.1.2.tar.gz", hash = "sha256:b86a967fbfd1c8e50295095ccda031b7e890862ee06531d5142844f4c1d1cd67", size = 3579, upload-time = "2020-12-11T19:52:55.083Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/65/7a/dbeb4c54e9fc3b59622f410091365f354a69cda1af10c3b83ac0ca6e6f4f/pytest_shard-0.1.2-py3-none-any.whl", hash = "sha256:407a1df385cebe1feb9b4d2e7eeee8b044f8a24f0919421233159a17c59be2b9", size = 4608, upload-time = "2020-12-11T19:52:54.226Z" }, +] + [[package]] name = "python-dateutil" version = "2.9.0.post0" @@ -7706,9 +8093,7 @@ dependencies = [ { name = "lightning-utilities" }, { name = "packaging" }, { name = "pyyaml" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "torchmetrics" }, { name = "tqdm" }, { name = "typing-extensions" }, @@ -8245,6 +8630,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b8/0c/51f6841f1d84f404f92463fc2b1ba0da357ca1e3db6b7fbda26956c3b82a/ruamel_yaml-0.19.1-py3-none-any.whl", hash = "sha256:27592957fedf6e0b62f281e96effd28043345e0e66001f97683aa9a40c667c93", size = 118102, upload-time = "2026-01-02T16:50:29.201Z" }, ] +[[package]] +name = "s3transfer" +version = "0.17.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "botocore" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/9b/ec/7c692cde9125b77e84b307354d4fb705f98b8ccad59a036d5957ca75bfc3/s3transfer-0.17.0.tar.gz", hash = "sha256:9edeb6d1c3c2f89d6050348548834ad8289610d886e5bf7b7207728bd43ce33a", size = 155337, upload-time = "2026-04-29T22:07:36.33Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/87/72/c6c32d2b657fa3dad1de340254e14390b1e334ce38268b7ad51abda3c8c2/s3transfer-0.17.0-py3-none-any.whl", hash = "sha256:ce3801712acf4ad3e89fb9990df97b4972e93f4b3b0004d214be5bce12814c20", size = 86811, upload-time = "2026-04-29T22:07:34.966Z" }, +] + [[package]] name = "sacrebleu" version = "2.6.0" @@ -8815,10 +9212,102 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/c9/64/982e07b93219cb52e1cca5d272cb579e2f3eb001956c9e7a9a6d106c9473/sentry_sdk-2.57.0-py2.py3-none-any.whl", hash = "sha256:812c8bf5ff3d2f0e89c82f5ce80ab3a6423e102729c4706af7413fd1eb480585", size = 456489, upload-time = "2026-03-31T09:39:27.524Z" }, ] +[[package]] +name = "setuptools" +version = "81.0.0" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'linux'", +] +sdist = { url = "https://files.pythonhosted.org/packages/0d/1c/73e719955c59b8e424d015ab450f51c0af856ae46ea2da83eba51cc88de1/setuptools-81.0.0.tar.gz", hash = "sha256:487b53915f52501f0a79ccfd0c02c165ffe06631443a886740b91af4b7a5845a", size = 1198299, upload-time = "2026-02-06T21:10:39.601Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e1/e3/c164c88b2e5ce7b24d667b9bd83589cf4f3520d97cad01534cd3c4f55fdb/setuptools-81.0.0-py3-none-any.whl", hash = "sha256:fdd925d5c5d9f62e4b74b30d6dd7828ce236fd6ed998a08d81de62ce5a6310d6", size = 1062021, upload-time = "2026-02-06T21:10:37.175Z" }, +] + [[package]] name = "setuptools" version = "82.0.1" source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'emscripten' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'emscripten' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", + "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'darwin' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", +] sdist = { url = "https://files.pythonhosted.org/packages/4f/db/cfac1baf10650ab4d1c111714410d2fbb77ac5a616db26775db562c8fab2/setuptools-82.0.1.tar.gz", hash = "sha256:7d872682c5d01cfde07da7bccc7b65469d3dca203318515ada1de5eda35efbf9", size = 1152316, upload-time = "2026-03-09T12:47:17.221Z" } wheels = [ { url = "https://files.pythonhosted.org/packages/9d/76/f789f7a86709c6b087c5a2f52f911838cad707cc613162401badc665acfe/setuptools-82.0.1-py3-none-any.whl", hash = "sha256:a59e362652f08dcd477c78bb6e7bd9d80a7995bc73ce773050228a348ce2e5bb", size = 1006223, upload-time = "2026-03-09T12:47:15.026Z" }, @@ -9260,6 +9749,21 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/19/e6/48d47961bbdae755ba9c17dfc65d89356312c67668dcb36c87cfadfa1964/sphinx_autodoc2-0.5.0-py3-none-any.whl", hash = "sha256:e867013b1512f9d6d7e6f6799f8b537d6884462acd118ef361f3f619a60b5c9e", size = 43385, upload-time = "2023-11-27T07:27:49.929Z" }, ] +[[package]] +name = "sphinx-book-theme" +version = "1.1.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pydata-sphinx-theme" }, + { name = "sphinx", version = "8.1.3", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "sphinx", version = "9.0.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version == '3.11.*' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "sphinx", version = "9.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.12' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/89/69/61dfa3b3851610b5f45960737bd99f8c5b2d70ba73f9ac84a527e0c564ae/sphinx_book_theme-1.1.3.tar.gz", hash = "sha256:1f25483b1846cb3d353a6bc61b3b45b031f4acf845665d7da90e01ae0aef5b4d", size = 434230, upload-time = "2024-06-12T14:11:22.128Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/2b/80/90574e2e82c955b9c6f6b77f7badb2cf2ef4ef77599e4343cced2d098681/sphinx_book_theme-1.1.3-py3-none-any.whl", hash = "sha256:a554a9a7ac3881979a87a2b10f633aa2a5706e72218a10f71be38b3c9e831ae9", size = 430129, upload-time = "2024-06-12T14:11:20.002Z" }, +] + [[package]] name = "sphinx-copybutton" version = "0.5.2" @@ -9520,7 +10024,7 @@ name = "sympy" version = "1.14.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "mpmath" }, + { name = "mpmath", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/83/d3/803453b36afefb7c2bb238361cd4ae6125a569b4db67cd9e79846ba2d68c/sympy-1.14.0.tar.gz", hash = "sha256:d3d3fe8df1e5a0b42f0e7bdf50541697dbe7d23746e894990c030e2b05e72517", size = 7793921, upload-time = "2025-04-27T18:05:01.611Z" } wheels = [ @@ -9536,6 +10040,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/99/55/db07de81b5c630da5cbf5c7df646580ca26dfaefa593667fc6f2fe016d2e/tabulate-0.10.0-py3-none-any.whl", hash = "sha256:f0b0622e567335c8fabaaa659f1b33bcb6ddfe2e496071b743aa113f8774f2d3", size = 39814, upload-time = "2026-03-04T18:55:31.284Z" }, ] +[[package]] +name = "tenacity" +version = "9.1.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/47/c6/ee486fd809e357697ee8a44d3d69222b344920433d3b6666ccd9b374630c/tenacity-9.1.4.tar.gz", hash = "sha256:adb31d4c263f2bd041081ab33b498309a57c77f9acf2db65aadf0898179cf93a", size = 49413, upload-time = "2026-02-07T10:45:33.841Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/d7/c1/eb8f9debc45d3b7918a32ab756658a0904732f75e555402972246b0b8e71/tenacity-9.1.4-py3-none-any.whl", hash = "sha256:6095a360c919085f28c6527de529e76a06ad89b23659fa881ae0649b867a9d55", size = 28926, upload-time = "2026-02-07T10:45:32.24Z" }, +] + [[package]] name = "tensorboard" version = "2.20.0" @@ -9549,7 +10062,8 @@ dependencies = [ { name = "packaging" }, { name = "pillow" }, { name = "protobuf" }, - { name = "setuptools" }, + { name = "setuptools", version = "81.0.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "setuptools", version = "82.0.1", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform != 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "tensorboard-data-server" }, { name = "werkzeug" }, ] @@ -9759,225 +10273,47 @@ wheels = [ [[package]] name = "torch" -version = "2.9.1+cu129" -source = { registry = "https://download.pytorch.org/whl/cu129" } -resolution-markers = [ - "python_full_version >= '3.14' and platform_machine == 'aarch64' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", - "python_full_version == '3.12.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", - "python_full_version >= '3.14' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", - "python_full_version == '3.12.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", - "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'linux'", - "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'linux'", - "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'linux'", - "python_full_version == '3.11.*' and platform_machine == 'aarch64' and sys_platform == 'linux'", - "python_full_version == '3.11.*' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", - "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'linux'", - "python_full_version < '3.11' and platform_machine == 'aarch64' and sys_platform == 'linux'", - "python_full_version < '3.11' and platform_machine != 'aarch64' and platform_machine != 's390x' and sys_platform == 'linux'", - "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'linux'", -] +version = "2.12.0+cu132" +source = { registry = "https://download.pytorch.org/whl/cu132" } dependencies = [ + { name = "cuda-bindings", version = "13.0.3", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "cuda-toolkit", version = "13.2.1", source = { registry = "https://pypi.org/simple" }, extra = ["cublas", "cudart", "cufft", "cufile", "cupti", "curand", "cusolver", "cusparse", "nvjitlink", "nvrtc", "nvtx"], marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "filelock", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "fsspec", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "jinja2", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "networkx", version = "3.4.2", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and sys_platform == 'linux') or (python_full_version >= '3.11' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "networkx", version = "3.6.1", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and sys_platform == 'linux') or (python_full_version < '3.11' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cublas-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cuda-cupti-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cuda-nvrtc-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cuda-runtime-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cudnn-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cufft-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cufile-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-curand-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cusolver-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cusparse-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-cusparselt-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-nccl-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-nvjitlink-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-nvshmem-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "nvidia-nvtx-cu12", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "setuptools", marker = "(python_full_version >= '3.12' and sys_platform == 'linux') or (python_full_version < '3.12' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-cudnn-cu13", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-cusparselt-cu13", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nccl-cu13", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "nvidia-nvshmem-cu13", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "setuptools", version = "81.0.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "sympy", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "triton", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "typing-extensions", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] wheels = [ - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:aa843d96289c3211a640d381aac50b1903b6a6f7367e7e04aacfb34732dced64" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:b8bf86419f37f226a925b4b55b0aa227d77ff685fec0a7703fa77533b19bdc4e" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:5a990644f98b4db59630a5b9cf41711294fe621131dbc41e1488f3a665c8b320" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a070a0c3d357b44a239810767f7509c3fce3146e051751410b50630b12486cc2" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:c501c66fe5b0e2fc70f9d8a18e17a265f92ad1d1009dba03f5938d2f15a9066f" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:9968834a95e4b09f702549285f6210eade0d268b3b7e52b35aff1c6529fb8022" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:ab44cf28e6ca2df679f0845fb4b950c81834431218840ca01c0a1583892a0986" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:5adb25576c9cff0a25aab7e859f44121a5b150a6e319e027c27b55bf1ed57524" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:794482180a4f2d92a960f470fcd47e066dbe2eeb27816880e618d3ce031805f7" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:0df90a06330f53bebb40b5740e5c24c0aad4e8b363d09b02379f1c12ab43564b" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:4559e1254e2c8e1a337758626d1cf33ca5a5ded3509fa012070334bf886b686b" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:5a2fd9c7b730ee44bfa0aa9731b025b4323ff512b84410a93ba88e8df5149c0b" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:cbe8955514ace826d3638a5d5dc1faa2f9dda1de4de74941d2e86b1a0859477c" }, - { url = "https://download-r2.pytorch.org/whl/cu129/torch-2.9.1%2Bcu129-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:5b12ee638825907c9dc4a700d84de7c01dcd2c4b30ae96b2f591d0fb7795c273" }, -] - -[[package]] -name = "torch" -version = "2.10.0" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'darwin'", - "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'darwin'", - "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform == 'darwin'", - "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform == 'darwin'", - "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform == 'darwin'", - "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform == 'darwin'", - "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform == 'darwin'", - "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform == 'darwin'", - "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform == 'darwin'", - "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform == 'darwin'", -] -dependencies = [ - { name = "filelock", marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "fsspec", marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "jinja2", marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "networkx", version = "3.4.2", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and sys_platform == 'darwin') or (python_full_version >= '3.11' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "networkx", version = "3.6.1", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and sys_platform == 'darwin') or (python_full_version < '3.11' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "setuptools", marker = "(python_full_version >= '3.12' and sys_platform == 'darwin') or (python_full_version < '3.12' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform != 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "sympy", marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "typing-extensions", marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, -] -wheels = [ - { url = "https://files.pythonhosted.org/packages/5b/30/bfebdd8ec77db9a79775121789992d6b3b75ee5494971294d7b4b7c999bc/torch-2.10.0-2-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:2b980edd8d7c0a68c4e951ee1856334a43193f98730d97408fbd148c1a933313", size = 79411457, upload-time = "2026-02-10T21:44:59.189Z" }, - { url = "https://files.pythonhosted.org/packages/0f/8b/4b61d6e13f7108f36910df9ab4b58fd389cc2520d54d81b88660804aad99/torch-2.10.0-2-cp311-none-macosx_11_0_arm64.whl", hash = "sha256:418997cb02d0a0f1497cf6a09f63166f9f5df9f3e16c8a716ab76a72127c714f", size = 79423467, upload-time = "2026-02-10T21:44:48.711Z" }, - { url = "https://files.pythonhosted.org/packages/d3/54/a2ba279afcca44bbd320d4e73675b282fcee3d81400ea1b53934efca6462/torch-2.10.0-2-cp312-none-macosx_11_0_arm64.whl", hash = "sha256:13ec4add8c3faaed8d13e0574f5cd4a323c11655546f91fbe6afa77b57423574", size = 79498202, upload-time = "2026-02-10T21:44:52.603Z" }, - { url = "https://files.pythonhosted.org/packages/ec/23/2c9fe0c9c27f7f6cb865abcea8a4568f29f00acaeadfc6a37f6801f84cb4/torch-2.10.0-2-cp313-none-macosx_11_0_arm64.whl", hash = "sha256:e521c9f030a3774ed770a9c011751fb47c4d12029a3d6522116e48431f2ff89e", size = 79498254, upload-time = "2026-02-10T21:44:44.095Z" }, - { url = "https://files.pythonhosted.org/packages/16/ee/efbd56687be60ef9af0c9c0ebe106964c07400eade5b0af8902a1d8cd58c/torch-2.10.0-3-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:a1ff626b884f8c4e897c4c33782bdacdff842a165fee79817b1dd549fdda1321", size = 915510070, upload-time = "2026-03-11T14:16:39.386Z" }, - { url = "https://files.pythonhosted.org/packages/36/ab/7b562f1808d3f65414cd80a4f7d4bb00979d9355616c034c171249e1a303/torch-2.10.0-3-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:ac5bdcbb074384c66fa160c15b1ead77839e3fe7ed117d667249afce0acabfac", size = 915518691, upload-time = "2026-03-11T14:15:43.147Z" }, - { url = "https://files.pythonhosted.org/packages/b3/7a/abada41517ce0011775f0f4eacc79659bc9bc6c361e6bfe6f7052a6b9363/torch-2.10.0-3-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:98c01b8bb5e3240426dcde1446eed6f40c778091c8544767ef1168fc663a05a6", size = 915622781, upload-time = "2026-03-11T14:17:11.354Z" }, - { url = "https://files.pythonhosted.org/packages/ab/c6/4dfe238342ffdcec5aef1c96c457548762d33c40b45a1ab7033bb26d2ff2/torch-2.10.0-3-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:80b1b5bfe38eb0e9f5ff09f206dcac0a87aadd084230d4a36eea5ec5232c115b", size = 915627275, upload-time = "2026-03-11T14:16:11.325Z" }, - { url = "https://files.pythonhosted.org/packages/d8/f0/72bf18847f58f877a6a8acf60614b14935e2f156d942483af1ffc081aea0/torch-2.10.0-3-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:46b3574d93a2a8134b3f5475cfb98e2eb46771794c57015f6ad1fb795ec25e49", size = 915523474, upload-time = "2026-03-11T14:17:44.422Z" }, - { url = "https://files.pythonhosted.org/packages/f4/39/590742415c3030551944edc2ddc273ea1fdfe8ffb2780992e824f1ebee98/torch-2.10.0-3-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:b1d5e2aba4eb7f8e87fbe04f86442887f9167a35f092afe4c237dfcaaef6e328", size = 915632474, upload-time = "2026-03-11T14:15:13.666Z" }, - { url = "https://files.pythonhosted.org/packages/b6/8e/34949484f764dde5b222b7fe3fede43e4a6f0da9d7f8c370bb617d629ee2/torch-2.10.0-3-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:0228d20b06701c05a8f978357f657817a4a63984b0c90745def81c18aedfa591", size = 915523882, upload-time = "2026-03-11T14:14:46.311Z" }, - { url = "https://files.pythonhosted.org/packages/0c/1a/c61f36cfd446170ec27b3a4984f072fd06dab6b5d7ce27e11adb35d6c838/torch-2.10.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:5276fa790a666ee8becaffff8acb711922252521b28fbce5db7db5cf9cb2026d", size = 145992962, upload-time = "2026-01-21T16:24:14.04Z" }, - { url = "https://files.pythonhosted.org/packages/b5/60/6662535354191e2d1555296045b63e4279e5a9dbad49acf55a5d38655a39/torch-2.10.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:aaf663927bcd490ae971469a624c322202a2a1e68936eb952535ca4cd3b90444", size = 915599237, upload-time = "2026-01-21T16:23:25.497Z" }, - { url = "https://files.pythonhosted.org/packages/40/b8/66bbe96f0d79be2b5c697b2e0b187ed792a15c6c4b8904613454651db848/torch-2.10.0-cp310-cp310-win_amd64.whl", hash = "sha256:a4be6a2a190b32ff5c8002a0977a25ea60e64f7ba46b1be37093c141d9c49aeb", size = 113720931, upload-time = "2026-01-21T16:24:23.743Z" }, - { url = "https://files.pythonhosted.org/packages/76/bb/d820f90e69cda6c8169b32a0c6a3ab7b17bf7990b8f2c680077c24a3c14c/torch-2.10.0-cp310-none-macosx_11_0_arm64.whl", hash = "sha256:35e407430795c8d3edb07a1d711c41cc1f9eaddc8b2f1cc0a165a6767a8fb73d", size = 79411450, upload-time = "2026-01-21T16:25:30.692Z" }, - { url = "https://files.pythonhosted.org/packages/78/89/f5554b13ebd71e05c0b002f95148033e730d3f7067f67423026cc9c69410/torch-2.10.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:3282d9febd1e4e476630a099692b44fdc214ee9bf8ee5377732d9d9dfe5712e4", size = 145992610, upload-time = "2026-01-21T16:25:26.327Z" }, - { url = "https://files.pythonhosted.org/packages/ae/30/a3a2120621bf9c17779b169fc17e3dc29b230c29d0f8222f499f5e159aa8/torch-2.10.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a2f9edd8dbc99f62bc4dfb78af7bf89499bca3d753423ac1b4e06592e467b763", size = 915607863, upload-time = "2026-01-21T16:25:06.696Z" }, - { url = "https://files.pythonhosted.org/packages/6f/3d/c87b33c5f260a2a8ad68da7147e105f05868c281c63d65ed85aa4da98c66/torch-2.10.0-cp311-cp311-win_amd64.whl", hash = "sha256:29b7009dba4b7a1c960260fc8ac85022c784250af43af9fb0ebafc9883782ebd", size = 113723116, upload-time = "2026-01-21T16:25:21.916Z" }, - { url = "https://files.pythonhosted.org/packages/61/d8/15b9d9d3a6b0c01b883787bd056acbe5cc321090d4b216d3ea89a8fcfdf3/torch-2.10.0-cp311-none-macosx_11_0_arm64.whl", hash = "sha256:b7bd80f3477b830dd166c707c5b0b82a898e7b16f59a7d9d42778dd058272e8b", size = 79423461, upload-time = "2026-01-21T16:24:50.266Z" }, - { url = "https://files.pythonhosted.org/packages/cc/af/758e242e9102e9988969b5e621d41f36b8f258bb4a099109b7a4b4b50ea4/torch-2.10.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:5fd4117d89ffd47e3dcc71e71a22efac24828ad781c7e46aaaf56bf7f2796acf", size = 145996088, upload-time = "2026-01-21T16:24:44.171Z" }, - { url = "https://files.pythonhosted.org/packages/23/8e/3c74db5e53bff7ed9e34c8123e6a8bfef718b2450c35eefab85bb4a7e270/torch-2.10.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:787124e7db3b379d4f1ed54dd12ae7c741c16a4d29b49c0226a89bea50923ffb", size = 915711952, upload-time = "2026-01-21T16:23:53.503Z" }, - { url = "https://files.pythonhosted.org/packages/6e/01/624c4324ca01f66ae4c7cd1b74eb16fb52596dce66dbe51eff95ef9e7a4c/torch-2.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:2c66c61f44c5f903046cc696d088e21062644cbe541c7f1c4eaae88b2ad23547", size = 113757972, upload-time = "2026-01-21T16:24:39.516Z" }, - { url = "https://files.pythonhosted.org/packages/c9/5c/dee910b87c4d5c0fcb41b50839ae04df87c1cfc663cf1b5fca7ea565eeaa/torch-2.10.0-cp312-none-macosx_11_0_arm64.whl", hash = "sha256:6d3707a61863d1c4d6ebba7be4ca320f42b869ee657e9b2c21c736bf17000294", size = 79498198, upload-time = "2026-01-21T16:24:34.704Z" }, - { url = "https://files.pythonhosted.org/packages/c9/6f/f2e91e34e3fcba2e3fc8d8f74e7d6c22e74e480bbd1db7bc8900fdf3e95c/torch-2.10.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:5c4d217b14741e40776dd7074d9006fd28b8a97ef5654db959d8635b2fe5f29b", size = 146004247, upload-time = "2026-01-21T16:24:29.335Z" }, - { url = "https://files.pythonhosted.org/packages/98/fb/5160261aeb5e1ee12ee95fe599d0541f7c976c3701d607d8fc29e623229f/torch-2.10.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:6b71486353fce0f9714ca0c9ef1c850a2ae766b409808acd58e9678a3edb7738", size = 915716445, upload-time = "2026-01-21T16:22:45.353Z" }, - { url = "https://files.pythonhosted.org/packages/6a/16/502fb1b41e6d868e8deb5b0e3ae926bbb36dab8ceb0d1b769b266ad7b0c3/torch-2.10.0-cp313-cp313-win_amd64.whl", hash = "sha256:c2ee399c644dc92ef7bc0d4f7e74b5360c37cdbe7c5ba11318dda49ffac2bc57", size = 113757050, upload-time = "2026-01-21T16:24:19.204Z" }, - { url = "https://files.pythonhosted.org/packages/1a/0b/39929b148f4824bc3ad6f9f72a29d4ad865bcf7ebfc2fa67584773e083d2/torch-2.10.0-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:3202429f58309b9fa96a614885eace4b7995729f44beb54d3e4a47773649d382", size = 79851305, upload-time = "2026-01-21T16:24:09.209Z" }, - { url = "https://files.pythonhosted.org/packages/d8/14/21fbce63bc452381ba5f74a2c0a959fdf5ad5803ccc0c654e752e0dbe91a/torch-2.10.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:aae1b29cd68e50a9397f5ee897b9c24742e9e306f88a807a27d617f07adb3bd8", size = 146005472, upload-time = "2026-01-21T16:22:29.022Z" }, - { url = "https://files.pythonhosted.org/packages/54/fd/b207d1c525cb570ef47f3e9f836b154685011fce11a2f444ba8a4084d042/torch-2.10.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:6021db85958db2f07ec94e1bc77212721ba4920c12a18dc552d2ae36a3eb163f", size = 915612644, upload-time = "2026-01-21T16:21:47.019Z" }, - { url = "https://files.pythonhosted.org/packages/36/53/0197f868c75f1050b199fe58f9bf3bf3aecac9b4e85cc9c964383d745403/torch-2.10.0-cp313-cp313t-win_amd64.whl", hash = "sha256:ff43db38af76fda183156153983c9a096fc4c78d0cd1e07b14a2314c7f01c2c8", size = 113997015, upload-time = "2026-01-21T16:23:00.767Z" }, - { url = "https://files.pythonhosted.org/packages/0e/13/e76b4d9c160e89fff48bf16b449ea324bda84745d2ab30294c37c2434c0d/torch-2.10.0-cp313-none-macosx_11_0_arm64.whl", hash = "sha256:cdf2a523d699b70d613243211ecaac14fe9c5df8a0b0a9c02add60fb2a413e0f", size = 79498248, upload-time = "2026-01-21T16:23:09.315Z" }, - { url = "https://files.pythonhosted.org/packages/4f/93/716b5ac0155f1be70ed81bacc21269c3ece8dba0c249b9994094110bfc51/torch-2.10.0-cp314-cp314-macosx_14_0_arm64.whl", hash = "sha256:bf0d9ff448b0218e0433aeb198805192346c4fd659c852370d5cc245f602a06a", size = 79464992, upload-time = "2026-01-21T16:23:05.162Z" }, - { url = "https://files.pythonhosted.org/packages/69/2b/51e663ff190c9d16d4a8271203b71bc73a16aa7619b9f271a69b9d4a936b/torch-2.10.0-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:233aed0659a2503b831d8a67e9da66a62c996204c0bba4f4c442ccc0c68a3f60", size = 146018567, upload-time = "2026-01-21T16:22:23.393Z" }, - { url = "https://files.pythonhosted.org/packages/5e/cd/4b95ef7f293b927c283db0b136c42be91c8ec6845c44de0238c8c23bdc80/torch-2.10.0-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:682497e16bdfa6efeec8cde66531bc8d1fbbbb4d8788ec6173c089ed3cc2bfe5", size = 915721646, upload-time = "2026-01-21T16:21:16.983Z" }, - { url = "https://files.pythonhosted.org/packages/56/97/078a007208f8056d88ae43198833469e61a0a355abc0b070edd2c085eb9a/torch-2.10.0-cp314-cp314-win_amd64.whl", hash = "sha256:6528f13d2a8593a1a412ea07a99812495bec07e9224c28b2a25c0a30c7da025c", size = 113752373, upload-time = "2026-01-21T16:22:13.471Z" }, - { url = "https://files.pythonhosted.org/packages/d8/94/71994e7d0d5238393df9732fdab607e37e2b56d26a746cb59fdb415f8966/torch-2.10.0-cp314-cp314t-macosx_14_0_arm64.whl", hash = "sha256:f5ab4ba32383061be0fb74bda772d470140a12c1c3b58a0cfbf3dae94d164c28", size = 79850324, upload-time = "2026-01-21T16:22:09.494Z" }, - { url = "https://files.pythonhosted.org/packages/e2/65/1a05346b418ea8ccd10360eef4b3e0ce688fba544e76edec26913a8d0ee0/torch-2.10.0-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:716b01a176c2a5659c98f6b01bf868244abdd896526f1c692712ab36dbaf9b63", size = 146006482, upload-time = "2026-01-21T16:22:18.42Z" }, - { url = "https://files.pythonhosted.org/packages/1d/b9/5f6f9d9e859fc3235f60578fa64f52c9c6e9b4327f0fe0defb6de5c0de31/torch-2.10.0-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:d8f5912ba938233f86361e891789595ff35ca4b4e2ac8fe3670895e5976731d6", size = 915613050, upload-time = "2026-01-21T16:20:49.035Z" }, - { url = "https://files.pythonhosted.org/packages/66/4d/35352043ee0eaffdeff154fad67cd4a31dbed7ff8e3be1cc4549717d6d51/torch-2.10.0-cp314-cp314t-win_amd64.whl", hash = "sha256:71283a373f0ee2c89e0f0d5f446039bdabe8dbc3c9ccf35f0f784908b0acd185", size = 113995816, upload-time = "2026-01-21T16:22:05.312Z" }, -] - -[[package]] -name = "torch" -version = "2.10.0+cpu" -source = { registry = "https://download.pytorch.org/whl/cpu" } -resolution-markers = [ - "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform == 'emscripten' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform == 'emscripten' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'emscripten' and sys_platform != 'linux' and sys_platform != 'win32' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13'", - "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version >= '3.14' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.13.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.12.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version >= '3.14' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.13.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.12.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.11.*' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version == '3.11.*' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version < '3.11' and platform_machine != 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", - "python_full_version < '3.11' and platform_machine == 's390x' and sys_platform != 'darwin' and sys_platform != 'linux' and extra != 'extra-12-nemo-toolkit-cu12' and extra != 'extra-12-nemo-toolkit-cu13'", -] -dependencies = [ - { name = "filelock", marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "fsspec", marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "jinja2", marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "networkx", version = "3.4.2", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and sys_platform != 'darwin' and sys_platform != 'linux') or (python_full_version >= '3.11' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "networkx", version = "3.6.1", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.11' and sys_platform != 'darwin' and sys_platform != 'linux') or (python_full_version < '3.11' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "setuptools", marker = "(python_full_version >= '3.12' and sys_platform != 'darwin' and sys_platform != 'linux') or (python_full_version < '3.12' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "sympy", marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "typing-extensions", marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, -] -wheels = [ - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp310-cp310-linux_aarch64.whl", hash = "sha256:31ae44836c8b9bbd1a3943d29c7c7457709ddf7c6173aa34aefe9d2203e4c405" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp310-cp310-linux_s390x.whl", hash = "sha256:beadc2a6a1785b09a46daad378de91ef274b8d3eea7af0bc2d017d97f115afdf" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:d63ee6a80982fd73fe44bb70d97d2976e010312ff6db81d7bfb9167b06dd45b9" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:a280ffaea7b9c828e0c1b9b3bd502d9b6a649dc9416997b69b84544bd469f215" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp310-cp310-win_amd64.whl", hash = "sha256:6c6f0df770144907092a0d067048d96ed4f278a6c840376d2ff0e27e7579b925" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp311-cp311-linux_aarch64.whl", hash = "sha256:ce5c113d1f55f8c1f5af05047a24e50d11d293e0cbbb5bf7a75c6c761edd6eaa" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp311-cp311-linux_s390x.whl", hash = "sha256:0e286fcf6ce0cc7b204396c9b4ea0d375f1f0c3e752f68ce3d3aeb265511db8c" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:1cfcb9b1558c6e52dffd0d4effce83b13c5ae5d97338164c372048c21f9cfccb" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:b7cb1ec66cefb90fd7b676eac72cfda3b8d4e4d0cacd7a531963bc2e0a9710ab" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp311-cp311-win_amd64.whl", hash = "sha256:17a09465bab2aab8f0f273410297133d8d8fb6dd84dccbd252ca4a4f3a111847" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp311-cp311-win_arm64.whl", hash = "sha256:c35c0de592941d4944698dbfa87271ab85d3370eca3b694943a2ab307ac34b3f" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp312-cp312-linux_aarch64.whl", hash = "sha256:8de5a36371b775e2d4881ed12cc7f2de400b1ad3d728aa74a281f649f87c9b8c" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp312-cp312-linux_s390x.whl", hash = "sha256:9accc30b56cb6756d4a9d04fcb8ebc0bb68c7d55c1ed31a8657397d316d31596" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:179451716487f8cb09b56459667fa1f5c4c0946c1e75fbeae77cfc40a5768d87" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:ee40b8a4b4b2cf0670c6fd4f35a7ef23871af956fecb238fbf5da15a72650b1d" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp312-cp312-win_amd64.whl", hash = "sha256:21cb5436978ef47c823b7a813ff0f8c2892e266cfe0f1d944879b5fba81bf4e1" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp312-cp312-win_arm64.whl", hash = "sha256:3eaa727e6a73affa61564d86b9d03191df45c8650d0666bd3d57c8597ef61e78" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313-linux_aarch64.whl", hash = "sha256:fd215f3d0f681905c5b56b0630a3d666900a37fcc3ca5b937f95275c66f9fd9c" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313-linux_s390x.whl", hash = "sha256:170a0623108055be5199370335cf9b41ba6875b3cb6f086db4aee583331a4899" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:e51994492cdb76edce29da88de3672a3022f9ef0ffd90345436948d4992be2c7" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:8d316e5bf121f1eab1147e49ad0511a9d92e4c45cc357d1ab0bee440da71a095" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313-win_amd64.whl", hash = "sha256:b719da5af01b59126ac13eefd6ba3dd12d002dc0e8e79b8b365e55267a8189d3" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313-win_arm64.whl", hash = "sha256:b67d91326e4ed9eccbd6b7d84ed7ffa43f93103aa3f0b24145f3001f3b11b714" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313t-linux_aarch64.whl", hash = "sha256:5af75e5f49de21b0bdf7672bc27139bd285f9e8dbcabe2d617a2eb656514ac36" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313t-linux_s390x.whl", hash = "sha256:ba51ef01a510baf8fff576174f702c47e1aa54389a9f1fba323bb1a5003ff0bf" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:0fedcb1a77e8f2aaf7bfd21591bf6d1e0b207473268c9be16b17cb7783253969" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:106dd1930cb30a4a337366ba3f9b25318ebf940f51fd46f789281dd9e736bdc4" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp313-cp313t-win_amd64.whl", hash = "sha256:eb1bde1ce198f05c8770017de27e001d404499cf552aaaa014569eff56ca25c0" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314-linux_aarch64.whl", hash = "sha256:ea2bcc9d1fca66974a71d4bf9a502539283f35d61fcab5a799b4e120846f1e02" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314-linux_s390x.whl", hash = "sha256:f8294fd2fc6dd8f4435a891a0122307a043b14b21f0dac1bca63c85bfb59e586" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:a28fdbcfa2fbacffec81300f24dd1bed2b0ccfdbed107a823cff12bc1db070f6" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:aada8afc068add586464b2a55adb7cc9091eec55caf5320447204741cb6a0604" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314-win_amd64.whl", hash = "sha256:2adc71fe471e98a608723bfc837f7e1929885ebb912c693597711e139c1cda41" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314t-linux_aarch64.whl", hash = "sha256:9412bd37b70f5ebd1205242c4ba4cabae35a605947f2b30806d5c9b467936db9" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314t-linux_s390x.whl", hash = "sha256:e71c476517c33e7db69825a9ff46c7f47a723ec4dac5b2481cff4246d1c632be" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:23882f8d882460aca809882fc42f5e343bf07585274f929ced00177d1be1eb67" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:4fcd8b4cc2ae20f2b7749fb275349c55432393868778c2d50a08e81d5ee5591e" }, - { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.10.0%2Bcpu-cp314-cp314t-win_amd64.whl", hash = "sha256:ffc8da9a1341092d6a90cb5b1c1a33cd61abf0fb43f0cd88443c27fa372c26ae" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:e06604ed0a4c9681861346474db4c145562e23f8e77dc7c87e0791aabcdf4f8d", upload-time = "2026-05-13T00:01:25Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:86743fc03d98bafd9c084800cd100d55b58584c7c5ef66b74be26cefa989c46e", upload-time = "2026-05-13T00:01:51Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp310-cp310-win_amd64.whl", hash = "sha256:038a605943a3f8e4c456b6a1514266854e31765e0f07480739019c28cdf5003f", upload-time = "2026-05-13T00:03:00Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:c8b75ec50e9a6bfc6db0f1e0bd297a1b94c9803c378c706c4e856c7cad331398", upload-time = "2026-05-13T00:04:15Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:6c7cd9e01a6195c38f31458cfbade9fb4909b218bc2822cd204dc0fd738625f1", upload-time = "2026-05-13T00:04:43Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp311-cp311-win_amd64.whl", hash = "sha256:ad6b2c8e558069de7e45c03e2104db34b7f476fd7f16b9dd976bb11fb43a13c2", upload-time = "2026-05-13T00:06:20Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:21909235cbbc94a938d737f1721b53cc61316cd7787aa459b4d458b840fc0309", upload-time = "2026-05-13T00:07:47Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:df5fadef905c5967cad2843916de00d32ba40ff232154584433d2b4761eb0218", upload-time = "2026-05-13T00:08:21Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp312-cp312-win_amd64.whl", hash = "sha256:59d4ffe54376b8e6b78622cb8e2b186c4d84963c5a06ed56299d2eee6c5bcb85", upload-time = "2026-05-13T00:09:47Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:b96a361d18e1117b6aebb9cdf3ec8eb4690eed15fb943d35c02dcae692f616e9", upload-time = "2026-05-13T00:11:32Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:181715135c53a170a6169fcc0823b3054827fd82e4086af5788d7f4332a3015d", upload-time = "2026-05-13T00:12:02Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp313-cp313-win_amd64.whl", hash = "sha256:5c6ba58843e6ed19de159c6d19a8643751d95fa2b46888de806d3aef26d60779", upload-time = "2026-05-13T00:13:24Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:936de3332eb262831f8decd01e5242038c15a4579b2e80e9793216d4bb017166", upload-time = "2026-05-13T00:14:53Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:269760d9e1776acb2eafce33e4a465f3bfe614c4704f71a4fe40b1eb6f3b89a8", upload-time = "2026-05-13T00:15:24Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp313-cp313t-win_amd64.whl", hash = "sha256:27983ce55156b8deb910aa99650ebee9f43ddfe132edbfef89744a9ee1386cd7", upload-time = "2026-05-13T00:17:00Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp314-cp314-manylinux_2_28_aarch64.whl", hash = "sha256:4c4a9c7131b05c6e974da31922ac914e3df6d19fb0bbc94a042029d107092062", upload-time = "2026-05-13T00:18:37Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp314-cp314-manylinux_2_28_x86_64.whl", hash = "sha256:6c7f7bdb570fe678faba48f5d0a1ff1d5a84fb5ee642056670e2c3d004a1fedd", upload-time = "2026-05-13T00:19:12Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp314-cp314-win_amd64.whl", hash = "sha256:12cbd9bf949d774518cf006d51fda155438860286b521720122da2e33a27b1f5", upload-time = "2026-05-13T00:20:42Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:586570ea68ed2fbcdb8ee9b0ec2ef8696bab7847e5d6eb7642c78fb9d675ffe7", upload-time = "2026-05-13T00:22:17Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp314-cp314t-manylinux_2_28_x86_64.whl", hash = "sha256:4aa32efb9ad4b847cafcaa5803d1cf19bf282688e19466823b1846c299d17763", upload-time = "2026-05-13T00:22:51Z" }, + { url = "https://download-r2.pytorch.org/whl/cu132/torch-2.12.0%2Bcu132-cp314-cp314t-win_amd64.whl", hash = "sha256:b11be4c6b4f3621811152ee2dd211103c348f02ad4d76ab62b020efe1ca9f78c", upload-time = "2026-05-13T00:24:22Z" }, ] [[package]] @@ -9995,9 +10331,7 @@ version = "0.11.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "requests" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "urllib3" }, ] wheels = [ @@ -10013,9 +10347,7 @@ dependencies = [ { name = "numpy", version = "2.2.6", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "numpy", version = "2.4.4", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, { name = "packaging" }, - { name = "torch", version = "2.9.1+cu129", source = { registry = "https://download.pytorch.org/whl/cu129" }, marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0", source = { registry = "https://pypi.org/simple" }, marker = "sys_platform == 'darwin' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, - { name = "torch", version = "2.10.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "(sys_platform != 'darwin' and sys_platform != 'linux') or (sys_platform == 'darwin' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13') or (sys_platform == 'linux' and extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, + { name = "torch", marker = "sys_platform == 'linux' or (extra == 'extra-12-nemo-toolkit-cu12' and extra == 'extra-12-nemo-toolkit-cu13')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/81/34/39b8b749333db56c0585d7a11fa62a283c087bb1dfc897d69fb8cedbefb1/torchmetrics-1.9.0.tar.gz", hash = "sha256:a488609948600df52d3db4fcdab02e62aab2a85ef34da67037dc3e65b8512faa", size = 581765, upload-time = "2026-03-09T17:41:22.443Z" } wheels = [ @@ -10065,7 +10397,7 @@ wheels = [ [[package]] name = "transformers" -version = "5.3.0" +version = "5.5.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "huggingface-hub" }, @@ -10079,30 +10411,30 @@ dependencies = [ { name = "tqdm" }, { name = "typer" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/fc/1a/70e830d53ecc96ce69cfa8de38f163712d2b43ac52fbd743f39f56025c31/transformers-5.3.0.tar.gz", hash = "sha256:009555b364029da9e2946d41f1c5de9f15e6b1df46b189b7293f33a161b9c557", size = 8830831, upload-time = "2026-03-04T17:41:46.119Z" } +sdist = { url = "https://files.pythonhosted.org/packages/ff/9d/fb46e729b461985f41a5740167688b924a4019141e5c164bea77548d3d9e/transformers-5.5.0.tar.gz", hash = "sha256:c8db656cf51c600cd8c75f06b20ef85c72e8b8ff9abc880c5d3e8bc70e0ddcbd", size = 8237745, upload-time = "2026-04-02T16:13:08.113Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/b8/88/ae8320064e32679a5429a2c9ebbc05c2bf32cefb6e076f9b07f6d685a9b4/transformers-5.3.0-py3-none-any.whl", hash = "sha256:50ac8c89c3c7033444fb3f9f53138096b997ebb70d4b5e50a2e810bf12d3d29a", size = 10661827, upload-time = "2026-03-04T17:41:42.722Z" }, + { url = "https://files.pythonhosted.org/packages/e7/28/35f7411ff80a3640c1f4fc907dcbb6a65061ebb82f66950e38bfc9f7f740/transformers-5.5.0-py3-none-any.whl", hash = "sha256:821a9ff0961abbb29eb1eb686d78df1c85929fdf213a3fe49dc6bd94f9efa944", size = 10245591, upload-time = "2026-04-02T16:13:03.462Z" }, ] [[package]] name = "triton" -version = "3.5.1" -source = { registry = "https://pypi.org/simple" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d9/2e/f95e673222afa2c7f0c687d8913e98fcf2589ef0b1405de76894e37fe18f/triton-3.5.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f63e34dcb32d7bd3a1d0195f60f30d2aee8b08a69a0424189b71017e23dfc3d2", size = 159821655, upload-time = "2025-11-11T17:51:44.09Z" }, - { url = "https://files.pythonhosted.org/packages/fd/6e/676ab5019b4dde8b9b7bab71245102fc02778ef3df48218b298686b9ffd6/triton-3.5.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5fc53d849f879911ea13f4a877243afc513187bc7ee92d1f2c0f1ba3169e3c94", size = 170320692, upload-time = "2025-11-11T17:40:46.074Z" }, - { url = "https://files.pythonhosted.org/packages/dc/dc/6ce44d055f2fc2403c4ec6b3cfd3a9b25f57b7d95efadccdea91497f8e81/triton-3.5.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:da47169e30a779bade679ce78df4810fca6d78a955843d2ddb11f226adc517dc", size = 159928005, upload-time = "2025-11-11T17:51:50.008Z" }, - { url = "https://files.pythonhosted.org/packages/b0/72/ec90c3519eaf168f22cb1757ad412f3a2add4782ad3a92861c9ad135d886/triton-3.5.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:61413522a48add32302353fdbaaf92daaaab06f6b5e3229940d21b5207f47579", size = 170425802, upload-time = "2025-11-11T17:40:53.209Z" }, - { url = "https://files.pythonhosted.org/packages/db/53/2bcc46879910991f09c063eea07627baef2bc62fe725302ba8f46a2c1ae5/triton-3.5.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:275a045b6ed670dd1bd005c3e6c2d61846c74c66f4512d6f33cc027b11de8fd4", size = 159940689, upload-time = "2025-11-11T17:51:55.938Z" }, - { url = "https://files.pythonhosted.org/packages/f2/50/9a8358d3ef58162c0a415d173cfb45b67de60176e1024f71fbc4d24c0b6d/triton-3.5.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d2c6b915a03888ab931a9fd3e55ba36785e1fe70cbea0b40c6ef93b20fc85232", size = 170470207, upload-time = "2025-11-11T17:41:00.253Z" }, - { url = "https://files.pythonhosted.org/packages/f1/ba/805684a992ee32d486b7948d36aed2f5e3c643fc63883bf8bdca1c3f3980/triton-3.5.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:56765ffe12c554cd560698398b8a268db1f616c120007bfd8829d27139abd24a", size = 159955460, upload-time = "2025-11-11T17:52:01.861Z" }, - { url = "https://files.pythonhosted.org/packages/27/46/8c3bbb5b0a19313f50edcaa363b599e5a1a5ac9683ead82b9b80fe497c8d/triton-3.5.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f3f4346b6ebbd4fad18773f5ba839114f4826037c9f2f34e0148894cd5dd3dba", size = 170470410, upload-time = "2025-11-11T17:41:06.319Z" }, - { url = "https://files.pythonhosted.org/packages/84/1e/7df59baef41931e21159371c481c31a517ff4c2517343b62503d0cd2be99/triton-3.5.1-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:02c770856f5e407d24d28ddc66e33cf026e6f4d360dcb8b2fabe6ea1fc758621", size = 160072799, upload-time = "2025-11-11T17:52:07.293Z" }, - { url = "https://files.pythonhosted.org/packages/37/92/e97fcc6b2c27cdb87ce5ee063d77f8f26f19f06916aa680464c8104ef0f6/triton-3.5.1-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0b4d2c70127fca6a23e247f9348b8adde979d2e7a20391bfbabaac6aebc7e6a8", size = 170579924, upload-time = "2025-11-11T17:41:12.455Z" }, - { url = "https://files.pythonhosted.org/packages/14/f9/0430e879c1e63a1016cb843261528fd3187c872c3a9539132efc39514753/triton-3.5.1-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f617aa7925f9ea9968ec2e1adaf93e87864ff51549c8f04ce658f29bbdb71e2d", size = 159956163, upload-time = "2025-11-11T17:52:12.999Z" }, - { url = "https://files.pythonhosted.org/packages/a4/e6/c595c35e5c50c4bc56a7bac96493dad321e9e29b953b526bbbe20f9911d0/triton-3.5.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d0637b1efb1db599a8e9dc960d53ab6e4637db7d4ab6630a0974705d77b14b60", size = 170480488, upload-time = "2025-11-11T17:41:18.222Z" }, - { url = "https://files.pythonhosted.org/packages/41/1e/63d367c576c75919e268e4fbc33c1cb33b6dc12bb85e8bfe531c2a8bd5d3/triton-3.5.1-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8932391d7f93698dfe5bc9bead77c47a24f97329e9f20c10786bb230a9083f56", size = 160073620, upload-time = "2025-11-11T17:52:18.403Z" }, - { url = "https://files.pythonhosted.org/packages/16/b5/b0d3d8b901b6a04ca38df5e24c27e53afb15b93624d7fd7d658c7cd9352a/triton-3.5.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bac7f7d959ad0f48c0e97d6643a1cc0fd5786fe61cb1f83b537c6b2d54776478", size = 170582192, upload-time = "2025-11-11T17:41:23.963Z" }, +version = "3.7.0" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/3e/97/dcd1f2a0f8336691bff74abc59b2ed9c69a0c0f8f65cd77109c49e05f068/triton-3.7.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:223ac302091491436c248a34ee1e6c47a1026486579103c906ffd805be50cb89", size = 188367104, upload-time = "2026-05-07T19:04:56.68Z" }, + { url = "https://files.pythonhosted.org/packages/b2/c0/c2ac4fd2d8809b7579d4a820a0f9e5de62a9bc8a757ed4b3abf4f7ee964a/triton-3.7.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c631b65668d4951213b948a413c0564184305b77bb45cc9d686d3e1ecc4701a3", size = 201313191, upload-time = "2026-05-07T18:45:58.444Z" }, + { url = "https://files.pythonhosted.org/packages/b8/c1/5d842314bb6c78442cc60437928781701c6050b8d479bc2a1aed691d37ca/triton-3.7.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a9e71fc392675fac364e0ecf4ef3f76f85b7f5433a16f4c3c5fe5f05a52c85fe", size = 188480277, upload-time = "2026-05-07T19:05:03.231Z" }, + { url = "https://files.pythonhosted.org/packages/13/31/8315ea5f8dd18e60970b3022e3a8b93fd37e0b784fbbef86e10c8e6e5ca1/triton-3.7.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:22bacffce443f54593dd20f05294d5a40622e0ea9ab632816f87154504356221", size = 201415942, upload-time = "2026-05-07T18:46:06.479Z" }, + { url = "https://files.pythonhosted.org/packages/f7/13/ec05adfcd87311d532ba61e3af143e8be59fcd26675884c4682841406a20/triton-3.7.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a4bf49b00a7a377a68a6da603a876e797614e6455a80e9021669c476a953ad9a", size = 188505104, upload-time = "2026-05-07T19:05:09.843Z" }, + { url = "https://files.pythonhosted.org/packages/62/7b/468a576e35beef1426e0828e28e9ba9e65f5474d496f16ee126c15646324/triton-3.7.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8f111161d49bf903c0eaedde3962353a3d841c08a836839b7cc1025b8426efcf", size = 201457567, upload-time = "2026-05-07T18:46:13.505Z" }, + { url = "https://files.pythonhosted.org/packages/01/e1/a59a583de59b8f62c495d67c80ee3ea97d09e91ac80c4c6e76456ed8d8ac/triton-3.7.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:abdf6beaa89b1bcfb9a43cd990536ce66091a997841a4814b260b7bee4c88c3c", size = 188503209, upload-time = "2026-05-07T19:05:17.935Z" }, + { url = "https://files.pythonhosted.org/packages/30/b1/b7507bb9815d403927c8dd51d4158ed2e11751a92dbc118a044f247b6848/triton-3.7.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a35d7afe3f3f058e7ec49fcce09794049e0ffc5c59019ac25ec3413741b8c4e7", size = 201453566, upload-time = "2026-05-07T18:46:20.427Z" }, + { url = "https://files.pythonhosted.org/packages/a6/8f/0bea7a6a0c989315c9135a1d7fb37e41905cfb3a17cbc1f10044ebd4cc3a/triton-3.7.0-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:cc1d61c172d257db80ddf42595131fb196ad2e9bdd751e90fe2ef13531734e8b", size = 188612899, upload-time = "2026-05-07T19:05:24.955Z" }, + { url = "https://files.pythonhosted.org/packages/e1/02/d96f57828d0912aec733b9bc7e0e7dbfd2c6f079a8fa433ac25cb93d1a30/triton-3.7.0-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:70fb9bbdc9f400afc54bbf6eb2670af28829a6ae3996863317964783141daf56", size = 201553816, upload-time = "2026-05-07T18:46:27.49Z" }, + { url = "https://files.pythonhosted.org/packages/40/fb/82a802dac4689f2a2fb2e69302e6a138eecc3e175bbe976ba3cfc717683a/triton-3.7.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c4a44a8476d0d3571eac4e4d1048e1ff75aad81a09ff4602ccfc56c6dea1672e", size = 188507879, upload-time = "2026-05-07T19:05:32.209Z" }, + { url = "https://files.pythonhosted.org/packages/8f/af/9904ec6d3c93d9b24e5ec360445bbdf758b7f00bfbeedb89cb0eb64eb8bb/triton-3.7.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b9b85e72968a9d8bba5ddb24e9b64aaabaf48affb042f2755cb7cfa92b7531ce", size = 201460637, upload-time = "2026-05-07T18:46:34.749Z" }, + { url = "https://files.pythonhosted.org/packages/a1/f9/4835a8ea746b88727d8899f4e3ccce4f9cacb38abfc3bb0a638266c53111/triton-3.7.0-cp314-cp314t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:18a160de426fd99f92b0baf509045360afbd3bfaa0b4a5171dde800ec9f09684", size = 188608706, upload-time = "2026-05-07T19:05:39.218Z" }, + { url = "https://files.pythonhosted.org/packages/c1/68/fa86e5a39608000f645535b2c124920126327ab731f8c4fafd5b07ff8d4b/triton-3.7.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ce061073102714b725f3660ec6939d94a1da7984b3aa99c921417cae273672f5", size = 201546766, upload-time = "2026-05-07T18:46:42.088Z" }, ] [[package]]