8
n8n 中文网amn8n.com

文档医嘱提取至Google表格(VLM Run AI)

中级

这是一个AI Summarization, Multimodal AI领域的自动化工作流,包含 8 个节点。主要使用 GoogleDrive, GoogleSheets, VlmRun, GoogleDriveTrigger 等节点。 使用VLM Run AI从文档中提取医嘱至Google表格

前置要求
  • Google Drive API 凭证
  • Google Sheets API 凭证
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "meta": {
    "instanceId": "96d35e452e0d9a182973416b7532cfc5643239aaaa764a5bf74d52ca84f4a35c",
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "d91aa0d4-5d82-4696-bd1e-5dbadda58824",
      "name": "VLM Run",
      "type": "@vlm-run/n8n-nodes-vlmrun.vlmRun",
      "position": [
        48,
        288
      ],
      "parameters": {
        "domain": "healthcare.physician-order"
      },
      "typeVersion": 1
    },
    {
      "id": "12cecad0-3515-45b7-8941-2a83a32fe758",
      "name": "在表格中追加行",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        544,
        288
      ],
      "parameters": {
        "columns": {
          "value": {
            "DIAGNOSIS": "={{ $json.response.physician_info.diagnosis }}",
            "EXAM DATE": "={{ $json.response.exam_data }}",
            "PATIENT DOB": "={{ $json.response.patient_info.dob }}",
            "PATIENT NAME": "={{ $json.response.patient_info.name.full_name }}",
            "PATIENT EMAIL": "={{ $json.response.patient_info.email }}",
            "PHYSICIAN FAX": "={{ $json.response.physician_info.fax }}",
            "FORM SIGNED IN": "={{ $json.response.form_signed_date }}",
            "PATIENT GENDER": "={{ $json.response.patient_info.gender }}",
            "PATIENT HEIGHT": "={{ $json.response.patient_info.height }}",
            "PATIENT WEIGHT": "={{ $json.response.patient_info.weight }}",
            "PHYSICIAN NAME": "={{ $json.response.physician_info.referring_physician.full_name }}",
            "ADDITIONAL INFO": "={{ $json.response.additional_notes }}",
            "PATIENT ADDRESS": "={{ $json.response.patient_info.address }}",
            "PHYSICIAN EMAIL": "={{ $json.response.physician_info.email }}",
            "PATIENT PHONE NO": "={{ $json.response.patient_info.phone }}",
            "REFERRING CLINIC": "={{ $json.response.physician_info.referring_clinic }}",
            "PHYSICIAN PHONE NO": "={{ $json.response.physician_info.phone }}",
            "REFERRING CLINIC ADDRESS": "={{ $json.response.physician_info.referring_clinic_address }}"
          },
          "schema": [
            {
              "id": "PATIENT NAME",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PATIENT NAME",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PATIENT ADDRESS",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PATIENT ADDRESS",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PATIENT PHONE NO",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PATIENT PHONE NO",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PATIENT EMAIL",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PATIENT EMAIL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PATIENT DOB",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PATIENT DOB",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PATIENT GENDER",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PATIENT GENDER",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PATIENT HEIGHT",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PATIENT HEIGHT",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PATIENT WEIGHT",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PATIENT WEIGHT",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PHYSICIAN NAME",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PHYSICIAN NAME",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PHYSICIAN PHONE NO",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PHYSICIAN PHONE NO",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PHYSICIAN EMAIL",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PHYSICIAN EMAIL",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "PHYSICIAN FAX",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "PHYSICIAN FAX",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "REFERRING CLINIC",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "REFERRING CLINIC",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "REFERRING CLINIC ADDRESS",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "REFERRING CLINIC ADDRESS",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "DIAGNOSIS",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "DIAGNOSIS",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "ADDITIONAL INFO",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "ADDITIONAL INFO",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "EXAM DATE",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "EXAM DATE",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "FORM SIGNED IN",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "FORM SIGNED IN",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1sxwN8f1BTLkb3zvSmyj5HQ9iOLbqNNeDjCt0JuwzsFY/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1sxwN8f1BTLkb3zvSmyj5HQ9iOLbqNNeDjCt0JuwzsFY",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1sxwN8f1BTLkb3zvSmyj5HQ9iOLbqNNeDjCt0JuwzsFY/edit?usp=drivesdk",
          "cachedResultName": "physician order sheet"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "9f3e9526-b716-49b9-b26d-59aa44b415bd",
      "name": "下载文件",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        -336,
        288
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "options": {},
        "operation": "download"
      },
      "typeVersion": 3
    },
    {
      "id": "aa4720fa-a453-4e44-b00b-95e805783ab8",
      "name": "便签",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1168,
        -192
      ],
      "parameters": {
        "color": 7,
        "width": 480,
        "height": 768,
        "content": "# 使用 VLM Run 处理医生订单"
      },
      "typeVersion": 1
    },
    {
      "id": "f4cf5e61-eb58-444f-8334-e881fe5af979",
      "name": "便签 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        368,
        -192
      ],
      "parameters": {
        "color": 7,
        "width": 480,
        "height": 768,
        "content": "# 在表格中追加行"
      },
      "typeVersion": 1
    },
    {
      "id": "abf0a903-ccfa-42da-a091-e84f8146668d",
      "name": "便签 3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -144,
        -192
      ],
      "parameters": {
        "width": 480,
        "height": 768,
        "content": "# VLM Run (文档)"
      },
      "typeVersion": 1
    },
    {
      "id": "6cec4604-f099-418f-bb58-eb0501b15759",
      "name": "Google Drive 触发器",
      "type": "n8n-nodes-base.googleDriveTrigger",
      "position": [
        -592,
        288
      ],
      "parameters": {
        "event": "fileCreated",
        "options": {
          "fileType": "all"
        },
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        },
        "triggerOn": "specificFolder",
        "folderToWatch": {
          "__rl": true,
          "mode": "list",
          "value": "1E8rvLEWKguorMT36yCD1jY78G0u8g6g7",
          "cachedResultUrl": "https://drive.google.com/drive/folders/1E8rvLEWKguorMT36yCD1jY78G0u8g6g7",
          "cachedResultName": "test_data"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "7f89b384-401d-448b-8f5f-0f2e916133ad",
      "name": "便签 4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -656,
        -192
      ],
      "parameters": {
        "color": 7,
        "width": 480,
        "height": 768,
        "content": "# 📁 输入处理"
      },
      "typeVersion": 1
    }
  ],
  "pinData": {},
  "connections": {
    "VLM Run": {
      "main": [
        [
          {
            "node": "Append row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download file": {
      "main": [
        [
          {
            "node": "VLM Run",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Drive Trigger": {
      "main": [
        [
          {
            "node": "Download file",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

中级 - AI 摘要总结, 多模态 AI

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
中级
节点数量8
分类2
节点类型5
难度说明

适合有一定经验的用户,包含 6-15 个节点的中等复杂度工作流

作者
Shahrear

Shahrear

@shahrear

I’m Shahrear, a Software Engineer with over 5 years of experience in full-stack development and workflow automation. I specialize in building intelligent automations using n8n, helping teams streamline operations and boost productivity. I’m also an expert in developing custom n8n nodes, with published work on npm - including the @vlm-run/n8n-nodes-vlmrun package. Linkedin - https://www.linkedin.com/in/shahrear-amin/ Email - shahrearbinamin33@gmail.com

外部链接
在 n8n.io 查看

分享此工作流