225 lines
9.7 KiB
Markdown
225 lines
9.7 KiB
Markdown
# ComfyUI-ExternalAPI-Helpers
|
|
|
|
A collection of powerful custom nodes for ComfyUI that connect your local workflows to closed-source AI models via their APIs. Use Google's Gemini, Imagen, Veo, OpenAI's GPT-Image-1, and Black Forest Labs' FLUX models directly within ComfyUI.
|
|
|
|
## Key Features
|
|
|
|
* **FLUX Kontext Pro & Max:** Image-to-image transformations using the FLUX models via the Replicate API.
|
|
* **Flux.2 (Replicate):** Generate images using the latest FLUX.2 models (Pro, Max, Dev) via Replicate.
|
|
* **Gemini Chat:** Google's powerful multimodal AI. Ask questions about an image, generate detailed descriptions or create prompts for other models. Supports thinking budget controls for applicable models. Now supports audio input.
|
|
* **Gemini Segmentation:** Generate segmentation masks for objects in an image using Gemini.
|
|
* **Gemini Speaker Diarization:** Separate audio into different speaker tracks using Gemini.
|
|
* **GPT Image Edit:** OpenAI's `gpt-image-1` for prompt-based image editing and inpainting. Simply mask an area and describe the change you want to see.
|
|
* **OpenAI LLM:** Access OpenAI's powerful language models (GPT-4, GPT-5, o1, etc.) for text generation and reasoning.
|
|
* **OpenAI Text-to-Speech:** Generate high-quality speech using OpenAI's TTS models.
|
|
* **Google Imagen Generator & Edit:** Create and edit images with Google's Imagen models, with support for Vertex AI.
|
|
* **Nano Banana:** A creative image generation node using a specialized Gemini model.
|
|
* **Veo Video Generator:** Generate high-quality video clips from text prompts using Google's Veo model via Vertex AI or the Gemini API.
|
|
* **ElevenLabs TTS:** Generate high-quality speech from text using ElevenLabs' diverse range of voices and models.
|
|
* **Gemini TTS:** Create speech from text using Google's Gemini models.
|
|
* **Tripo Text-to-3D:** Generate 3D models from text prompts using Tripo AI's advanced 3D generation API.
|
|
* **Tripo Image-to-3D:** Convert images into detailed 3D models using Tripo AI's image-to-model capability.
|
|
|
|
---
|
|
|
|
## 🚀 Installation
|
|
|
|
1. Navigate to your ComfyUI installation directory.
|
|
2. Go into the `custom_nodes` folder:
|
|
```bash
|
|
cd ComfyUI/custom_nodes/
|
|
```
|
|
3. Clone this repository:
|
|
```bash
|
|
git clone https://github.com/Aryan185/ComfyUI-ExternalAPI-Helpers.git
|
|
```
|
|
|
|
4. Install the required Python packages. Navigate into the newly cloned directory and use pip to install the dependencies:
|
|
```bash
|
|
cd ComfyUI-ExternalAPI-Helpers
|
|
pip install -r requirements.txt
|
|
```
|
|
5. **Restart ComfyUI.** After restarting, you should find the new nodes in the "Add Node" menu.
|
|
|
|
---
|
|
|
|
## 🔑 Prerequisites: API Keys
|
|
|
|
All nodes in this collection require API keys to function.
|
|
|
|
* **FLUX Nodes (Replicate):** You will need a [Replicate API Token](https://replicate.com/account/api-tokens).
|
|
* **Gemini, Imagen, Nano Banana, Gemini TTS, Gemini Diarization, and Veo (Gemini API) Nodes:** You will need a [Google AI Studio API Key](https://aistudio.google.com/app/api-keys).
|
|
* **OpenAI Nodes (GPT Image Edit, OpenAI LLM, OpenAI TTS):** You will need an [OpenAI API Key](https://platform.openai.com/api-keys).
|
|
* **ElevenLabs TTS Node:** You will need an [ElevenLabs API Key](https://elevenlabs.io/).
|
|
* **Tripo Nodes (Text-to-3D, Image-to-3D):** You will need a [Tripo API Key](https://tripo3d.ai/).
|
|
* **Vertex AI Nodes (Imagen Edit, Veo Vertex AI):** You will need a Google Cloud Project ID, a service account with appropriate permissions, and the location for the resources.
|
|
|
|
You can paste your key directly into the `api_key` field on the corresponding node. For Vertex AI nodes, you will need to provide the project ID, location, and paste your service account JSON content.
|
|
|
|
### Using Environment Variables (.env file)
|
|
|
|
Instead of pasting API keys directly into nodes, you can store them in a `.env` file:
|
|
|
|
1. Copy `.env.example` to `.env` in the node directory
|
|
2. Fill in your API keys:
|
|
```
|
|
GEMINI_API_KEY=your_gemini_key_here
|
|
OPENAI_API_KEY=your_openai_key_here
|
|
XI_API_KEY=your_elevenlabs_key_here
|
|
REPLICATE_API_TOKEN=your_replicate_token_here
|
|
TRIPO_API_KEY=your_tripo_api_key_here
|
|
```
|
|
3. In the node's `api_key` field, enter the variable name (e.g., `GEMINI_API_KEY`) instead of the actual key
|
|
|
|
This keeps your API keys secure and makes it easy to switch between different keys or projects.
|
|
|
|
---
|
|
|
|
## 📚 Node Guide
|
|
|
|
> **Note:** All nodes include standard inputs like `api_key`, `prompt`, `model`, `temperature`, and `seed` where applicable. Only unique or notable inputs are listed below.
|
|
|
|
### Flux Kontext Pro / Max
|
|
|
|
Transform images based on text prompts. Ideal for applying artistic styles or making conceptual changes.
|
|
|
|
* **Category:** `image/edit`
|
|
* **Key Inputs:** `image`, `aspect_ratio` (use `match_input_image` to preserve composition)
|
|
* **Output:** `image`
|
|
|
|
### Flux.2 (Replicate)
|
|
|
|
Generate images using FLUX.2 models (Pro, Max, Dev) via Replicate.
|
|
|
|
* **Category:** `image/generation`
|
|
* **Key Inputs:** `image_1` to `image_5` (optional, for image-to-image tasks)
|
|
* **Output:** `image`
|
|
|
|
### Gemini Chat
|
|
|
|
Multimodal text generation with image and audio analysis capabilities.
|
|
|
|
* **Category:** `text/generation`
|
|
* **Key Inputs:** `thinking`, `thinking_budget`, `system_instruction`, `image` (optional), `audio` (optional)
|
|
* **Output:** `response` (text)
|
|
|
|
### Gemini Segmentation
|
|
|
|
Generate segmentation masks for objects in an image.
|
|
|
|
* **Category:** `image/generation`
|
|
* **Key Inputs:** `image`, `segment_prompt` (e.g., "the car", "all people"), `thinking`, `thinking_budget`
|
|
* **Output:** `mask`
|
|
|
|
### Gemini Speaker Diarization
|
|
|
|
Separate audio into different speaker tracks.
|
|
|
|
* **Category:** `audio/diarise`
|
|
* **Key Inputs:** `audio`, `num_speakers`, `thinking`, `thinking_budget`
|
|
* **Output:** `speaker_1` to `speaker_4` (audio tracks)
|
|
|
|
### GPT Image Edit
|
|
|
|
Prompt-based inpainting and image editing using OpenAI's API.
|
|
|
|
* **Category:** `image/edit`
|
|
* **Key Inputs:** `image_1` to `image_5`, `mask` (optional, white area = edit region), `background`, `quality`, `size`
|
|
* **Output:** `image`
|
|
|
|
### OpenAI LLM
|
|
|
|
Access OpenAI language models (GPT-4, GPT-5, o1, etc.) for text generation.
|
|
|
|
* **Category:** `text/generation`
|
|
* **Key Inputs:** `reasoning_effort` (low/medium/high), `max_output_tokens`, `system_instruction`, `image` (optional)
|
|
* **Output:** `response` (text)
|
|
|
|
### OpenAI Text-to-Speech
|
|
|
|
Generate speech using OpenAI's TTS models.
|
|
|
|
* **Category:** `audio/generation`
|
|
* **Key Inputs:** `text`, `voice` (alloy, echo, etc.), `response_format`, `speed`, `instructions` (optional)
|
|
* **Output:** `audio`
|
|
|
|
### Google Imagen Generator
|
|
|
|
Generate images from text using Google's Imagen models.
|
|
|
|
* **Category:** `image/generation`
|
|
* **Key Inputs:** `number_of_images`, `aspect_ratio`, `image_size`, `guidance_scale`, `negative_prompt`
|
|
* **Output:** `images`
|
|
|
|
### Google Imagen Edit (Vertex AI only)
|
|
|
|
Advanced image editing with inpainting, outpainting, and background swapping.
|
|
|
|
* **Category:** `image/edit`
|
|
* **Key Inputs:** `image`, `mask`, `project_id`, `location`, `service_account` (JSON content), `edit_mode`
|
|
* **Output:** `edited_images`
|
|
|
|
### Nano Banana
|
|
|
|
Creative image generation using a specialized Gemini model.
|
|
|
|
* **Category:** `image/generation`
|
|
* **Key Inputs:** `image_1` to `image_5` (optional), `aspect_ratio`, `resolution`, `top_p`
|
|
* **Output:** `image`
|
|
|
|
### Veo Video Generator (Vertex AI)
|
|
|
|
Generate video clips using Google's Veo model on Vertex AI.
|
|
|
|
* **Category:** `video/generation`
|
|
* **Key Inputs:** `project_id`, `location`, `service_account` (JSON content), `resolution`, `aspect_ratio`, `duration_seconds`, `generate_audio`, `first_frame`/`last_frame` (optional)
|
|
* **Output:** `frames`, `audio`
|
|
|
|
### Veo Video Generator (Gemini API)
|
|
|
|
Generate videos using Veo 2.0 via the Gemini API. Supports text-to-video and image-to-video.
|
|
|
|
* **Category:** `video/generation`
|
|
* **Key Inputs:** `aspect_ratio`, `duration_seconds`, `negative_prompt`, `image` (optional, for image-to-video)
|
|
* **Output:** `frames`
|
|
|
|
### ElevenLabs TTS
|
|
|
|
Generate speech using ElevenLabs' diverse voices and models.
|
|
|
|
* **Category:** `audio/generation`
|
|
* **Key Inputs:** `text`, `voice_id`, `model_id`, `stability`, `similarity_boost`, `speed`, `style`, `use_speaker_boost`
|
|
* **Output:** `audio`
|
|
|
|
### Gemini TTS
|
|
|
|
Generate speech using Google's Gemini TTS models.
|
|
|
|
* **Category:** `audio/generation`
|
|
* **Key Inputs:** `text`, `voice_id`, `system_prompt` (optional)
|
|
* **Output:** `audio`
|
|
|
|
### Tripo Text-to-3D
|
|
|
|
Generate high-quality 3D models from text prompts using Tripo AI's powerful generation engine.
|
|
|
|
* **Category:** `3D/generation`
|
|
* **Key Inputs:** `prompt`, `model_version` (v3.0, v2.5, v2.0, v1.4, Turbo), `texture_quality` (standard/detailed), `save_name`
|
|
* **Optional Inputs:** `seed`, `face_limit` (500-100000, default 20000), `texture_size` (512/1024/2048), `pbr` (realistic lighting), `negative_prompt`
|
|
* **Output:** `glb` (3D model file)
|
|
|
|
### Tripo Image-to-3D
|
|
|
|
Convert images into detailed 3D models using Tripo AI's advanced image-to-model technology.
|
|
|
|
* **Category:** `3D/generation`
|
|
* **Key Inputs:** `image`, `model_version` (v3.0, v2.5, v2.0, v1.4), `texture_quality` (standard/detailed), `save_name`
|
|
* **Optional Inputs:** `seed`, `texture_seed` (randomness of colors/textures), `face_limit` (500-100000, default 20000), `texture_size` (512/1024/2048), `pbr` (realistic lighting)
|
|
* **Output:** `glb` (3D model file)
|
|
|
|
|
|
## Acknowledgements
|
|
|
|
* The [ComfyUI](https://github.com/comfyanonymous/ComfyUI) team for creating such a flexible and powerful platform.
|
|
* [Google](https://deepmind.google/technologies/gemini/), [OpenAI](https://openai.com/), and [Black Forest Labs](https://www.blackforestlabs.ai/) for developing these incredible models.
|
|
* [Replicate](https://replicate.com/) for providing easy API access to a wide range of models. |