- patcher: complete the H2D transfer for modules ComfyUI's lowvram arbiter leaves on CPU during partial loads (plain transformers trees have no comfy.ops streaming hooks; crashed at forward with 'Input type CUDABFloat16Type and weight type CPUBFloat16Type' on models larger than free VRAM, e.g. 7B) - finish Large->7B model_info rename: tokenizer repo selection now matches '7B' (previously fell back to the 1.5B tokenizer), 7B added to external-loader config options (shares Large packaged defaults), stale test assertions updated, tests for the removed external-model example workflow deleted - loader: packaged tokenizer.json loads directly from the node folder instead of being copied into user model directories; HF download stays as last resort; model dirs stay untouched
34 lines
1001 B
Python
34 lines
1001 B
Python
"""Tests for example workflow JSON."""
|
|
|
|
import os
|
|
import json
|
|
import pytest
|
|
|
|
|
|
class TestWorkflow:
|
|
"""Test the example workflow JSON."""
|
|
|
|
def _get_workflow_path(self):
|
|
root = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
|
return os.path.join(root, "example_workflows", "VibeVoice_example.json")
|
|
|
|
def test_workflow_json_valid(self):
|
|
"""The workflow JSON should be valid JSON."""
|
|
path = self._get_workflow_path()
|
|
with open(path, "r", encoding="utf-8") as f:
|
|
data = json.load(f)
|
|
assert data is not None
|
|
|
|
def test_workflow_has_nodes(self):
|
|
"""The workflow should contain nodes."""
|
|
path = self._get_workflow_path()
|
|
with open(path, "r", encoding="utf-8") as f:
|
|
data = json.load(f)
|
|
# Workflow format varies; check for common keys
|
|
if "nodes" in data:
|
|
assert len(data["nodes"]) > 0
|
|
elif "prompt" in data:
|
|
assert len(data["prompt"]) > 0
|
|
|
|
|