Édition d'images à partir de prompts texte avec Gemini AI et un bot Telegram

Intermédiaire

Ceci est uncontenant 10 nœuds.Utilise principalement des nœuds comme Filter, Telegram, TelegramTrigger, GoogleGemini. Édition d'images à partir de prompts textuels avec l'IA Gemini et un bot Telegram

Prérequis
  • Token Bot Telegram

Catégorie

-
Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "meta": {
    "instanceId": "3d7eb9567ae690bf8c9bba1cb43396e6e40c18e15eb5889cf9673ed1713da6db",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "5dbb5361-0f1a-403a-a6d2-f8aaeebcd2c4",
      "name": "Telegram Trigger",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        1136,
        832
      ],
      "webhookId": "6c7d3559-595b-4ed7-8697-774bf86a798b",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {
          "download": false
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "Elo6BLaLpBDVgeLW",
          "name": "LinkedIn Post"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "113490e2-abd8-4aa6-8b3e-58030c4d731a",
      "name": "Filtre : Avec légende et fichier",
      "type": "n8n-nodes-base.filter",
      "position": [
        1328,
        832
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "1cb10407-8c50-4e81-ac9b-72c03cab65d6",
              "operator": {
                "type": "string",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $('Telegram Trigger').item.json.message.caption }}",
              "rightValue": ""
            },
            {
              "id": "cbf13e8f-7620-4db5-ba40-ecbb248c05b4",
              "operator": {
                "type": "string",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $json.message.document.file_id }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "ffe1e575-905b-406b-8617-2a7a69632285",
      "name": "Note : Filtre",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1184,
        624
      ],
      "parameters": {
        "color": 3,
        "width": 396,
        "height": 192,
        "content": "## 🔍 Filter: Has Caption and File\n\n**Purpose:** Validates incoming message has both a caption (prompt) and document file.\n\n**Note:** AND logic; skips workflow if either missing to avoid errors."
      },
      "typeVersion": 1
    },
    {
      "id": "c12c8013-87db-412b-aca1-5e14867a46b3",
      "name": "Télécharger l'image",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1520,
        832
      ],
      "webhookId": "bdfeb7a3-2126-4606-8ab0-8303cb33bda5",
      "parameters": {
        "fileId": "={{ $json.message.document.file_id }}",
        "resource": "file",
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "Elo6BLaLpBDVgeLW",
          "name": "LinkedIn Post"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "2995feff-c0a7-49d3-b85b-da18e37ba341",
      "name": "Note : Télécharger l'image",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1504,
        1040
      ],
      "parameters": {
        "color": 6,
        "width": 332,
        "height": 192,
        "content": "## 📥 Download Image\n\n**Purpose:** Fetches the image file from Telegram servers as binary data.\n\n**Note:** Uses file_id from trigger; downloads immediately as files expire after 1 hour."
      },
      "typeVersion": 1
    },
    {
      "id": "01d5b33c-5a08-4df9-9eee-293a336535d2",
      "name": "Éditer l'image avec IA",
      "type": "@n8n/n8n-nodes-langchain.googleGemini",
      "position": [
        1728,
        832
      ],
      "parameters": {
        "images": {
          "values": [
            {}
          ]
        },
        "prompt": "={{ $('Telegram Trigger').item.json.message.caption }}",
        "options": {
          "binaryPropertyOutput": "data"
        },
        "resource": "image",
        "operation": "edit"
      },
      "credentials": {
        "googlePalmApi": {
          "id": "7v8o9EaQkl33woxm",
          "name": "v9"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "b8993e29-7dd8-4cf8-9789-7bd2a3e7bf6b",
      "name": "Note : Édition IA",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1680,
        592
      ],
      "parameters": {
        "color": 5,
        "width": 396,
        "height": 192,
        "content": "## 🖼️ Edit Image with AI\n\n**Purpose:** Applies Gemini AI edits to the downloaded image using caption as prompt. **Nano-Banana**\n\n**Note:** Outputs edited binary; handles creative transformations like 'add elements'."
      },
      "typeVersion": 1
    },
    {
      "id": "e33f9709-25b0-4a37-8aea-dd64f7fe8489",
      "name": "Envoyer l'image éditée",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1952,
        832
      ],
      "webhookId": "9c82fd88-d7f7-4808-aad8-21e818eb3f86",
      "parameters": {
        "chatId": "={{ $('Telegram Trigger').item.json.message.chat.id }}",
        "operation": "sendPhoto",
        "binaryData": true,
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "Elo6BLaLpBDVgeLW",
          "name": "LinkedIn Post"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "c6cc872e-2396-4450-acfa-17c08ca67ec5",
      "name": "Note d'aperçu 4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        432,
        432
      ],
      "parameters": {
        "color": 4,
        "width": 632,
        "height": 1176,
        "content": "# 🤖 AI Image Editor using Nano-Banana Telegram Bot\n\n## 📋 What This Template Does\nThis workflow powers a Telegram bot that automatically processes incoming image documents with text prompts. It downloads the file, uses Google Gemini AI to edit the image based on your caption, and instantly replies with the enhanced version.\n\n## 🔧 Prerequisites\n- A Telegram bot created via @BotFather\n- Google AI Studio account for Gemini API access\n- n8n instance with Telegram and Google Gemini nodes enabled\n\n## 🔑 Required Credentials\n\n### Telegram API Setup\n1. Open Telegram and message @BotFather\n2. Use `/newbot` to create your bot and note the token\n3. In n8n, go to Credentials → Add Credential → Search \"Telegram API\"\n4. Paste the token and save\n\n### Google Gemini API Setup\n1. Visit aistudio.google.com and sign in with Google\n2. Click \"Get API key\" → Create API key in a new project\n3. In n8n, go to Credentials → Add Credential → Search \"Google Gemini API\"\n4. Enter the API key and save\n\n## ⚙️ Configuration Steps\n1. Import the provided JSON into your n8n workflows\n2. Assign the Telegram credential to the trigger and Telegram nodes\n3. Assign the Gemini credential to the Edit Image node\n4. Activate the workflow and note your bot's username\n5. Test by sending an image document with a caption to your bot\n\n## 🎯 Use Cases\n- **Personal creativity**: Send a selfie with \"make me a superhero\"\n- **Social media**: Upload photos with \"enhance lighting\"\n- **Educational**: Share sketches with \"colorize and detail\"\n- **Team collab**: Prompt \"remove background\" in groups\n\n## ⚠️ Troubleshooting\n- **No trigger**: Verify token and enable message updates\n- **Download fail**: Resend file; check it's a document\n- **Edit error**: Check API quotas; shorten prompts\n- **No send**: Verify binary data in execution log"
      },
      "typeVersion": 1
    },
    {
      "id": "bdce77c5-a7f3-480d-95e8-1a183eedf038",
      "name": "Note : Trigger1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1104,
        1024
      ],
      "parameters": {
        "color": 6,
        "width": 332,
        "height": 192,
        "content": "## 📥 Telegram Trigger\n\n**Purpose:** Listens for new messages with documents and optional captions.\n\n**Note:** Filters to 'message' updates only; starts the editing flow on receipt."
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "c12c8013-87db-412b-aca1-5e14867a46b3": {
      "main": [
        [
          {
            "node": "01d5b33c-5a08-4df9-9eee-293a336535d2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5dbb5361-0f1a-403a-a6d2-f8aaeebcd2c4": {
      "main": [
        [
          {
            "node": "113490e2-abd8-4aa6-8b3e-58030c4d731a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "01d5b33c-5a08-4df9-9eee-293a336535d2": {
      "main": [
        [
          {
            "node": "e33f9709-25b0-4a37-8aea-dd64f7fe8489",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "113490e2-abd8-4aa6-8b3e-58030c4d731a": {
      "main": [
        [
          {
            "node": "c12c8013-87db-412b-aca1-5e14867a46b3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Intermédiaire

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Workflows recommandés

Automatisation du scraping de prospects Apollo et de l'enrichissement par e-mail vers Airtable CRM avec Apify
Utiliser Apify pour automatiser l'extraction de prospects Apollo et l'enrichissement e-mail vers le CRM Airtable
If
Set
Filter
+
If
Set
Filter
18 NœudsDaniel
Création de contenu
Sauvegarde et restauration des workflows n8n
Sauvegarde et restauration des workflows n8n avec Telegram, Google Drive et téléchargement de formulaires
If
N8n
Code
+
If
N8n
Code
28 NœudsDaniel Nkencho
Créer des vidéos naturelles IA avec Sora 2 (Kie AI), Gemini et les envoyer à Telegram
Créer des vidéos naturelles générées par l'IA avec Sora 2 (Kie AI), Gemini et les envoyer à Telegram
Wait
Telegram
Http Request
+
Wait
Telegram
Http Request
13 NœudsDaniel Nkencho
Création de contenu
Résumé quotidien des actualités Hacker News : résumé par GPT-5 et envoi par e-mail
Obtenir un résumé quotidien des actualités IA de Hacker News, résumer avec GPT-5 et envoyer par e-mail
Set
Filter
Markdown
+
Set
Filter
Markdown
16 NœudsDaniel Nkencho
Organisation automatique des e-mails Gmail pilotée par l'IA avec étiquettes de priorité
Organisation automatique des e-mails Gmail basée sur l'IA, prenant en charge l'archivage automatique et l'étiquetage par priorité
Gmail
Filter
Telegram
+
Gmail
Filter
Telegram
17 NœudsJunichiro Tobe
Autres
Utilisation d'Apollo, GPT-4 et Telegram pour la génération de prospects pilotée par l'IA vers une base de données
Génération de prospects basée sur l'IA : utilisation d'Apollo, GPT-4 et Telegram avec sortie vers une base de données
Set
Code
Limit
+
Set
Code
Limit
26 NœudsPaul
Génération de leads
Informations sur le workflow
Niveau de difficulté
Intermédiaire
Nombre de nœuds10
Catégorie-
Types de nœuds5
Description de la difficulté

Adapté aux utilisateurs expérimentés, avec des workflows de complexité moyenne contenant 6-15 nœuds

Auteur
Daniel Nkencho

Daniel Nkencho

@daniel-automates

AI Automation Consultant | Helping Business Owners Implement AI Systems for Growth and Lead Gen

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34