Skip to main content

Comfy Kitchen

Fast kernel library for Diffusion inference with multiple compute backends.

Backend Capabilities Matrix

Function eager cuda triton hip ascend
quantize_per_tensor_fp8 ✓ ✓ ✓ ✓
dequantize_per_tensor_fp8 ✓ ✓ ✓ ✓
stochastic_rounding_fp8 ✓ ✓ ✓
quantize_nvfp4 ✓ ✓ ✓
dequantize_nvfp4 ✓ ✓ ✓
scaled_mm_nvfp4 ✓ ✓
quantize_mxfp8 ✓ ✓ ✓
dequantize_mxfp8 ✓
scaled_mm_mxfp8 ✓
adaln ✓ ✓ ✓ ✓
rms_adaln ✓ ✓ ✓ ✓
na3d ✓ ✓ ✓ ✓
na2d ✓ ✓ ✓ ✓
sol_attn ✓ ✓ ✓
int8_attention ✓ ✓
apply_rope ✓ ✓ ✓ ✓ ✓*
apply_rope1 ✓ ✓ ✓ ✓ ✓*
apply_rope_split_half ✓ ✓ ✓ ✓ ✓*
apply_rope_split_half1 ✓ ✓ ✓ ✓ ✓*
rms_rope ✓ ✓ ✓ ✓ ✓*
rms_rope1 ✓ ✓ ✓ ✓ ✓*
rms_rope_split_half ✓ ✓ ✓ ✓ ✓*
rms_rope_split_half1 ✓ ✓ ✓ ✓ ✓*
quantize_int8_rowwise ✓ ✓ ✓ ✓ ✓
quantize_int8_tensorwise ✓ ✓ ✓ ✓
quantize_and_rotate_rowwise ✓ ✓ ✓ ✓ ✓*
quantize_int8_convrot_weight ✓ ✓ ✓
dequantize_int8_simple ✓ ✓ ✓ ✓
dequantize_int8_simple_dtype ✓ ✓ ✓ ✓
dequantize_int8_convrot_weight_dtype ✓ ✓ ✓
int8_linear ✓ ✓ ✓ ✓ ✓*
gemv_awq_w4a16 ✓ ✓ ✓
quantize_svdquant_w4a4 ✓ ✓ ✓
scaled_mm_svdquant_w4a4 ✓ ✓ ✓
convrot_w4a4_linear ✓ ✓ ✓ ✓*
quantize_convrot_w4a4_weight ✓ ✓ ✓
dequantize_convrot_w4a4_weight ✓ ✓ ✓
delaunay3d ✓
mesh_bvh ✓
closest_point_on_mesh ✓
connected_components ✓
edge_collapse_checks ✓
min_cut ✓

Each of the eight rope entries also has an in-place form (apply_rope_, rms_rope_split_half1_, ...) with the same backend coverage as the row above.

* Ascend RoPE support requires a torch_npu.npu_rotary_mul schema with rotary_mode; RMS-RoPE additionally requires torch_npu.npu_rms_norm. Ascend support for quantize_and_rotate_rowwise requires torch_npu.npu_rotate_quant; int8_linear requires torch_npu.npu_dynamic_quant and torch_npu.npu_quant_matmul, while convrot_w4a4_linear requires only torch_npu.npu_quant_matmul. These capabilities are registered only when the corresponding operator is available.

Huawei Ascend backend

Ascend convrot_w4a4_linear requires npu_quant_matmul, not RotateQuant. It preserves the caller's FP32/FP16/BF16 precision during rotation and signed INT4 quantization. Activation codes stay in INT8 storage without an intermediate pack/unpack; packed weights are unpacked to INT8 for NPU INT32 accumulation. The result is then cast and scaled in eager's order. This is not a zero-copy packed A4W4 kernel: unpacking has a memory/runtime cost. It avoids silently rounding FP32 inputs to BF16 or narrowing FP32/BF16 results through FP16. It retains eager's intermediate arithmetic, including FP16 range limitations; it does not promise higher precision than the reference. Unsupported calls continue to use the existing eager fallback.

The optional ascend backend uses torch-npu operators on Huawei Ascend NPU hardware. It is registered only when torch-npu and an Ascend device are available, so comfy-kitchen keeps importing normally on CPU, CUDA, HIP, and XPU installations. The PyTorch device type remains npu, as defined by torch-npu.

The backend supports:

  • quantize_int8_rowwise through torch_npu.npu_dynamic_quant
  • quantize_int8_tensorwise through Ascend reduction operators and torch_npu.npu_quantize
  • dequantize_int8_simple and dequantize_int8_simple_dtype on device
  • quantize_and_rotate_rowwise through torch_npu.npu_rotate_quant, when available
  • int8_linear through torch_npu.npu_dynamic_quant and torch_npu.npu_quant_matmul, when available; ConvRot uses torch_npu.npu_rotate_quant when supported and otherwise keeps the separate rotation and dynamic-quantization path
  • interleaved and split-half RoPE through torch_npu.npu_rotary_mul
  • RMS-RoPE through torch_npu.npu_rms_norm followed by torch_npu.npu_rotary_mul

Unsupported dtypes and stochastic rounding continue through another capable backend instead of copying tensors to the CPU.

The RoPE implementations support four-dimensional BNSD and BSND tensors, including packed-QKV views whose final dimension is contiguous. Unsupported broadcast patterns and layouts continue through another capable backend.

RoPE capability detection is independent of quantization: it requires a npu_rotary_mul schema with rotary_mode; RMS-RoPE additionally requires npu_rms_norm. The quantization capability checks for npu_quantize with div_mode. Missing optional operators do not disable unrelated capabilities. INT8 linear accepts the current input RMSNorm and residual arguments through the shared device-side helpers; those operations are not fused into its GEMM.

HIP backend (AMD RDNA2 / RDNA3 / RDNA3.5 / RDNA4)

The hip backend implements the quantized paths with its own kernels: WMMA matrix-core GEMMs on RDNA3/RDNA3.5/RDNA4, and non-WMMA kernels (quantizers, INT8 dequantizers, RoPE and the fused RMSNorm+RoPE, AdaLN and RMS-AdaLN, the AWQ GEMV) that also run on RDNA2. It does not link or call hipBLAS/hipBLASLt; every matmul is compiled from the sources in comfy_kitchen/backends/hip/.

Both rope kernels address their inputs through the tensor's own strides, so a q/k pair permuted or sliced out of a packed qkv is read where it lies rather than copied contiguous first. The in-place entries (apply_rope_, rms_rope_ and their split-half and single-tensor siblings) rotate a strided view in place for the same reason: each thread owns one element pair and loads both before storing either.

int8_linear(input_act=...) folds the activation into the fused ConvRot quantizer's load, so an MLP's linear(act(proj(x))) never writes act's output to HBM just to read it straight back.

What a GPU gets depends on whether it has matrix cores:

Generation gfx targets Matrix cores What runs
RDNA4 gfx1200, gfx1201 WMMA + fp8 All HIP-supported kernels, fp8 native
RDNA3.5 gfx1150-gfx1153 WMMA, no fp8 All HIP-supported kernels; fp8 widened
RDNA3 gfx1100-gfx1103 WMMA, no fp8 All HIP-supported kernels; fp8 widened
RDNA2 gfx1030-gfx1036 none Non-WMMA kernels incl. AWQ GEMV; WMMA GEMMs decline

fp8, int8 and int4 share one byte-addressed tile kernel (gemm_wmma.h). RDNA3 and RDNA4 spread a WMMA operand across the wave differently and RDNA3 has no fp8 WMMA (it widens to bf16, which is exact), so each has its own set of Mma policies in mma.h; the tile kernel itself is shared.

RDNA2 has no matrix cores. It runs the kernels that do not need them (RoPE, AdaLN and RMS-AdaLN, the quantizers, stochastic rounding, the AWQ GEMV) and does not advertise the GEMMs, which fall through to triton/eager. In a process with a mix of GPUs the capability set is the intersection, since kernels launch on the tensor's own device.

A request outside a kernel's domain (swizzled operands, scaling other than tensor-wise, a K that is not a multiple of 16) falls back to torch or eager. NVFP4 and MXFP8 stay on eager everywhere: RDNA has neither fp4 WMMA nor microscaling hardware. Set COMFY_KITCHEN_DISABLE_HIP=1 to remove the backend from dispatch.

Building

On a ROCm-only host, the backend is selected automatically when CUDA's nvcc is absent. Both a system ROCm install and the pip rocm-sdk layout (which a ROCm PyTorch build already pulls in) are detected, so on Linux and Windows alike the usual build is:

pip install .

No environment variables, CC/CXX override or Visual Studio developer shell are needed: the ROCm clang builds C, C++ and HIP alike and locates the MSVC toolchain itself. CMake >= 3.26 and Ninja are required (Windows only ships a Visual Studio generator, which has no HIP language support). On Windows the Microsoft C++ build tools and Windows SDK must be installed, since clang links against them and CMake compiles a resource file with the SDK's rc.exe, which the build locates itself rather than expecting on PATH. Use the Visual Studio 2022 v143 toolset; newer MSVC toolsets are not yet reliable with ROCm.

When CUDA and ROCm toolchains are both installed, the source build defaults to CUDA only. This avoids compiling an unused multi-architecture HIP binary on an NVIDIA workstation. Request a combined build explicitly:

COMFY_KITCHEN_BUILD_HIP=1 pip install .

Architectures default to the validated GPUs the build machine can see, or to every target in the backend's architecture manifest when it can see none (a CI box), which is what the wheels carry. Detection reads the visible devices through PyTorch, so under PEP 517 build isolation (a plain pip install .) it sees nothing and falls back to the full target list; set COMFY_HIP_ARCHS, or pass --no-build-isolation, to build for the local GPU instead. Building for one target is much faster:

COMFY_HIP_ARCHS=gfx1201 pip install .
$env:COMFY_HIP_ARCHS = "gfx1201"; pip install .

PYTORCH_ROCM_ARCH and GPU_ARCHS are honoured too. When the build machine sees AMD GPUs but none is RDNA2/3/3.5/4 (CDNA has MFMA, not WMMA), the extension is skipped rather than built (seeing no GPU at all falls back to the full target list above instead); COMFY_KITCHEN_BUILD_HIP=1 requests HIP explicitly (and makes an unsupported visible AMD GPU a hard error), while COMFY_KITCHEN_BUILD_NO_HIP=1 suppresses the backend entirely.

Architecture overrides are exact and fail closed. A compiler-recognized target that is not in the manifest is rejected until its device and WMMA policies have been reviewed and added.

Both extensions are built against the Python limited API on 3.12+, so a wheel carrying CUDA and HIP side by side keeps its abi3 tag. At runtime only the extension matching PyTorch's CUDA or ROCm runtime is loaded.

Quantized Tensors

The library provides QuantizedTensor, a torch.Tensor subclass that transparently intercepts PyTorch operations and dispatches them to optimized quantized kernels when available.

Layout Format HW Requirement Description
TensorCoreFP8Layout FP8 E4M3 SM ≥ 8.9 (Ada) Per-tensor scaling, 1:1 element mapping
TensorCoreNVFP4Layout NVFP4 E2M1 SM ≥ 10.0 (Blackwell) Block quantization with 16-element blocks
TensorCoreMXFP8Layout MXFP8 E4M3 SM ≥ 10.0 (Blackwell) Block quantization with 32-element blocks, E8M0 scales
from comfy_kitchen.tensor import QuantizedTensor, TensorCoreFP8Layout, TensorCoreNVFP4Layout

# Quantize a tensor
x = torch.randn(128, 256, device="cuda", dtype=torch.bfloat16)
qt = QuantizedTensor.from_float(x, TensorCoreFP8Layout)

# Operations dispatch to optimized kernels automatically
output = torch.nn.functional.linear(qt, weight_qt)

# Dequantize back to float
dq = qt.dequantize()

Installation

From PyPI

# Install default (Linux/Windows/MacOS)
pip install comfy-kitchen

# Install with CUBLAS for NVFP4 (+Blackwell)
pip install comfy-kitchen[cublas]

Package Variants

  • CUDA wheels: Linux x86_64 and Windows x64
  • Pure Python wheel: Any platform, eager and triton backends only

Wheels are built for Python 3.10, 3.11, and 3.12+ (using Stable ABI for 3.12+).

From Source

# Standard installation with CUDA support
pip install .

# Development installation
pip install -e ".[dev]"

# For faster rebuilds during development (skip build isolation)
pip install -e . --no-build-isolation -v

Build Options

These options require using setup.py directly (not pip install):

Option Command Description Default
--no-cuda python setup.py bdist_wheel --no-cuda Disable CUDA; without --hip, build a CPU-only wheel Enabled (build with CUDA)
--hip python setup.py bdist_wheel --hip Add HIP explicitly (including to a CUDA build) Auto only when CUDA is unavailable
--no-hip python setup.py bdist_wheel --no-hip Disable HIP Disabled
--hip-archs=... python setup.py build_ext --hip-archs="gfx1200;gfx1201" HIP architectures to build for Visible supported AMD GPUs, otherwise all supported targets
--cuda-archs=... python setup.py build_ext --cuda-archs="80;89" CUDA architectures to build for 75-virtual;80;89;90a;100f;120f (Linux), 75-virtual;80;89;120f (Windows)
--debug-build python setup.py build_ext --debug-build Build in debug mode with symbols Disabled (Release)
--lineinfo python setup.py build_ext --lineinfo Enable NVCC line info for profiling Disabled
# Build CPU-only wheel (pure Python, no CUDA required)
python setup.py bdist_wheel --no-cuda

# Build with custom CUDA architectures
python setup.py build_ext --cuda-archs="80;89" bdist_wheel

# Debug build with line info for profiling
python setup.py build_ext --debug-build --lineinfo bdist_wheel

Requirements

  • Python: ≥3.10
  • PyTorch: ≥2.7.0
  • CUDA Runtime (for CUDA wheels): ≥13.0
    • Pre-built wheels require NVIDIA Driver r580+
    • Building from source requires CUDA Toolkit ≥12.8 and CUDA_HOME environment variable
  • nanobind: ≥2.0.0 (for building from source)
  • CMake: ≥3.26 (for building from source; the abi3 modules need FindPython's Development.SABIModule)

Quick Start

import comfy_kitchen as ck
import torch

# Automatic backend selection (hip -> cuda -> triton -> eager)
x = torch.randn(100, 100, device="cuda")
scale = torch.tensor([1.0], device="cuda")
result = ck.quantize_per_tensor_fp8(x, scale)

# Check which backends are available
print(ck.list_backends())

# Force a specific backend
result = ck.quantize_per_tensor_fp8(x, scale, backend="eager")

# Temporarily use a different backend
with ck.use_backend("triton"):
    result = ck.quantize_per_tensor_fp8(x, scale)

Backend System

The library supports multiple backends:

  • eager: Pure PyTorch implementation
  • cuda: Custom CUDA C kernels (CUDA only)
  • hip: Custom HIP kernels (WMMA GEMMs on RDNA3/3.5/4; non-WMMA kernels also on RDNA2)
  • triton: Triton JIT-compiled kernels

Automatic Backend Selection

When you call a function, the registry selects the best backend by checking constraints in priority order (hip → cuda → triton → eager):

# Backend is selected automatically based on input constraints
result = ck.quantize_per_tensor_fp8(x, scale)

# On CPU tensors → falls back to eager (only backend supporting CPU)
# On CUDA tensors → uses cuda or triton (higher priority)

Constraint System

Each backend declares constraints for its functions:

Constraint Description
Device Which device types are supported
Dtype Allowed input/output dtypes per parameter
Shape Shape requirements (e.g., 2D tensors, dimensions divisible by 16)
Compute Capability Minimum GPU architecture (e.g., SM 8.0 for FP8, SM 10.0 for NVFP4)

The registry validates inputs against these constraints before calling the backend—no try/except fallback patterns. If no backend can handle the inputs, a NoCapableBackendError is raised with details.

# Debug logging to see backend selection
import logging
logging.getLogger("comfy_kitchen.dispatch").setLevel(logging.DEBUG)

Testing

Run the test suite with pytest:

# Run all tests
pytest

# Run specific test file
pytest tests/test_backends.py

# Run with verbose output
pytest -v

# Run specific test
pytest tests/test_backends.py::TestBackendSystem::test_list_backends

Metadata

Release files for comfy-kitchen 0.2.40

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for comfy-kitchen 0.2.40
File
comfy_kitchen-0.2.40-py3-none-any.whl Python 3 none any Details
comfy_kitchen-0.2.40-cp312-abi3-win_arm64.whl CPython 3.12 abi3 Windows ARM64 Details
comfy_kitchen-0.2.40-cp312-abi3-win_amd64.whl CPython 3.12 abi3 Windows x86-64 Details
comfy_kitchen-0.2.40-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 abi3 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
comfy_kitchen-0.2.40-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 abi3 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
comfy_kitchen-0.2.40-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
comfy_kitchen-0.2.40-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
comfy_kitchen-0.2.40-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
comfy_kitchen-0.2.40-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
comfy_kitchen-0.2.40-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
comfy_kitchen-0.2.40-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details

Total release size: 513.7 MB

Release files / comfy_kitchen-0.2.40-py3-none-any.whl

Download URL comfy_kitchen-0.2.40-py3-none-any.whl
Size 260.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e5834f2ce993c8d5ea8c01650157c639742b5a28ecb0d95253777f31b5248099
BLAKE2b-256 checksum
How to use checksums
9c2e1c6c621a1cd2ba89ae12fe99e095faa50986c0e6485461170732adfcfa6d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp312-abi3-win_arm64.whl

Download URL comfy_kitchen-0.2.40-cp312-abi3-win_arm64.whl
Size 8.6 MB
Tags CPython 3.12 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
9ca9cb1518604498f914b6419fa3c07d89c9c1d0676dd39ec64bc603820489a2
BLAKE2b-256 checksum
How to use checksums
c75e09daa3f84dd1ad3fde034c9b5148417e998ce8d39c79fa9790b2089667c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp312-abi3-win_amd64.whl

Download URL comfy_kitchen-0.2.40-cp312-abi3-win_amd64.whl
Size 64.0 MB
Tags CPython 3.12 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
f40547824b2a0ad3425d10946d2fe2a5ba8595cb53361991c914bda4addccfb5
BLAKE2b-256 checksum
How to use checksums
f182133fadabcc038d59d3220823633824ec731e7a8b2e543ab4544b09537357
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL comfy_kitchen-0.2.40-cp312-abi3-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 67.8 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
eb726664c772189e6ece742876487f1349965808b854742790e9001dbb7c0f9d
BLAKE2b-256 checksum
How to use checksums
5d401871ee8c58eeef8d15cbf49a461eba0775303f2d9eb34c11af7c29e455c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL comfy_kitchen-0.2.40-cp312-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 36.5 MB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
3bd596482a4f69a726845ce75fa751896ce7e5c2d210ed3a30794ea17871bebb
BLAKE2b-256 checksum
How to use checksums
48515944dd2e8b78c475173eb4afcaa46c07f0b5c68df2f7d6cd94823017aa5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp311-cp311-win_amd64.whl

Download URL comfy_kitchen-0.2.40-cp311-cp311-win_amd64.whl
Size 64.0 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
6a7dbdcaca5c00d5f05ed01ba4cdf4c845a19b62c1ef71ecd9a22b3bcd1013bd
BLAKE2b-256 checksum
How to use checksums
a87cccafb20263256c6eedc388434d4d8fd3bb4f69f8750110b960fb317bc10a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL comfy_kitchen-0.2.40-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 67.8 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
33bccd3099107742088a637abfff6367b4325356e11aaf9f0e691e2b1833ebb5
BLAKE2b-256 checksum
How to use checksums
a62d0d4bcca4388e39dc6fd92d53f61516d4ff77f73d3fde017f9fa62a6d61ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL comfy_kitchen-0.2.40-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 36.5 MB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
7be61f9e0969d2379d257da5ec895f18247133a4ca33dce194b81717dc1987b5
BLAKE2b-256 checksum
How to use checksums
35a459566bd1bdec86405d2d11107d15bdaa3b9ad583602146ea8afc5622a87f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp310-cp310-win_amd64.whl

Download URL comfy_kitchen-0.2.40-cp310-cp310-win_amd64.whl
Size 64.0 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
9f490800ab2d3c165c2b8b8379a78fe2cec9541e63fae62515190e9d9b7cc946
BLAKE2b-256 checksum
How to use checksums
5e8d653d3bc9000813e38b2fc8e9544d4026be3d0514201e7bb2a78cf0a8a755
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL comfy_kitchen-0.2.40-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 67.8 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2ba844655093b8b04e4b09217ba0e565728be27b5ccb581c44dd3138384d743b
BLAKE2b-256 checksum
How to use checksums
f4dd5166a81329f2e3d5d9aee16508fcbdea58f50fa0fbe38db95ee79fa627f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Release files / comfy_kitchen-0.2.40-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL comfy_kitchen-0.2.40-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 36.5 MB
Tags CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
e2294f2c20927ccbe65d3ba90ec56d280e3e594e2789d41aadfb8f48ad299d24
BLAKE2b-256 checksum
How to use checksums
2dcb6186dc8de20f54e17f36678970e6f6132cfda316b2cde1ecd798ecf0f5ea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.16

Security for comfy-kitchen 0.2.40

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.2.40 This release

11 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page