2024-07-05 19:42:48 +05:30
2024-07-05 09:04:31 +05:30
2024-07-05 14:24:23 +05:30
2024-04-26 19:28:52 +05:30
2024-06-25 15:46:04 +05:30
2024-07-05 12:38:27 +05:30
2024-07-05 19:42:48 +05:30
2024-06-14 15:07:14 +05:30

ComfyUI-DataSet

Data Research, Preparation, and Manipulation Nodes for Model Trainers, Artists, Designers, and Animators.

Installation

Using comfy-cli (https://github.com/yoland68/comfy-cli)

Manual Method

  • Go to your Comfyui > Custom Nodes folder
  • Run CMD from folder path box or right click on empty area and click open in terminal.
  • Copy and Paste this command git clone https://github.com/daxcay/ComfyUI-DataSet.git
  • Then go inside ComfyUI-DataSet with cmd or open new.
  • and type pip install -r requirements.txt to install the requirements.

Automatic Method with Comfy Manager

  • Inside ComfyUI > Click Manager Button on Side.

  • Click Custom Nodes Manager and Search for DataSet and Install this node:

    image

  • Restart ComfyUI and it should be good to go

You can find DataSet under this category:

image

DataSet_Visualizer

The DataSet_Visualizer node is designed to visualize datasets by generating a word cloud, a network graph, and a frequency table from tag contents provided in text files.

Inputs

  • TextFileContents: (STRING, required) - The contents of the text file to be processed.
  • Seperator: (['comma', 'colon', 'space', 'pipe'], required) - The delimiter used to separate tags in the text file. Acceptable values are: 'comma' for , 'colon' for ; 'space' for a 'pipe' for |
  • WordCloudTop: (INT, default: 1, min: 1, max: 9999, required) - The number of top tags to include in the word cloud visualization.
  • NetworkGraphTop: (INT, default: 1, min: 1, max: 9999, required) - The number of top tag co-occurrences to include in the network graph visualization.
  • FrequencyGraphTop: (INT, default: 1, min: 1, max: 9999, required) - The number of top tags to include in the frequency table.

Outputs

  • GraphsPaths: (STRING, list) - The file paths of the generated visualizations. It includes paths for: Word cloud image, Network graph image, Frequency table image
  • GraphsImages: (IMAGE, list) - The generated images for the visualizations.

DataSet_CopyFiles

The DataSet_CopyFiles node provides a methods to copy files from a source folder to a destination folder based on different copying modes: blind copy and copy by matching destination files.

Inputs

  • source_folder: (STRING, default: "directory path", required) - The path of the source folder containing files to be copied.
  • destination_folder: (STRING, default: "directory path", required) - The path of the destination folder where files will be copied.
  • copy_mode: (['BlindCopy', 'CopyByDestinationFiles'], required) - The mode of copying files:
    • 'BlindCopy': Copies all files from the source to the destination folder.
    • 'CopyByDestinationFiles': Copies files from the source folder to the destination only if there is a matching file (based on the base name) already present in the destination.

DataSet_TriggerWords

The DataSet_TriggerWords node is designed to identify and extract trigger words or phrases from text file contents. Trigger words are identified based on the presence of digits within the words.

Inputs

  • TextFileContents: (STRING, required) - The contents of the text file(s) to be processed.
  • search: (['trigger_word_only', 'trigger_word_phrase'], required) - The mode of searching for trigger words:
    • 'trigger_word_only': Extracts individual trigger words containing digits.
    • 'trigger_word_phrase': Extracts entire phrases up to the next comma if any word in the phrase contains a digit.

Outputs

  • Words: (STRING, list) - The extracted trigger words or phrases from the text file(s).

DataSet_TextFilesLoadFromList

The DataSet_TextFilesLoadFromList node is designed to load and read contents from a list of text file paths. It extracts file names, file names without extensions, file paths, and file contents.

Inputs

  • TextFilePathsList: (STRING, required) - A list of file paths to the text files to be loaded. Only paths ending with .txt will be processed.

Outputs

  • TextFileNames: (STRING, list) - The names of the text files.
  • TextFileNamesWithoutExtension: (STRING, list) - The names of the text files without their extensions.
  • TextFilePaths: (STRING, list) - The file paths of the text files.
  • TextFileContents: (STRING, list) - The contents of the text files.

DataSet_TextFilesLoad

The DataSet_TextFilesLoad node is designed to load and read contents from text files within a specified directory. It extracts file names, file names without extensions, file paths, and file contents.

Inputs

  • directory: (STRING, required) - The directory path where the text files are located. The path should be specified as a string.

Outputs

  • TextFileNames: (STRING, list) - The names of the text files in the directory.
  • TextFileNamesWithoutExtension: (STRING, list) - The names of the text files without their extensions.
  • TextFilePaths: (STRING, list) - The file paths of the text files in the directory.
  • TextFileContents: (STRING, list) - The contents of the text files in the directory.

DataSet_TextFilesSave

Overview

The DataSet_TextFilesSave node is designed to save text file contents to a specified directory with various saving modes. It supports overwriting, merging, creating new files, and merging before saving new files.

Inputs

  • TextFileNames: (STRING, required) - The names of the text files to be saved.
  • TextFileContents: (STRING, required) - The contents of the text files to be saved.
  • destination: (STRING, required) - The directory path where the text files will be saved.
  • save_mode: (['Overwrite', 'Merge', 'SaveNew', 'MergeAndSaveNew'], required) - The mode of saving the files:
    • Overwrite: Overwrites existing files with the same name.
    • Merge: Appends content to existing files with the same name.
    • SaveNew: Saves new files with a unique name if a file with the same name already exists.
    • MergeAndSaveNew: Merges content with existing files and then saves as a new file with a unique name if a file with the same name already exists.

Outputs

  • This class does not produce any output types.

DataSet_FindAndReplace

The DataSet_FindAndReplace node facilitates finding and replacing specific text patterns within text file contents.

Inputs

  • TextFileContents: (STRING, required) - The contents of the text file(s) where the search and replace operation will be performed.
  • SearchFor: (STRING, default: "concept", required) - The text pattern to search for within the TextFileContents. Supports multiline input.
  • ReplaceWith: (STRING, default: "concept", required) - The replacement text for the SearchFor pattern. Supports multiline input.

Outputs

  • TextFileContents: (STRING, list) - The modified contents of the text file(s) after performing the find and replace operation.

DataSet_PathSelector

The DataSet_PathSelector node is designed to search for files with specific extensions in one directory and then select files with matching names (excluding extensions) from another directory.

Inputs

  • search_in_directory: (STRING, required) - The directory to search for files.
  • search_for_extensions: (STRING, required) - The extensions of files to search for, separated by commas (e.g., .txt, .csv).
  • select_from_directory: (STRING, required) - The directory to select matching files from.
  • select_extensions: (STRING, required) - The extensions of files to select, separated by commas (e.g., .txt, .csv).

Outputs

  • SelectedNamesWithExtension: (STRING, list) - The names of the selected files with their extensions.
  • SelectedNamesWithoutExtension: (STRING, list) - The names of the selected files without their extensions.
  • SelectedPaths: (STRING, list) - The full paths of the selected files.

DataSet_ConceptManager

The DataSet_ConceptManager node is designed to manage concepts within text file contents. It allows adding or removing specified concepts at defined positions.

Inputs

  • TextFileContents: (STRING, required) - The contents of the text file(s) to be processed.
  • Mode: (STRING, required) - The mode of operation: 'add' to add concepts or 'remove' to remove concepts.
  • Concepts: (STRING, required) - The concepts to add or remove, formatted as text-position pairs (e.g., "concept1 0, concept2 2" for adding, "concept1, concept2" for removing).

Outputs

  • TextFileContents: (STRING, list) - The modified contents of the text file(s) after adding or removing concepts.

DataSet_OpenAIChat

The DataSet_OpenAIChat node integrates with the OpenAI API to generate responses based on given prompts using various GPT models.

Inputs

  • model: (STRING, required) - The OpenAI model to use for generating responses. Options include "gpt-4", "gpt-4-32k", "gpt-3.5-turbo", and others.
  • api_url: (STRING, default: "https://api.openai.com/v1") - The base URL of the OpenAI API.
  • api_key: (STRING, required) - The API key required for authentication with the OpenAI API.
  • prompt: (STRING, default: "") - The prompt to start the conversation or generate responses.
  • token_length: (INT, default: 1024) - The maximum number of tokens (words) in the generated response.

Outputs

  • STRING: The generated response from the OpenAI model based on the provided prompt.

DataSet_LoadImage

The DataSet_LoadImage node provides functionality to load and process images from a specified directory using Pillow and numpy.

Inputs

  • image: (STRING, required) - The name of the image file to load from the input directory.

Outputs

  • IMAGE: The loaded image.
  • MASK: The mask associated with the image.
  • STRING: The name of the image file.
  • STRING: The name of the image file without extension.
  • STRING: The full path of the image file.
  • STRING: The directory path of the image file.

DataSet_SaveImage

The DataSet_SaveImage node facilitates batch saving of images to a specified directory with optional PNG metadata using Pillow and numpy.

Inputs

  • Images: (IMAGE, required) - List of images to save.
  • ImageFilePrefix: (STRING, default: "Image") - Prefix for the saved image filenames.
  • destination: (STRING) - Directory path where images will be saved.

Hidden Parameters

  • prompt: (PROMPT) - Optional prompt metadata for PNG files.
  • extra_pnginfo: (EXTRA_PNGINFO) - Additional metadata information in dictionary format for PNG files.

Outputs

  • None

DataSet_OpenAIChatImage

The DataSet_OpenAIChatImage node integrates image input with OpenAI's chat API for generating text-based responses.

Inputs

  • image: (IMAGE, required) - Image to be processed.
  • image_detail: (STRING, default: "high") - Detail level of the image ("low" or "high").
  • prompt: (STRING, default: "") - Text prompt for the AI model.
  • model: (STRING, default: "gpt-4o") - OpenAI model to use ("gpt-4o", "gpt-4", etc.).
  • api_url: (STRING, default: "https://api.openai.com/v1") - OpenAI API endpoint URL.
  • api_key: (STRING) - OpenAI API key for authentication.
  • token_length: (INT, default: 1024) - Maximum token length for the generated response.

Outputs

  • STRING: Text-based response generated by the AI model.

DataSet_OpenAIChatImageBatch

The DataSet_OpenAIChatImageBatch class extends the functionality of DataSet_OpenAIChatImage to process batches of images with OpenAI's chat API for generating text-based responses.

Inputs

  • images: (IMAGE, required) - List of images to be processed.
  • image_detail: (STRING, default: "high") - Detail level of the images ("low" or "high").
  • prompt: (STRING, default: "") - Text prompt for the AI model.
  • model: (STRING, default: "gpt-4o") - OpenAI model to use ("gpt-4o", "gpt-4", etc.).
  • api_url: (STRING, default: "https://api.openai.com/v1") - OpenAI API endpoint URL.
  • api_key: (STRING) - OpenAI API key for authentication.
  • token_length: (INT, default: 1024) - Maximum token length for the generated response.

Outputs

  • STRING: List of text-based responses generated by the AI model for each input image.

Credits

🔶 Daxton Caylor - ComfyUI Node Developer

🔶 https://github.com/rafstahelin

  • Node Request & Testing

Support for DataSet ❤️

S
Description
No description provided
Readme MIT
232 KiB
Languages
Python 97.3%
JavaScript 2.7%