Compare commits

..

1 Commits

Author SHA1 Message Date
Matt Miller
2385de1e4b
Merge fd17b95e1c into 65045730a6 2026-05-08 22:22:08 +00:00
2 changed files with 253 additions and 79 deletions

View File

@ -1390,7 +1390,7 @@ def convert_old_quants(state_dict, model_prefix="", metadata={}):
k_out = "{}.weight_scale".format(layer)
if layer is not None:
layer_conf = {"format": "float8_e4m3fn"}
layer_conf = {"format": "float8_e4m3fn"} # TODO: check if anyone did some non e4m3fn scaled checkpoints
if full_precision_matrix_mult:
layer_conf["full_precision_matrix_mult"] = full_precision_matrix_mult
layers[layer] = layer_conf

View File

@ -74,8 +74,6 @@ tags:
description: Cloud workflow management and versioning (cloud-only)
- name: task
description: Background task management (cloud-only)
- name: runtime-only
description: Operations served exclusively by the cloud runtime with no local equivalent
paths:
# ---------------------------------------------------------------------------
@ -351,6 +349,35 @@ paths:
"404":
description: Job not found
/api/job/{job_id}/status:
get:
operationId: getJobStatus
tags: [queue]
summary: Get job status (legacy singular path)
x-runtime: [cloud]
deprecated: true
description: |
**Deprecated.** This endpoint is superseded by `GET /api/jobs/{job_id}`.
Clients should migrate; the endpoint is retained for backward
compatibility but will be removed in a future release.
parameters:
- name: job_id
in: path
description: The job ID to fetch status for.
required: true
schema:
type: string
format: uuid
responses:
"200":
description: Job status
content:
application/json:
schema:
$ref: "#/components/schemas/JobDetailResponse"
"404":
description: Job not found
# ---------------------------------------------------------------------------
# History
# ---------------------------------------------------------------------------
@ -438,6 +465,75 @@ paths:
additionalProperties:
$ref: "#/components/schemas/HistoryEntry"
/api/history_v2:
get:
operationId: getHistoryV2
tags: [history]
summary: Get execution history (v2 format)
x-runtime: [cloud]
deprecated: true
description: |
**Deprecated.** This endpoint is superseded by `GET /api/jobs`.
Clients should migrate; the endpoint is retained for backward
compatibility but will be removed in a future release.
parameters:
- $ref: "#/components/parameters/ComfyUserHeader"
- name: limit
in: query
schema:
type: integer
description: Maximum number of history entries to return
- name: offset
in: query
schema:
type: integer
default: 0
description: Pagination offset
responses:
"200":
description: History entries
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
$ref: "#/components/schemas/HistoryEntry"
pagination:
$ref: "#/components/schemas/PaginationInfo"
/api/history_v2/{prompt_id}:
get:
operationId: getHistoryV2ByPromptId
tags: [history]
summary: Get v2 history for a specific prompt
x-runtime: [cloud]
deprecated: true
description: |
**Deprecated.** This endpoint is superseded by `GET /api/jobs/{prompt_id}`.
Clients should migrate; the endpoint is retained for backward
compatibility but will be removed in a future release.
parameters:
- $ref: "#/components/parameters/ComfyUserHeader"
- name: prompt_id
in: path
description: The prompt ID to fetch history for.
required: true
schema:
type: string
format: uuid
responses:
"200":
description: Single history entry
content:
application/json:
schema:
$ref: "#/components/schemas/HistoryEntry"
"404":
description: Prompt not found
# ---------------------------------------------------------------------------
# Upload
# ---------------------------------------------------------------------------
@ -594,6 +690,71 @@ paths:
"404":
description: File not found
/api/viewvideo:
get:
operationId: viewVideo
tags: [view]
summary: View or download a video file (legacy alias)
x-runtime: [cloud]
deprecated: true
description: |
**Deprecated.** This endpoint is an alias of `GET /api/view` added for
legacy history-queue video playback. Callers should use `/api/view`
directly; the endpoint is retained for backward compatibility but will
be removed in a future release.
parameters:
- name: filename
in: query
required: true
schema:
type: string
description: Name of the file to view
- name: type
in: query
schema:
type: string
enum: [input, output, temp]
default: output
description: Directory type
- name: subfolder
in: query
schema:
type: string
description: Subfolder within the directory
- name: preview
in: query
schema:
type: string
description: Preview format hint (e.g. "webp;90")
- name: channel
in: query
schema:
type: string
enum: [rgba, rgb, a]
description: Channel extraction mode
responses:
"200":
description: File content
content:
image/*:
schema:
type: string
format: binary
video/*:
schema:
type: string
format: binary
audio/*:
schema:
type: string
format: binary
application/octet-stream:
schema:
type: string
format: binary
"404":
description: File not found
/api/view_metadata/{folder_name}:
get:
operationId: viewMetadata
@ -694,6 +855,32 @@ paths:
x-runtime: [cloud]
description: "[cloud-only] How the templates version was resolved. Local ComfyUI returns null."
/api/logs:
get:
operationId: getLogs
tags: [system]
summary: Get server logs (placeholder)
x-runtime: [cloud]
deprecated: true
description: |
**Deprecated.** This endpoint returns a static placeholder response and
provides no real log data. It is retained only to avoid breaking clients
that still call it. Clients should remove their dependency; the endpoint
will be removed in a future release.
responses:
"200":
description: Static placeholder log response
content:
application/json:
schema:
type: object
properties:
logs:
type: array
items:
type: string
description: Log lines (always empty in current implementation)
# ---------------------------------------------------------------------------
# Node / Object Info
# ---------------------------------------------------------------------------
@ -2071,6 +2258,7 @@ paths:
type: integer
description: Number of assets marked as missing
# ===========================================================================
# Cloud-runtime FE-facing operations
#
@ -2121,11 +2309,7 @@ paths:
operationId: getCloudJobStatus
tags: [queue]
summary: Get status of a cloud job
deprecated: true
description: |
**Deprecated.** This endpoint is superseded by `GET /api/jobs/{job_id}`.
Clients should migrate; the endpoint is retained for backward
compatibility but will be removed in a future release.
description: "[cloud-only] Returns the current execution status of a cloud job."
x-runtime: [cloud]
parameters:
- name: job_id
@ -2195,11 +2379,7 @@ paths:
operationId: getHistoryV2
tags: [history]
summary: Get paginated execution history (v2)
deprecated: true
description: |
**Deprecated.** This endpoint is superseded by `GET /api/jobs`.
Clients should migrate; the endpoint is retained for backward
compatibility but will be removed in a future release.
description: "[cloud-only] Returns a paginated list of execution history entries in the v2 format, with richer metadata than the legacy history endpoint."
x-runtime: [cloud]
parameters:
- name: limit
@ -2238,11 +2418,7 @@ paths:
operationId: getHistoryV2ByPromptId
tags: [history]
summary: Get v2 history for a specific prompt
deprecated: true
description: |
**Deprecated.** This endpoint is superseded by `GET /api/jobs/{prompt_id}`.
Clients should migrate; the endpoint is retained for backward
compatibility but will be removed in a future release.
description: "[cloud-only] Returns the v2 history entry for a specific prompt execution."
x-runtime: [cloud]
parameters:
- name: prompt_id
@ -2277,12 +2453,7 @@ paths:
operationId: getCloudLogs
tags: [system]
summary: Get cloud execution logs
deprecated: true
description: |
**Deprecated.** This endpoint returns a static placeholder response and
provides no real log data. It is retained only to avoid breaking clients
that still call it. Clients should remove their dependency; the endpoint
will be removed in a future release.
description: "[cloud-only] Returns execution logs for the authenticated user's cloud jobs."
x-runtime: [cloud]
parameters:
- name: job_id
@ -2591,38 +2762,35 @@ paths:
# ---------------------------------------------------------------------------
/api/experiment/nodes:
get:
operationId: getNodeInfoSchema
tags: [runtime-only]
summary: Get pre-rendered node info schema
description: "[cloud-only] Returns the static ComfyUI object_info schema, identical for every caller, rendered once at startup with empty model/user-file context. Served by a raw HTTP handler that writes pre-rendered bytes with ETag + Cache-Control validators for RFC 7232 conditional GETs."
operationId: listCloudNodes
tags: [node]
summary: List installed custom nodes
description: "[cloud-only] Returns the list of custom node packages installed in the cloud runtime."
x-runtime: [cloud]
parameters:
- name: If-None-Match
in: header
required: false
- name: limit
in: query
schema:
type: string
description: Entity tag previously returned by this endpoint. When present and matching, the server returns 304 Not Modified.
type: integer
description: Maximum number of results
- name: offset
in: query
schema:
type: integer
description: Pagination offset
responses:
"200":
description: Node info schema
headers:
ETag:
schema:
type: string
description: Entity tag for conditional request validation
Cache-Control:
schema:
type: string
description: Cache directives for the response
description: Custom node list
content:
application/json:
schema:
type: object
additionalProperties:
$ref: "#/components/schemas/NodeInfo"
"304":
description: Not Modified — returned when the client sends a matching If-None-Match header
$ref: "#/components/schemas/CloudNodeList"
"401":
description: Unauthorized
content:
application/json:
schema:
$ref: "#/components/schemas/CloudError"
post:
operationId: installCloudNode
tags: [node]
@ -2672,10 +2840,10 @@ paths:
/api/experiment/nodes/{id}:
get:
operationId: getNodeByID
tags: [runtime-only]
summary: Get a single node definition by ID
description: "[cloud-only] Returns one node's definition from the pre-indexed object_info schema. Served by a raw HTTP handler that writes pre-rendered bytes with ETag + Cache-Control validators for RFC 7232 conditional GETs."
operationId: getCloudNode
tags: [node]
summary: Get details of an installed custom node
description: "[cloud-only] Returns details about a specific installed custom node package."
x-runtime: [cloud]
parameters:
- name: id
@ -2683,33 +2851,26 @@ paths:
required: true
schema:
type: string
description: Node class identifier
- name: If-None-Match
in: header
required: false
schema:
type: string
description: Entity tag previously returned by this endpoint. When present and matching, the server returns 304 Not Modified.
description: Custom node package ID
responses:
"200":
description: Single node definition
headers:
ETag:
schema:
type: string
description: Entity tag for conditional request validation
Cache-Control:
schema:
type: string
description: Cache directives for the response
description: Node detail
content:
application/json:
schema:
$ref: "#/components/schemas/NodeInfo"
"304":
description: Not Modified — returned when the client sends a matching If-None-Match header
$ref: "#/components/schemas/CloudNode"
"401":
description: Unauthorized
content:
application/json:
schema:
$ref: "#/components/schemas/CloudError"
"404":
description: Node not found
description: Not found
content:
application/json:
schema:
$ref: "#/components/schemas/CloudError"
delete:
operationId: uninstallCloudNode
tags: [node]
@ -5386,12 +5547,7 @@ paths:
operationId: viewVideo
tags: [view]
summary: View or download a video file
deprecated: true
description: |
**Deprecated.** This endpoint is an alias of `GET /api/view` added for
legacy history-queue video playback. Callers should use `/api/view`
directly; the endpoint is retained for backward compatibility but will
be removed in a future release.
description: "[cloud-only] Serves a video file from the output directory. Used by the frontend video player."
x-runtime: [cloud]
parameters:
- name: filename
@ -5544,6 +5700,7 @@ paths:
schema:
$ref: "#/components/schemas/CloudError"
components:
parameters:
ComfyUserHeader:
@ -6895,6 +7052,7 @@ components:
error:
type: string
# -------------------------------------------------------------------
# Cloud-runtime schemas
#
@ -7131,6 +7289,22 @@ components:
enabled:
type: boolean
CloudNodeList:
type: object
x-runtime: [cloud]
description: "[cloud-only] Paginated list of installed custom node packages."
required:
- nodes
properties:
nodes:
type: array
items:
$ref: "#/components/schemas/CloudNode"
total:
type: integer
has_more:
type: boolean
HubLabel:
type: object
x-runtime: [cloud]