ComfyUI-Classifier is a custom node for ComfyUI that uses a zero-shot classification model to classify text inputs based on a set of candidate labels. This node leverages the power of Hugging Face Transformers to provide accurate and flexible text classification.
ComfyUI-Classifier is a custom node for ComfyUI that uses a zero-shot classification model to classify text inputs based on a set of candidate labels. This node leverages the power of Hugging Face Transformers to provide accurate and flexible text classification.
Clone the Repository: Clone this repository into your custom_nodes
folder in ComfyUI.
git clone https://github.com/fexploit/ComfyUI-Classifier custom_nodes/ComfyUI-Classifier
Install Dependencies: Navigate to the cloned folder and install the required dependencies.
cd custom_nodes/ComfyUI-Classifier
pip install -r requirements.txt
ClassifierNode
from the custom nodes list.text_input
(required): The input text to be classified.candidate_labels_json
(required): A JSON string containing the candidate labels and their initial scores.num_labels
(optional): Number of labels to select (default: 10).include_scores
(optional): Boolean flag to include scores in the output (default: True).output_format
(optional): The output format, can be "json" or "text" (default: "json").# Example usage in a script
text_input = "Dune is the best movie ever."
candidate_labels_json = '''
[
{"tag": "CINEMA", "score": 0.9},
{"tag": "ART", "score": 0.1},
{"tag": "MUSIC", "score": 0.05}
]
'''
classifier_node = ClassifierNode()
output = classifier_node.classify(text_input, candidate_labels_json, num_labels=3, include_scores=True, output_format="json")
print(output)
Contributions are welcome! If you have any improvements, bug fixes, or new features to suggest, please feel free to open an issue or submit a pull request with your changes. Make sure to follow the project's code style and add tests for any new functionality.
This project is licensed under the MIT License. See the LICENSE file for more details.
For any inquiries, suggestions, or issues, please open an issue on the GitHub repository.