ComfyUI Griptape Nodes

This repo creates a series of nodes that enable you to utilize the Griptape Python Framework with ComfyUI, integrating AI into your workflow.

This example creates two Griptape Agents - a Writer and an Editor. The writer has a WebScraper tool and gets a description of a website. It then generates blog topic ideas and passes them to_ the Editor Agent. The editor chooses the top 3 topics, and generates outlines and next actions for the next two. A third Agent generates thumbnail images for each blog post using a Prompt Image Generation Task based on the outlines.

Writer and Editor agents

The repo currently has a subset of Griptape nodes, with more to come soon. Current nodes can:

Example

In this example, we're using three Image Description nodes to describe the given images. Those descriptions are then Merged into a single string which is used as inspiration for creating a new image using the Create Image from Text node, driven by an OpenAI Driver.

Three image descriptions being used to generate a new image

Installation

1. ComfyUI

Install ComfyUI using the instructions for your particular operating system.

2. Install Griptape-ComfyUI

There are two methods for installing the Griptape-ComfyUI repository. You can either download or git clone this repository inside the ComfyUI/custom_nodes, or use the ComfyUI Manager.

  • Option A - ComfyUI Manager (Recommended)

    1. Install ComfyUI Manager by following the installation instructions.
    2. Click Manager in ComfyUI to bring up the ComfyUI Manager
    3. Click Install via Git URL
    4. Enter the URL for ComfyUI-Griptape: https://github.com/griptape-ai/ComfyUI-Griptape
    5. Click OK
    6. Follow the rest of the instructions.
  • Option B - Git Clone

    1. Open a terminal and input the following commands:

      cd /path/to/comfyUI
      cd custom_nodes
      git clone https://github.com/griptape-ai/ComfyUI-Griptape
      

3. Make sure libraries are loaded

There are required libraries for the ComfyUI-Griptape nodes. They're called out in the requirements.txt file:

griptape[all]
python-dotenv

These should get installed automatically if you used the ComfyUI Manager installation method. However, if you're running into issues, please install them yourself either using pip or poetry, depending on your installation method.

  • Option A - pip

    pip install "griptape[all]" python-dotenv
    
  • Option B - poetry

    poetry add "griptape[all]" python-dotenv
    

4. Add API keys to your Environment

Certain API keys are required for various nodes to work. It's recommended to add these to a .env file in your base comfyUI folder before you start ComfyUI.

Note: Most nodes will work fine with just the OPENAI_API_KEY, so at least make sure you have that one.

OPENAI_API_KEY=
GOOGLE_API_KEY=
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
LEONARDO_API_KEY=

You can get the appropriate API keys from these respective sites:


Troubleshooting

API Keys

When you run ComfyUI with the Griptape nodes installed, the installation method will check your environment variables and automatically install the appropriate API keys in a file called: griptape.config.json.

If for some reason your environment variables aren't being set properly, you can do this manually by simply copying over the griptape.config.json.default file to griptape.config.json and add the proper keys there.

If you ever need to change your API keys, go ahead and update that configuration file with the proper key.

Webscraper

The WebScraper tool uses Markdownify .

The playwright browser should get installed automatically when you install the Griptape Nodes, but if it doesn't you may need to install this manually to get it to work.

In your terminal, execute the following code:

playwright install
S
Description
No description provided
Readme Apache-2.0
74 MiB
Languages
Python 85.3%
JavaScript 14.5%