使用Vertex AI (Gemini)从PDF和图像提取文本到CSV
高级
这是一个AI领域的自动化工作流,包含 16 个节点。主要使用 Switch, GoogleDrive, HttpRequest, ConvertToFile, ExtractFromFile 等节点,结合人工智能技术实现智能自动化。 使用Vertex AI (Gemini)从PDF和图像提取文本到CSV
前置要求
- •Google Drive API 凭证
- •可能需要目标 API 的认证凭证
- •Google Gemini API Key
使用的节点 (16)
分类
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "sUIPemKdKqmUQFt6",
"meta": {
"instanceId": "558d88703fb65b2d0e44613bc35916258b0f0bf983c5d4730c00c424b77ca36a",
"templateCredsSetupCompleted": true
},
"name": "使用Vertex AI (Gemini)从PDF和图像提取文本到CSV",
"tags": [],
"nodes": [
{
"id": "f60ef5f9-bc08-4cc9-804e-697ae6f88b9b",
"name": "Google Gemini聊天模型",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
980,
920
],
"parameters": {
"options": {},
"modelName": "models/gemini-1.5-pro-latest"
},
"credentials": {
"googlePalmApi": {
"id": "hmNTKSKfppgtDbM5",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
},
{
"id": "81d3f7b8-20cb-4aac-82a9-d4e8e6581105",
"name": "获取PDF或图像",
"type": "n8n-nodes-base.googleDriveTrigger",
"position": [
220,
420
],
"parameters": {
"event": "fileCreated",
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"triggerOn": "specificFolder",
"folderToWatch": {
"__rl": true,
"mode": "list",
"value": "1HOeRP5iwccg93UPUYmWYD7DyDmRREkhj",
"cachedResultUrl": "https://drive.google.com/drive/folders/1HOeRP5iwccg93UPUYmWYD7DyDmRREkhj",
"cachedResultName": "Actual Budget"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "axkK6IN61bEAT6GM",
"name": "Google Service Account account"
}
},
"typeVersion": 1
},
{
"id": "fe9a8228-7950-4e2c-8982-328e03725782",
"name": "基于PDF或图像路由",
"type": "n8n-nodes-base.switch",
"position": [
480,
420
],
"parameters": {
"rules": {
"rules": [
{
"value2": "application/pdf",
"outputKey": "pdf"
},
{
"value2": "image/",
"operation": "contains",
"outputKey": "image"
}
]
},
"value1": "={{$json.mimeType}}",
"dataType": "string"
},
"typeVersion": 2
},
{
"id": "f62b71e5-af17-4f85-abff-7cee5100affc",
"name": "下载 PDF",
"type": "n8n-nodes-base.googleDrive",
"position": [
740,
320
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Get PDF or Images').item.json.id }}"
},
"options": {},
"operation": "download",
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "axkK6IN61bEAT6GM",
"name": "Google Service Account account"
}
},
"executeOnce": true,
"typeVersion": 3
},
{
"id": "fa99fbcf-1353-410d-a0db-48cea1178a76",
"name": "下载图片",
"type": "n8n-nodes-base.googleDrive",
"position": [
740,
740
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Get PDF or Images').item.json.id }}"
},
"options": {},
"operation": "download",
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "axkK6IN61bEAT6GM",
"name": "Google Service Account account"
}
},
"executeOnce": true,
"retryOnFail": false,
"typeVersion": 3,
"alwaysOutputData": true
},
{
"id": "e4979746-44bb-493e-b5eb-f9646b510888",
"name": "从PDF提取数据",
"type": "n8n-nodes-base.extractFromFile",
"position": [
980,
320
],
"parameters": {
"options": {},
"operation": "pdf"
},
"typeVersion": 1
},
{
"id": "6549c335-e749-4b95-b77d-096a5e77af5e",
"name": "发送数据到AI",
"type": "n8n-nodes-base.httpRequest",
"position": [
1180,
320
],
"parameters": {
"url": "https://openrouter.ai/api/v1/chat/completions",
"method": "POST",
"options": {},
"jsonBody": "={\n \"model\": \"meta-llama/llama-3.1-70b-instruct:free\",\n \"messages\": [\n {\n \"role\": \"user\",\n \"content\": \"You are given a bank statement.{{encodeURIComponent($json.text)}}. Read the PDF and export all the transactions as CSV. Add a column called category and based on the information assign a category name. Return only the CSV data starting with the header row.\"\n }\n ]\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"credentials": {
"httpHeaderAuth": {
"id": "WY7UkF14ksPKq3S8",
"name": "Header Auth account 2"
}
},
"typeVersion": 4.2,
"alwaysOutputData": false
},
{
"id": "42341f03-c9fc-4290-963e-1a723202a739",
"name": "转换为 CSV",
"type": "n8n-nodes-base.convertToFile",
"position": [
1400,
320
],
"parameters": {
"options": {}
},
"typeVersion": 1.1
},
{
"id": "bb446447-3f46-47e7-96a2-3fc720715828",
"name": "上传到Google Drive",
"type": "n8n-nodes-base.googleDrive",
"position": [
1640,
320
],
"parameters": {
"name": "={{$today}}",
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive",
"cachedResultUrl": "https://drive.google.com/drive/my-drive",
"cachedResultName": "My Drive"
},
"options": {},
"folderId": {
"__rl": true,
"mode": "list",
"value": "1Zo4OFCv1qWRX1jo0VL_iqUBf4v0fZEXe",
"cachedResultUrl": "https://drive.google.com/drive/folders/1Zo4OFCv1qWRX1jo0VL_iqUBf4v0fZEXe",
"cachedResultName": "CSV Exports"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "axkK6IN61bEAT6GM",
"name": "Google Service Account account"
}
},
"typeVersion": 3
},
{
"id": "843bc9c1-79a6-4f42-b9ee-fbec5f30b18d",
"name": "转换为CSV2",
"type": "n8n-nodes-base.convertToFile",
"position": [
1360,
740
],
"parameters": {
"options": {}
},
"typeVersion": 1.1
},
{
"id": "6404bf65-3a7e-4be9-9b7f-98a23dca2ffd",
"name": "上传到Google Drive1",
"type": "n8n-nodes-base.googleDrive",
"position": [
1640,
740
],
"parameters": {
"name": "={{$today}}",
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive",
"cachedResultUrl": "https://drive.google.com/drive/my-drive",
"cachedResultName": "My Drive"
},
"options": {},
"folderId": {
"__rl": true,
"mode": "list",
"value": "1Zo4OFCv1qWRX1jo0VL_iqUBf4v0fZEXe",
"cachedResultUrl": "https://drive.google.com/drive/folders/1Zo4OFCv1qWRX1jo0VL_iqUBf4v0fZEXe",
"cachedResultName": "CSV Exports"
},
"authentication": "serviceAccount"
},
"credentials": {
"googleApi": {
"id": "axkK6IN61bEAT6GM",
"name": "Google Service Account account"
}
},
"typeVersion": 3
},
{
"id": "5dd5771f-6ccb-47ab-acbb-d6cbec60d22b",
"name": "便签",
"type": "n8n-nodes-base.stickyNote",
"position": [
220,
-40
],
"parameters": {
"width": 589.0376569037658,
"height": 163.2468619246862,
"content": "## 如何使用n8n将PDF和图像文本提取到CSV(无需手动数据输入)\\n\\n此工作流将从PDF和图像中提取文本数据,然后存储为CSV格式。\\n\\n[💡 您可以在此处阅读有关此工作流的更多信息](https://rumjahn.com/how-to-create-an-a-i-agent-to-analyze-matomo-analytics-using-n8n-for-free/)"
},
"typeVersion": 1
},
{
"id": "37416630-9b52-4ce6-98d0-1bdd39ff0d6b",
"name": "便签1",
"type": "n8n-nodes-base.stickyNote",
"position": [
160,
160
],
"parameters": {
"color": 4,
"width": 248.11715481171547,
"height": 432.7364016736402,
"content": "## 获取PDF或图像\\n您需要在Google Drive内创建一个新文件夹来上传您的PDF和图像。\\n\\n创建文件夹后,您需要通过点击共享->添加用户来添加您的Google云用户。用户邮箱应类似于:n8n-server@n8n-server-435232.iam.gserviceaccount.com"
},
"typeVersion": 1
},
{
"id": "3ab10f17-de8f-4263-aef8-cc2fb090ffe5",
"name": "便签2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1120,
52.864368048917754
],
"parameters": {
"color": 5,
"height": 446.3929762816575,
"content": "## 发送到Openrouter\\n您需要设置Openrouter账户才能使用此功能。它将数据发送到openrouter以提取文本。\\n\\n使用Header认证。名称为\"Authorization\",值为\"Bearer {API令牌}\"。"
},
"typeVersion": 1
},
{
"id": "e966f95c-c54e-4d11-895d-d5f75c53aca5",
"name": "便签3",
"type": "n8n-nodes-base.stickyNote",
"position": [
920,
540
],
"parameters": {
"color": 6,
"width": 399.0962343096232,
"height": 517.154811715481,
"content": "## Vertex AI用于图像识别\\n我们将照片发送到Vertex AI以提取文本。您需要激活Vertex AI并为您的Google云凭据添加正确的权限。\\n- 启用Vertex API\\n- 将vertex添加到用户账户"
},
"typeVersion": 1
},
{
"id": "daa3ab66-fa14-4792-96d0-3bcbeffd5d60",
"name": "Vertex AI提取文本",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
980,
740
],
"parameters": {
"text": "=Extract the transactions from the image",
"messages": {
"messageValues": [
{
"message": "=You are given a screenshot of payment transactions. Read the image and export all the transactions as CSV. Add a column called category and based on the information assign a category name. Return only the CSV data starting with the header row."
},
{
"type": "HumanMessagePromptTemplate",
"messageType": "imageBinary"
}
]
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.4
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "80635382-3d1c-4e46-a753-84b033cfc3a7",
"connections": {
"Download PDF": {
"main": [
[
{
"node": "Extract data from PDF",
"type": "main",
"index": 0
}
]
]
},
"Convert to CSV": {
"main": [
[
{
"node": "Upload to Google Drive",
"type": "main",
"index": 0
}
]
]
},
"Download Image": {
"main": [
[
{
"node": "Vertex A.I. extract text",
"type": "main",
"index": 0
}
]
]
},
"Convert to CSV2": {
"main": [
[
{
"node": "Upload to Google Drive1",
"type": "main",
"index": 0
}
]
]
},
"Get PDF or Images": {
"main": [
[
{
"node": "Route based on PDF or Image",
"type": "main",
"index": 0
}
]
]
},
"Send data to A.I.": {
"main": [
[
{
"node": "Convert to CSV",
"type": "main",
"index": 0
}
]
]
},
"Extract data from PDF": {
"main": [
[
{
"node": "Send data to A.I.",
"type": "main",
"index": 0
}
]
]
},
"Google Gemini Chat Model": {
"ai_languageModel": [
[
{
"node": "Vertex A.I. extract text",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Vertex A.I. extract text": {
"main": [
[
{
"node": "Convert to CSV2",
"type": "main",
"index": 0
}
]
]
},
"Route based on PDF or Image": {
"main": [
[
{
"node": "Download PDF",
"type": "main",
"index": 0
}
],
[
{
"node": "Download Image",
"type": "main",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
高级 - 人工智能
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
宠物店 4
🐶 宠物店预约 AI 代理
If
Set
Code
+41
187 节点Bruno Dias
人工智能
[模板] AI宠物店 v8
🐶 AI宠物店助手 - 集成GPT-4o、Google日历和WhatsApp/Instagram/Facebook
If
N8n
Set
+38
244 节点Amanda Benks
销售
AI 代理餐厅 [模板]
🤖 WhatsApp、Instagram 和 Messenger 的 AI 餐厅助手
If
N8n
Set
+37
239 节点Amanda Benks
其他
AI驱动的RAG文档处理与聊天机器人 - Google Drive、Supabase、OpenAI
基于Google Drive、Supabase和OpenAI的AI驱动RAG文档处理与聊天机器人
Set
Code
Limit
+19
35 节点Billy Christi
人工智能
使用 Gemini AI 和 Chunkr.ai 按目录分段 PDF
使用 Gemini AI 和 Chunkr.ai 按目录分段 PDF
Set
Code
Html
+16
36 节点Lukas Kunhardt
人工智能
LinkedIn和X病毒内容自动引擎
使用AI生成和发布自动创建LinkedIn和X的病毒内容
If
Set
Wait
+26
156 节点Diptamoy Barman
内容创作