画像リーダー Gemini OCR
中級
これはDocument Extraction, Multimodal AI分野の自動化ワークフローで、8個のノードを含みます。主にSet, Telegram, HttpRequest, ExtractFromFile, TelegramTriggerなどのノードを使用。 TelegramボットとGemini 2.0 Flash OCRを使って画像からテキスト抽出
前提条件
- •Telegram Bot Token
- •ターゲットAPIの認証情報が必要な場合あり
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "XqNsiUSOpgO7PRPD",
"meta": {
"instanceId": "51be389492931e958da1ec3c4cc03c8044ac06dd89d9465126f3cdb442363742",
"templateCredsSetupCompleted": true
},
"name": "Image Reader Gemini OCR",
"tags": [],
"nodes": [
{
"id": "fa672106-597a-43d6-b3c8-d7d73e9ad499",
"name": "Telegram トリガー",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
-360,
-140
],
"webhookId": "9b8e55dc-1389-435a-95b3-030d7e30ebce",
"parameters": {
"updates": [
"message"
],
"additionalFields": {
"download": true
}
},
"credentials": {
"telegramApi": {
"id": "coZ5n0FecDwDueBA",
"name": "@RuriImageReader_bot"
}
},
"typeVersion": 1.2
},
{
"id": "552d5953-2b1e-48ff-a39b-112cae330f32",
"name": "入力データをクリーンアップ",
"type": "n8n-nodes-base.set",
"position": [
-140,
-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": "4127fe82-7700-4292-b4fc-6fc27aa9e27c",
"name": "ファイルを取得",
"type": "n8n-nodes-base.telegram",
"position": [
80,
-140
],
"webhookId": "b812a0c8-e5f5-4969-9fad-a7b5b6e72dd9",
"parameters": {
"fileId": "={{ $json.Image.replace(/\\n/g, '') }}",
"resource": "file"
},
"credentials": {
"telegramApi": {
"id": "coZ5n0FecDwDueBA",
"name": "@RuriImageReader_bot"
}
},
"typeVersion": 1.2
},
{
"id": "cdee68db-f387-48d6-8b1c-2f1de0fbefea",
"name": "Telegram",
"type": "n8n-nodes-base.telegram",
"position": [
80,
120
],
"webhookId": "8219e2f1-2393-40ee-9c84-88666b10d946",
"parameters": {
"text": "={{ $json.output }}",
"chatId": "={{ $('Clean Input Data').item.json.chatID }}",
"additionalFields": {
"appendAttribution": false
}
},
"credentials": {
"telegramApi": {
"id": "coZ5n0FecDwDueBA",
"name": "@RuriImageReader_bot"
}
},
"typeVersion": 1.2
},
{
"id": "d9ef5251-9fb1-4810-aa78-4a393f4355e7",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-440,
-200
],
"parameters": {
"color": 4,
"width": 920,
"height": 620,
"content": "## Image Reader"
},
"typeVersion": 1
},
{
"id": "ecb87468-671d-484c-9baf-01d40e6f5de6",
"name": "Gemini OCR",
"type": "n8n-nodes-base.httpRequest",
"position": [
-360,
120
],
"parameters": {
"url": "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent",
"method": "POST",
"options": {},
"jsonBody": "={\n \"contents\": [\n {\n \"role\": \"user\",\n \"parts\": [\n {\n \"inlineData\": {\n \"mimeType\": \"image/jpeg\",\n \"data\": \"{{ $json.data }}\"\n }\n },\n {\n \"text\": \"Extract text\"\n }\n ]\n }\n ]\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpQueryAuth"
},
"credentials": {
"httpQueryAuth": {
"id": "wcX4Li4YomZJHh1s",
"name": "Gemini API"
}
},
"typeVersion": 4.2
},
{
"id": "2990b76a-536e-48b4-8202-21b82ead2ef1",
"name": "ファイルから抽出",
"type": "n8n-nodes-base.extractFromFile",
"position": [
320,
-140
],
"parameters": {
"options": {},
"operation": "binaryToPropery"
},
"typeVersion": 1
},
{
"id": "71b92a9e-8393-4f00-a99d-123ea4f3ed19",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-700,
-200
],
"parameters": {
"height": 1060,
"content": "## HTTP Gemini OCR Setting\n\nDefine Gemini Model on URL\n\nhttps://generativelanguage.googleapis.com/v1beta/models/[Gemini Model]:generateContent\n\nexample:\nhttps://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent\n\n...\n\nAuthentication\nGeneric Credential Type\n\nGeneric Auth Type\nQuery Auth\n\nQuery Auth\n+ Create new credential (take if from https://aistudio.google.com/)\n\n...\n\nBody Content Type\nJSON\n\nSpecify Body\nUsing JSON\n\nJSON\n{\n \"contents\": [\n {\n \"role\": \"user\",\n \"parts\": [\n {\n \"inlineData\": {\n \"mimeType\": \"image/jpeg\",\n \"data\": \"{{ $json.data }}\"\n }\n },\n {\n \"text\": \"Extract text\"\n }\n ]\n }\n ]\n}"
},
"typeVersion": 1
}
],
"active": true,
"pinData": {
"Telegram Trigger": [
{
"json": {
"message": {
"chat": {
"id": 1335515855,
"type": "private",
"username": "VextCode",
"first_name": "Vext"
},
"date": 1752202117,
"from": {
"id": 1335515855,
"is_bot": false,
"username": "VextCode",
"first_name": "Vext",
"language_code": "en"
},
"photo": [
{
"width": 90,
"height": 47,
"file_id": "AgACAgUAAxkBAAN9aHB7hU8nKT7coClCdMyelOTFy-sAAsPKMRvnqolXYKE3ScdP6HABAAMCAANzAAM2BA",
"file_size": 1128,
"file_unique_id": "AQADw8oxG-eqiVd4"
},
{
"width": 320,
"height": 168,
"file_id": "AgACAgUAAxkBAAN9aHB7hU8nKT7coClCdMyelOTFy-sAAsPKMRvnqolXYKE3ScdP6HABAAMCAANtAAM2BA",
"file_size": 18516,
"file_unique_id": "AQADw8oxG-eqiVdy"
},
{
"width": 800,
"height": 420,
"file_id": "AgACAgUAAxkBAAN9aHB7hU8nKT7coClCdMyelOTFy-sAAsPKMRvnqolXYKE3ScdP6HABAAMCAAN4AAM2BA",
"file_size": 73842,
"file_unique_id": "AQADw8oxG-eqiVd9"
},
{
"width": 1200,
"height": 630,
"file_id": "AgACAgUAAxkBAAN9aHB7hU8nKT7coClCdMyelOTFy-sAAsPKMRvnqolXYKE3ScdP6HABAAMCAAN5AAM2BA",
"file_size": 86132,
"file_unique_id": "AQADw8oxG-eqiVd-"
}
],
"message_id": 125
},
"update_id": 413913388
}
}
]
},
"settings": {
"executionOrder": "v1"
},
"versionId": "c571dd01-5b7e-4ee1-88d1-d33abb86e78b",
"connections": {
"4127fe82-7700-4292-b4fc-6fc27aa9e27c": {
"main": [
[
{
"node": "2990b76a-536e-48b4-8202-21b82ead2ef1",
"type": "main",
"index": 0
}
]
]
},
"ecb87468-671d-484c-9baf-01d40e6f5de6": {
"main": [
[
{
"node": "cdee68db-f387-48d6-8b1c-2f1de0fbefea",
"type": "main",
"index": 0
}
]
]
},
"552d5953-2b1e-48ff-a39b-112cae330f32": {
"main": [
[
{
"node": "4127fe82-7700-4292-b4fc-6fc27aa9e27c",
"type": "main",
"index": 0
}
]
]
},
"fa672106-597a-43d6-b3c8-d7d73e9ad499": {
"main": [
[
{
"node": "552d5953-2b1e-48ff-a39b-112cae330f32",
"type": "main",
"index": 0
}
]
]
},
"2990b76a-536e-48b4-8202-21b82ead2ef1": {
"main": [
[
{
"node": "ecb87468-671d-484c-9baf-01d40e6f5de6",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - 文書抽出, マルチモーダルAI
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
画像リーダー
TelegramボットとOCRを使って画像からテキスト抽出
Set
Telegram
Http Request
+
Set
Telegram
Http Request
8 ノードRudi Afandi
個人の生産性
GPT-4o VisionでTelegram画像の分析とテキスト抽出
GPT-4o Vision と Telegram を使って画像の分析とテキスト抽出
Code
Telegram
Http Request
+
Code
Telegram
Http Request
16 ノードAI/ML API | D1m7asis
文書抽出
1. 转写評価エージェント
TelegramとGroq Whisperによる音声文字起こし
If
Set
Switch
+
If
Set
Switch
22 ノードAbhiman
文書抽出
Telegram スマートファイルマネージャー(Drive + OCR 統合)
Telegram、Drive、OCR、Airtableを使った検索可能ドキュメントアーカイブの構築
If
Set
Merge
+
If
Set
Merge
33 ノードOneclick AI Squad
文書抽出
家居装饰AI(Google Nano Banana)- Santhej Kallada
Google Geminiを基盤としたAI画像生成・編集およびTelegramボット
If
Set
Code
+
If
Set
Code
28 ノードSanthej Kallada
コンテンツ作成
LinkedInおよびXウイルスのなコンテンツ自動エンジン
AIを使ってLinkedInとXにウイルスのなコンテンツを自動生成して公開する
If
Set
Wait
+
If
Set
Wait
156 ノードDiptamoy Barman
コンテンツ作成