8
n8n 한국어amn8n.com

Gemini AI와 Telegram Bot을 사용하여 텍스트 힌트 이미지 편집

중급

이것은자동화 워크플로우로, 10개의 노드를 포함합니다.주로 Filter, Telegram, TelegramTrigger, GoogleGemini 등의 노드를 사용하며. Gemini AI와 Telegram Bot을 사용한 텍스트 힌트 이미지 편집

사전 요구사항
  • Telegram Bot Token

카테고리

-
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "meta": {
    "instanceId": "3d7eb9567ae690bf8c9bba1cb43396e6e40c18e15eb5889cf9673ed1713da6db",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "5dbb5361-0f1a-403a-a6d2-f8aaeebcd2c4",
      "name": "Telegram 트리거",
      "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": "필터: 캡션 및 파일 있음",
      "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": "참고: 필터",
      "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": "이미지 다운로드",
      "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": "참고: 이미지 다운로드",
      "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": "AI로 이미지 편집",
      "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": "참고: AI 편집",
      "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": "편집된 이미지 전송",
      "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": "개요 참고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": "참고: 트리거1",
      "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
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

중급

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

워크플로우 정보
난이도
중급
노드 수10
카테고리-
노드 유형5
난이도 설명

일정 경험을 가진 사용자를 위한 6-15개 노드의 중간 복잡도 워크플로우

저자
Daniel Nkencho

Daniel Nkencho

@daniel-automates

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

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34