CivArchive
    Qwen Image 2.1 Character Sheet Designer -Image Generation - v1.2
    NSFW
    Preview 145551279
    Preview 145551282
    Preview 145551285

    Qwen Image 2.1 Character Sheet Designer for ComfyUI

    V1.5.4

    What's new

    Updated the normal and Turbo workflow templates with optional LoRA support. Both require rgthree-comfy for the Power Lora Loader. No LoRA is selected by default.


    Updated the standard and Turbo workflows. Set filenames directly in Save Image, with unused auxiliary outputs hidden for a cleaner UI. The legacy V1.2 template remains included.

    • Batch Out generates selected views individually. Auto uses view-specific sizes; Manual applies width × height to each image.

    • Three extra references and Sheet Encode support reference roles and explicit source regions.

    • Per-part controls beneath the cards select clothing, hands and footwear; all default to Auto.

    • Improved generation prompts cover worn gloves, paired footwear, shoe coverage and Auto clothing-on-wearer views.

    Create multi-view character sheets from a single reference image with a simple, intuitive interface. Choose your views, adjust the output size, and add instructions for clothing, hair, accessories, and other details.

    Get the latest custom node, sample workflow, and full instructions on GitHub.

    This Qwen Image 2.1 version combines your character reference with a mannequin layout image and a generated prompt. The bundled workflow uses no LoRA and requires no character-specific training. Install this custom node, then use the included workflow with ComfyUI’s native Qwen Image 2.1 nodes.

    Features

    • Layout image output: provides Qwen with a visual composition guide alongside your character reference

    • Seven selectable views: front and profile busts, front/side/back full-body views, hands, and feet or footwear

    • Part prompts: describe changes to hair, face, upper clothing, back details, lower clothing, hands, footwear, or the overall appearance

    • Style presets: Anime, Photo, Realistic painting, Semi-realistic anime, Oil painting, Watercolor, Gouache, Colored pencil, and 3D CG. Select None to follow the reference’s visual style

    • Auto and Manual sizing, with five-view, four-view, and seven-view presets

    • Prompt preview, saved settings, Undo, and English/Japanese UI

    Installation

    Open a terminal in your ComfyUI/custom_nodes folder and run:

    git clone https://github.com/ukr8b3g-cmyk/Qwen-Image-2.1-Character-Sheet-Designer.git

    Restart ComfyUI and refresh your browser. Load the sample workflow, then select your reference image and installed model files.

    A compatible ComfyUI version with Qwen Image 2.1 support is required. Model files are not included.

    Tips

    Start with the standard five-view layout. Add hand or footwear close-ups only when needed, or select a single view for an individual image.

    The layout image and style presets guide the result, but exact placement, viewing direction, and character consistency are not guaranteed. Prompt adjustments may be needed, especially when changing clothing or adding details that are not visible in the reference.

    The included workflow is a starting point. Feel free to customize the nodes inside its subgraph for your own setup.

    For detailed usage, requirements, and future updates, please check the GitHub README.

    Description

    FAQ

    Comments (8)

    Jojo0GojoOct 17, 2026· 2 reactions
    CivitAI

    workflow gives me an error:
    # ComfyUI Error Report ## Error Details - Node ID: 27:10 - Node Type: QwenImage21CharacterSheetEncode - Exception Type: AttributeError - Exception Message: AttributeError: module 'tensorflow' has no attribute 'Tensor'

    ukr8b3g201
    Author
    Oct 17, 2026

    Thanks for reporting this issue!

    I've checked the implementation of Qwen 2.1 Sheet Encode. This node calls ComfyUI's built-in TextEncodeQwenImage21 and does not directly depend on TensorFlow.

    The error:

    AttributeError: module 'tensorflow' has no attribute 'Tensor'

    may be caused by an incomplete or broken TensorFlow installation, or by another Python module conflicting with TensorFlow.

    Could you please try the following checks?

    1. Check the installed packages

    Open PowerShell in your ComfyUI portable installation folder and run:

    ```powershell

    .\python_embeded\python.exe -m pip show tensorflow tensorflow-intel tensorflow-cpu einops

    ```

    If you use a virtual environment or another ComfyUI installation method, please use the Python executable that ComfyUI actually runs.

    2. Check whether TensorFlow is working correctly

    Run:

    ```powershell

    .\python_embeded\python.exe -c "import sys; import tensorflow as tf; print('Python:', sys.executable); print('Version:', getattr(tf, '__version__', None)); print('Path:', getattr(tf, '__file__', None)); print('Tensor:', hasattr(tf, 'Tensor')); print('Variable:', hasattr(tf, 'Variable'))"

    ```

    How to interpret the results:

    * Tensor: True / Variable: True — The main TensorFlow types are available. This does not guarantee that the entire installation is healthy, but the reported error needs further investigation.

    * Tensor: False or Variable: False — The imported TensorFlow module is missing expected attributes. This suggests an incomplete installation, a corrupted package, or a conflicting module.

    * Version: None or Path: None — Python may be importing an incomplete package or a namespace package instead of a normal TensorFlow installation. This requires further investigation.

    * Path points to an unexpected folder — A local file or another package may be shadowing the actual TensorFlow installation.

    * ModuleNotFoundError: No module named 'tensorflow' — TensorFlow is not available in the Python environment being checked. Please verify that this is the same Python environment used by ComfyUI.

    These results can help identify the problem, but they do not prove that TensorFlow is corrupted.

    3. Test the standard ComfyUI encoder

    Please also try replacing Qwen 2.1 Sheet Encode with ComfyUI's built-in Text Encode Qwen Image 2.1 node, using the same CLIP, VAE, reference image, and prompt.

    If the same error occurs with the standard encoder, the issue is more likely related to the ComfyUI environment, its dependencies, or the Core encoding process rather than this custom node.

    4. Please share the results

    It would be very helpful if you could provide:

    * The output of both commands above.

    * Your ComfyUI version.

    * Whether the standard Text Encode Qwen Image 2.1 node produces the same error.

    The *complete traceback from the ComfyUI console**, especially the lines showing which Python file raised the exception.

    Similar errors have occurred when einops encounters an incomplete or conflicting TensorFlow module.

    However, I would prefer to confirm the actual traceback before recommending any package changes.

    Please don't uninstall or reinstall TensorFlow yet, as other custom nodes may depend on it.

    Thanks for your help! Once we have these results, we should be able to narrow down the cause and determine the safest fix.

    Jojo0GojoOct 17, 2026

    @ukr8b3g201 I am running comfyui easy, and response with "WARNING: Package(s) not found: tensorflow-cpu", but your h3 minimax charsheet version is running fine. But I would prefer the qwen version, because I hope i produces more consistent face characteristics.

    ukr8b3g201
    Author
    Oct 17, 2026

    @Jojo0Gojo Thanks for checking! The “tensorflow-cpu not found” warning alone doesn’t mean TensorFlow is broken or that you need to install the CPU package. The Qwen Character Sheet node itself doesn’t require TensorFlow.

    When you say “ComfyUI easy,” do you mean ComfyUI Easy Install or the Easy Use custom nodes? A link to the version you use would help.

    Could you also share the full traceback from the ComfyUI console when the Qwen workflow fails, along with the exact command you ran for the package check? The check needs to use the same Python environment as ComfyUI.

    It’s helpful to know the H3 version works, but the Qwen workflow can use a different processing path. Let’s check the log first before installing or removing any packages.

    Jojo0GojoOct 17, 2026

    @ukr8b3g201 Its ComfyUI Easy Install, and it's actually at ComfyUI 0.39.2. I need to run the wf again for the error message.

    Jojo0GojoOct 17, 2026

    @ukr8b3g201

    [ERROR] !!! Exception during processing !!! module 'tensorflow' has no attribute 'Tensor'

    [ERROR] Traceback (most recent call last):

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\execution.py", line 547, in execute

    output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\execution.py", line 352, in get_output_data

    return_values = await asyncmap_node_over_list(prompt_id, unique_id, obj, input_data_all, obj.FUNCTION, allow_interrupt=True, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\execution.py", line 326, in asyncmap_node_over_list

    await process_inputs(input_dict, i)

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\execution.py", line 314, in process_inputs

    result = f(**inputs)

    ^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\custom_nodes\Qwen-Image-2.1-Character-Sheet-Designer\qwen_image21_character_sheet\sheet_encode.py", line 46, in encode

    output = TextEncodeQwenImage21.execute(clip=clip, prompt=prompt, negative_prompt=negative_prompt,

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\comfy_extras\nodes_qwen.py", line 173, in execute

    ref_latents.append(vae.encode(s))

    ^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\comfy\sd.py", line 1443, in encode

    model_management.raise_non_oom(e)

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\comfy\model_management.py", line 399, in raise_non_oom

    raise e

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\comfy\sd.py", line 1436, in encode

    out = self.first_stage_model.encode(pixels_in)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\comfy\ldm\wan\vae2_2.py", line 717, in encode

    return self.conv1(self.encoder(x)).chunk(2, dim=1)[0].squeeze(2)

    ^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1779, in wrappedcall_impl

    return self._call_impl(*args, **kwargs)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1790, in callimpl

    return forward_call(*args, **kwargs)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\comfy\ldm\wan\vae2_2.py", line 509, in forward

    x = layer(x)

    ^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1779, in wrappedcall_impl

    return self._call_impl(*args, **kwargs)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1790, in callimpl

    return forward_call(*args, **kwargs)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\comfy\ldm\wan\vae2_2.py", line 369, in forward

    x = module(x, feat_cache, feat_idx)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1779, in wrappedcall_impl

    return self._call_impl(*args, **kwargs)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\torch\nn\modules\module.py", line 1790, in callimpl

    return forward_call(*args, **kwargs)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\comfy\ldm\wan\vae2_2.py", line 99, in forward

    x = rearrange(x, "b c t h w -> (b t) c h w")

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\einops\einops.py", line 616, in rearrange

    return reduce(tensor, pattern, reduction="rearrange", **axes_lengths)

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\einops\einops.py", line 535, in reduce

    backend = get_backend(tensor)

    ^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\einops\_backends.py", line 58, in get_backend

    if backend.is_appropriate_type(tensor):

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\python_embeded\Lib\site-packages\einops\_backends.py", line 360, in is_appropriate_type

    return isinstance(tensor, (self.tf.Tensor, self.tf.Variable))

    ^^^^^^^^^^^^^^

    AttributeError: module 'tensorflow' has no attribute 'Tensor'

    [INFO] Prompt executed in 2.98 seconds

    ukr8b3g201
    Author
    Oct 17, 2026

    @Jojo0Gojo Thanks for sharing the log! Could you try running the Qwen workflow once without any reference images connected and let me know whether it works? No package installation or removal is needed for this test.

    Jojo0GojoOct 17, 2026

    @ukr8b3g201 ok, ive disabled/bypassed all ref images:
    # ComfyUI Error Report

    ## Error Details

    - Node ID: 5

    - Node Type: QwenImage21CharacterSheetDesignerReferenceV13

    - Exception Type: D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\custom_nodes\Qwen-Image-2_x_1-Character-Sheet-Designer.qwen_image21_character_sheet.common.state.StateValidationError

    - Exception Message: D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\custom_nodes\Qwen-Image-2_x_1-Character-Sheet-Designer.qwen_image21_character_sheet.common.state.StateValidationError: Connect character_image or an applicable part reference for: face_front, face_left, body_front, body_left, body_back

    ## Stack Trace

    ```

    File "D:\ComfyUI-Easy\ComfyUI-Easy-Install\ComfyUI\execution.py", line 547, in execute

    output_data, output_ui, has_subgraph, has_pending_tasks = await get_output_data(prompt_id, unique_id, obj, input_data_all, execution_block_cb=execution_block_cb, pre_execute_cb=pre_execute_cb, v3_data=v3_data)

    Workflows
    Qwen 2.1

    Details

    Downloads
    186
    Platform
    CivitAI
    Platform Status
    Available
    Created
    10/15/2026
    Updated
    10/21/2026
    Deleted
    -

    Files

    qwenImage21Character_v12.json

    Mirrors