dinkster-inference
This distribution packages upstream ComfyUI's inference library as
dinkster_inference. The comfy import name aliases the same modules, not a
second instance of model-management state. ComfyUI's application, server and
node packages are not distributed here. Modules absent from inference can
resolve from a ComfyUI checkout's comfy/ directory on sys.path; inference
modules always take precedence over checkout modules.
python -m pip install .
Releases
Consumers pin an exact dinkster-inference==X.Y.Z release in package metadata
and record its PyPI wheel hashes in their lockfile. Before the first PyPI
publication of 0.1.0, build a local wheel with python -m build.
The upstream sync owner updates project.version when landed inference changes
need a new release and validates that commit before requesting publication.
An authorized maintainer pushes the matching vX.Y.Z tag from the landed
commit. .github/workflows/release.yml builds the wheel and sdist, checks
their metadata, and publishes those same artifacts using trusted publishing.
Branches and pull requests build without publishing. After publication the
sync owner updates Dinkster's exact requirement and lock together; setup
scripts do not select a separate inference commit.
The repository owner must register the PyPI project dinkster-inference with
a trusted publisher for owner Kosinkadink, repository dinkster-inference,
workflow release.yml, environment pypi. Before publishing, protect that
GitHub environment with required owner approval and restrict deployment to
version tags. Publication requires the owner's authorization; no stored PyPI
API token is used.
As in upstream ComfyUI, CPU callers select CPU execution before importing model management or loaders:
import dinkster_inference.cli_args as cli_args
cli_args.args.cpu = True
import comfy.sd
import dinkster_inference.sd
assert comfy.sd is dinkster_inference.sd
See upstream provenance for the fork point and omitted
application tests. python tools/check_upstream_parity.py checks the library
and retained test files against that upstream commit. New upstream files use
tools/rewrite_upstream_imports.py for import renaming and ASCII source spelling;
escaped string values and non-ASCII tokenizer resource data retain their meaning.
Workflow comparison
Install a built wheel and its CUDA dependencies in a separate environment, then run the harness with that environment's Python. The fork worker uses the installed package with isolated imports; the reference worker imports a clean, detached ComfyUI checkout at the recorded fork point. Both use the same interpreter, models, seed and deterministic PyTorch settings in separate processes.
CUDA_VISIBLE_DEVICES=1 /path/to/venv/bin/python -I tools/compare_workflows.py \
--upstream /path/to/ComfyUI --output-dir /path/to/results \
--checkpoint /path/to/v1-5-pruned-emaonly-fp16.safetensors \
--lora /path/to/lcm-lora-sdv1-5.safetensors \
--controlnet /path/to/control_v11p_sd15_canny.safetensors \
--h3-model /path/to/minimax_h3_fl2va_int8_convrot.safetensors \
--h3-clip /path/to/qwen3vl_32b_minimax_h3_int8_convrot.safetensors \
--h3-vae /path/to/minimax_h3_video_vae_fp16.safetensors
The five SD1.5 cases use 512x512, seed 459, Euler/normal, 20 steps and CFG 7:
baseline; LoRA strength 0.8; five linearly interpolated hook LoRA keyframes from
strength 0 to 1 over the first half of sampling (first guarantee 1, subsequent
guarantees 0, matching upstream's interpolated-keyframe node); ControlNet strength
1 over timestep range 0.0-0.6 using a fixed asymmetric edge map; and overlapping
16-frame context windows over a 32-frame batch. H3 uses 1344x768, 124 frames,
seed 1064, Euler/normal, 20 steps and CFG 6, with the 32B text encoder on CPU
on both sides to avoid GPU dequantization memory exhaustion. If H3 weights are absent, supply a
bundled Flux dev checkpoint via --flux-checkpoint instead (512x512, four steps,
seed 459, CFG 1, guidance 3.5). --cases selects individual cases for diagnosis.
comparison.json records input hashes, installed-package provenance, environment,
per-case raw latent and PNG hashes, and maximum absolute differences. The result
directory also contains tensors, PNGs and worker logs. Exit status is zero only
when every selected case is identical; missing model files, worker errors and
non-finite values never count as parity. No model downloads happen in the harness.
Metadata
Release files for dinkster-inference 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| dinkster_inference-0.1.0.tar.gz | 10.2 MB | With provenance | Details for dinkster_inference-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| dinkster_inference-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for dinkster_inference-0.1.0-py3-none-any.whl |
Total release size: 20.8 MB
Release files / dinkster_inference-0.1.0.tar.gz
| Download URL | dinkster_inference-0.1.0.tar.gz |
|---|---|
| Size | 10.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
deb7e0574a7e90d947024f328ec958a543b335408ea066efc7d46105df9b1868
|
|
BLAKE2b-256 checksum How to use checksums |
58777f334aa1562eadbe540a92f8e5537d914d294f13ccdc4529490370abec20
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.
Transparency logRelease files / dinkster_inference-0.1.0-py3-none-any.whl
| Download URL | dinkster_inference-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ffcdcf657d01d48d0348453560739f16f8fe74da7e5cc858959560ecdb2dd51f
|
|
BLAKE2b-256 checksum How to use checksums |
84c0ed5e932b2c65f07cf0f32e7b9b4ad2cd508717be95fc180355610c560dee
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.
Transparency logSecurity for dinkster-inference 0.1.0
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.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for dinkster_inference-0.1.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.
Transparency logA 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.
To learn more about protecting yourself from malicious actors, visit our package security documentation.