Lecteur d'images

Intermédiaire

Ceci est unPersonal Productivity, Multimodal AIworkflow d'automatisation du domainecontenant 8 nœuds.Utilise principalement des nœuds comme Set, Telegram, HttpRequest, Agent, ExtractFromFile. Extraire du texte d'images via un bot Telegram et OCR

Prérequis
  • Token Bot Telegram
  • Peut nécessiter les informations d'identification d'authentification de l'API cible
  • Clé API Google Gemini
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
{
  "id": "M4IIL41O16twgImq",
  "meta": {
    "instanceId": "51be389492931e958da1ec3c4cc03c8044ac06dd89d9465126f3cdb442363742",
    "templateCredsSetupCompleted": true
  },
  "name": "Image Reader",
  "tags": [],
  "nodes": [
    {
      "id": "a5d05f82-eb64-4abb-82d8-c2365fea90e8",
      "name": "Telegram Trigger",
      "type": "n8n-nodes-base.telegramTrigger",
      "position": [
        -400,
        -140
      ],
      "webhookId": "b957dd8b-8f10-40e9-a041-56b3f7a176b9",
      "parameters": {
        "updates": [
          "message"
        ],
        "additionalFields": {}
      },
      "credentials": {
        "telegramApi": {
          "id": "coZ5n0FecDwDueBA",
          "name": "Ruri Image Reader"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "9c8d3318-b6f8-4fe5-8d19-10388087beb7",
      "name": "Nettoyer les données d'entrée",
      "type": "n8n-nodes-base.set",
      "position": [
        -180,
        -140
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "c8cd1608-2326-401d-9c47-79a6a72f5fc7",
              "name": "chatID",
              "type": "number",
              "value": "={{ $json.message.chat.id }}"
            },
            {
              "id": "0f1a41cb-8630-4e10-b445-f6bbbcf91d33",
              "name": "Image",
              "type": "string",
              "value": "={{ $json[\"message\"][\"photo\"][$json[\"message\"][\"photo\"].length - 1][\"file_id\"] }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "e2b58308-238e-4439-9f1a-4d08b6c6fed0",
      "name": "OCR",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        480,
        -140
      ],
      "parameters": {
        "url": "#",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "image",
              "value": "={{ $json.data }}"
            }
          ]
        }
      },
      "notesInFlow": true,
      "typeVersion": 4.2
    },
    {
      "id": "ffb53d49-3a5f-4a65-95bd-0788f5005fc7",
      "name": "Obtenir le fichier",
      "type": "n8n-nodes-base.telegram",
      "position": [
        40,
        -140
      ],
      "webhookId": "089cb9a3-a383-4e1d-b732-b877833ef538",
      "parameters": {
        "fileId": "={{ $json.Image.replace(/\\n/g, '') }}",
        "resource": "file"
      },
      "credentials": {
        "telegramApi": {
          "id": "coZ5n0FecDwDueBA",
          "name": "Ruri Image Reader"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "80dc7a76-dc50-4f9f-8396-9f068fdec7a1",
      "name": "Convertir en base64",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        260,
        -140
      ],
      "parameters": {
        "options": {},
        "operation": "binaryToPropery"
      },
      "typeVersion": 1
    },
    {
      "id": "e77fb512-c83c-4d18-9ded-13c02abfef45",
      "name": "Telegram",
      "type": "n8n-nodes-base.telegram",
      "position": [
        1076,
        -140
      ],
      "webhookId": "1c599e35-fb24-4cae-9177-61fa09e0b5ca",
      "parameters": {
        "text": "={{ $json.output }}",
        "chatId": "={{ $('Clean Input Data').item.json.chatID }}",
        "additionalFields": {
          "appendAttribution": false
        }
      },
      "credentials": {
        "telegramApi": {
          "id": "coZ5n0FecDwDueBA",
          "name": "Ruri Image Reader"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "5badb159-c0e8-4129-8387-409541cdcc20",
      "name": "Agent IA",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        700,
        -140
      ],
      "parameters": {
        "text": "={{ $json.text }}",
        "options": {
          "systemMessage": "You are an AI assistant designed to enhance the clarity of text extracted from images using OCR.\n\nYour primary objective is to make the OCR output easy to read and understand for end users by cleaning up formatting, fixing any recognition errors, and restructuring the content logically.\n\n🧠 Behavior Guidelines:\nIf the extracted text resembles a table or structured data, do not recreate the table. Instead, summarize the content into bullet points for better readability.\n\nFocus on clarity, accuracy, and user-friendly formatting.\n\nFix common OCR issues such as:\n\nBroken words or lines\n\nIncorrect character recognition (e.g., \"0\" vs \"O\", \"1\" vs \"I\")\n\nMisplaced symbols or formatting errors"
        },
        "promptType": "define"
      },
      "typeVersion": 2
    },
    {
      "id": "76959791-ff08-4f0f-94c1-55b6f6807a00",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        788,
        80
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemini-2.0-flash"
      },
      "credentials": {
        "googlePalmApi": {
          "id": "fyhkQ6QL2SEoobiQ",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "pinData": {
    "Telegram Trigger": [
      {
        "json": {
          "message": {
            "chat": {
              "id": 1335515855,
              "type": "private",
              "username": "VextCode",
              "first_name": "Vext"
            },
            "date": 1751041672,
            "from": {
              "id": 1335515855,
              "is_bot": false,
              "username": "VextCode",
              "first_name": "Vext",
              "language_code": "en"
            },
            "photo": [
              {
                "width": 90,
                "height": 39,
                "file_id": "AgACAgUAAxkBAAMOaF7GiHkZdpULOrfUb-SAge6yRHcAAq_LMRubo_BWUWlWZpaHvCIBAAMCAANzAAM2BA",
                "file_size": 1131,
                "file_unique_id": "AQADr8sxG5uj8FZ4"
              },
              {
                "width": 320,
                "height": 137,
                "file_id": "AgACAgUAAxkBAAMOaF7GiHkZdpULOrfUb-SAge6yRHcAAq_LMRubo_BWUWlWZpaHvCIBAAMCAANtAAM2BA",
                "file_size": 14625,
                "file_unique_id": "AQADr8sxG5uj8FZy"
              },
              {
                "width": 800,
                "height": 342,
                "file_id": "AgACAgUAAxkBAAMOaF7GiHkZdpULOrfUb-SAge6yRHcAAq_LMRubo_BWUWlWZpaHvCIBAAMCAAN4AAM2BA",
                "file_size": 60871,
                "file_unique_id": "AQADr8sxG5uj8FZ9"
              },
              {
                "width": 1095,
                "height": 468,
                "file_id": "AgACAgUAAxkBAAMOaF7GiHkZdpULOrfUb-SAge6yRHcAAq_LMRubo_BWUWlWZpaHvCIBAAMCAAN5AAM2BA",
                "file_size": 90710,
                "file_unique_id": "AQADr8sxG5uj8FZ-"
              }
            ],
            "message_id": 14
          },
          "update_id": 413913333
        }
      }
    ]
  },
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "a78997d0-05cb-4278-8be3-7348cfa1eefa",
  "connections": {
    "e2b58308-238e-4439-9f1a-4d08b6c6fed0": {
      "main": [
        [
          {
            "node": "5badb159-c0e8-4129-8387-409541cdcc20",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5badb159-c0e8-4129-8387-409541cdcc20": {
      "main": [
        [
          {
            "node": "e77fb512-c83c-4d18-9ded-13c02abfef45",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ffb53d49-3a5f-4a65-95bd-0788f5005fc7": {
      "main": [
        [
          {
            "node": "80dc7a76-dc50-4f9f-8396-9f068fdec7a1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9c8d3318-b6f8-4fe5-8d19-10388087beb7": {
      "main": [
        [
          {
            "node": "ffb53d49-3a5f-4a65-95bd-0788f5005fc7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a5d05f82-eb64-4abb-82d8-c2365fea90e8": {
      "main": [
        [
          {
            "node": "9c8d3318-b6f8-4fe5-8d19-10388087beb7",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "80dc7a76-dc50-4f9f-8396-9f068fdec7a1": {
      "main": [
        [
          {
            "node": "e2b58308-238e-4439-9f1a-4d08b6c6fed0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "76959791-ff08-4f0f-94c1-55b6f6807a00": {
      "ai_languageModel": [
        [
          {
            "node": "5badb159-c0e8-4129-8387-409541cdcc20",
            "type": "ai_languageModel",
            "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 - Productivité personnelle, IA Multimodale

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.

Informations sur le workflow
Niveau de difficulté
Intermédiaire
Nombre de nœuds8
Catégorie2
Types de nœuds7
Description de la difficulté

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

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34