{
  "updatedAt": "2025-11-28T17:51:13.920Z",
  "createdAt": "2025-11-28T17:36:31.254Z",
  "id": "QFvLylMg9TswRZTe",
  "name": "PDF Summarizer",
  "active": true,
  "isArchived": false,
  "nodes": [
    {
      "parameters": {
        "public": true,
        "options": {
          "allowFileUploads": true
        }
      },
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "typeVersion": 1.3,
      "position": [
        0,
        0
      ],
      "id": "773cd981-5815-4159-9a21-7f317875be32",
      "name": "When chat message received"
    },
    {
      "parameters": {
        "modelId": {
          "__rl": true,
          "value": "gpt-4.1-mini-2025-04-14",
          "mode": "list",
          "cachedResultName": "GPT-4.1-MINI-2025-04-14"
        },
        "messages": {
          "values": [
            {
              "content": "=PDF:  {{ $json.text }}"
            },
            {
              "content": "=Objetivo:\nVoc\u00ea receber\u00e1 um arquivo PDF. Sua tarefa \u00e9:\n\nProduzir um resumo detalhado, entre 1500 e 2000 palavras, destacando os pontos mais importantes para estudo.\nEm seguida, criar um quiz com 10 quest\u00f5es de m\u00faltipla escolha (A, B, C, D), cada uma com:\nEnunciado claro e objetivo.\nQuatro alternativas plaus\u00edveis (A\u2013D).\nIndica\u00e7\u00e3o expl\u00edcita da resposta correta.\nUm coment\u00e1rio explicativo curto citando trechos ou ideias-chave do conte\u00fado para justificar a resposta.\nInstru\u00e7\u00f5es detalhadas:\n\nLinguagem: portugu\u00eas claro, formal, com precis\u00e3o conceitual.\nP\u00fablico-alvo: estudantes que ir\u00e3o revisar o conte\u00fado para provas.\nConsist\u00eancia: garanta que cada quest\u00e3o se baseie diretamente no conte\u00fado do arquivo PDF, evitando infer\u00eancias externas.\nCobertura: o resumo deve contemplar defini\u00e7\u00e3o dos conceitos centrais, argumentos principais, evid\u00eancias, exemplos relevantes, implica\u00e7\u00f5es pr\u00e1ticas, controv\u00e9rsias/limita\u00e7\u00f5es, e rela\u00e7\u00f5es entre os t\u00f3picos.\nOrganiza\u00e7\u00e3o:\nT\u00edtulo do resumo.\nSe\u00e7\u00f5es com subt\u00edtulos descritivos.\nLista dos principais termos e defini\u00e7\u00f5es (bullet points) ao final do resumo.\nQuiz ap\u00f3s o resumo, em se\u00e7\u00e3o separada.\nEstilo do resumo:\nAbertura com vis\u00e3o geral do tema e objetivo do arquivo PDF.\nDesenvolvimento com encadeamento l\u00f3gico e coes\u00e3o.\n\u00canfase nos pontos mais importantes para estudo (fa\u00e7a uma se\u00e7\u00e3o \u201cPontos-chave para revis\u00e3o\u201d com bullets).\nConclus\u00e3o sintetizando aprendizados e poss\u00edveis aplica\u00e7\u00f5es.\nCita\u00e7\u00f5es: quando fizer refer\u00eancia a partes espec\u00edficas, cite brevemente entre aspas (\u201c...\u201d) ou com indica\u00e7\u00e3o de se\u00e7\u00e3o/minutagem se fornecida.\nExtens\u00e3o: entre 1500 e 2000 palavras (n\u00e3o menos que 1500 e n\u00e3o mais que 2000).\nQuiz:\nVarie os tipos de quest\u00e3o: defini\u00e7\u00e3o, aplica\u00e7\u00e3o, interpreta\u00e7\u00e3o de cita\u00e7\u00e3o, rela\u00e7\u00e3o de causa/efeito, verdadeiro/falso convertido em m\u00faltipla escolha.\nEm pelo menos 2 quest\u00f5es, use trechos literais do arquivo PDF para perguntar \u201cA que conceito/parte se refere a seguinte passagem: \u2018\u2026\u2019\u201d.\nEvite alternativas \u00f3bvias; todas devem ser veross\u00edmeis.\nAp\u00f3s cada quest\u00e3o, indique:\nResposta: [A/B/C/D]\nComent\u00e1rio: uma breve justificativa, citando a passagem ou a ideia correspondente.\nFormata\u00e7\u00e3o de sa\u00edda:\nUse cabe\u00e7alhos e listas para tornar o material escane\u00e1vel.\nMantenha portugu\u00eas do Brasil.\nN\u00e3o inclua conte\u00fado n\u00e3o presente no arquivo PDF.\nEntrada fornecida:\n\nArquivo PDF: {{ $json.text }}.\nModelo de sa\u00edda (exemplo de estrutura):\n\nResumo (1500\u20132000 palavras)\nT\u00edtulo\nIntrodu\u00e7\u00e3o (contexto e objetivo)\nSe\u00e7\u00f5es tem\u00e1ticas (2\u20135 se\u00e7\u00f5es, com subt\u00edtulos)\nPontos-chave para revis\u00e3o (bullet points)\nTermos e defini\u00e7\u00f5es (bullet points)\nConclus\u00e3o\nQuiz (10 quest\u00f5es)\nQuest\u00e3o 1: [enunciado]\nA) [alternativa]\nB) [alternativa]\nC) [alternativa]\nD) [alternativa]\nResposta: [letra]\nComent\u00e1rio: [justificativa curta citando trecho/ideia]\n\nQuest\u00e3o 2: \u2026\n\n\u2026\n\nQuest\u00e3o 10: \u2026\n\nCrit\u00e9rios de qualidade:\n\nFidelidade total ao conte\u00fado do arquivo PDF.\nClareza, concis\u00e3o e precis\u00e3o conceitual.\nAbrang\u00eancia dos t\u00f3picos-chave.\nQuest\u00f5es desafiadoras, com justificativas corretas e \u00fateis para estudo.\nObserva\u00e7\u00e3o:\nSe a transcri\u00e7\u00e3o estiver incompleta, indique as lacunas e evite extrapolar. Se houver minutagens, utilize-as para contextualizar as cita\u00e7\u00f5es no resumo e nos coment\u00e1rios do quiz.\n\nExemplo do estilo de pergunta solicitado (adapte ao conte\u00fado do arquivo PDF):\n\n\u201cA que parte do RNA se refere a seguinte parte do texto: \u2018se baseia no modo como a estrutura \u00e9 dada, de maneira a fazer com que o conhecimento experimental seja armazenado nessa estrutura, ou melhor dizendo, nas conex\u00f5es sin\u00e1pticas entre os neur\u00f4nios (Haykin, 2001, p. 28).\u2019\u201d\nA) A estrutura.\nB) A programa\u00e7\u00e3o.\nC) Ao texto.\nD) Ao algoritmo de aprendizagem.\nResposta: D\nComent\u00e1rio: \u201cO algoritmo de aprendizagem, por sua vez, se baseia no modo como a estrutura \u00e9 dada...\u201d\n",
              "role": "system"
            }
          ]
        },
        "options": {}
      },
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "typeVersion": 1.8,
      "position": [
        432,
        0
      ],
      "id": "7a354419-bd31-42fd-bc23-ad431a65bcfe",
      "name": "Message a model1",
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "operation": "pdf",
        "binaryPropertyName": "=data0",
        "options": {}
      },
      "type": "n8n-nodes-base.extractFromFile",
      "typeVersion": 1,
      "position": [
        224,
        0
      ],
      "id": "0a270b5c-ab4c-4ac8-80cd-9a40191153fa",
      "name": "Extract from File",
      "alwaysOutputData": false
    },
    {
      "parameters": {
        "folderId": "=14fNRjKaLEHEsSP019F5GqRmPkVYGsaXl",
        "title": "={{ $json.message.content.substr(0,78) }}"
      },
      "id": "e31ed62a-794a-4ed8-962a-1ae32c434d3d",
      "name": "Create Doc Filename is title",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        768,
        0
      ],
      "typeVersion": 2,
      "credentials": {
        "googleDocsOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "operation": "update",
        "documentURL": "={{ $json.id }}",
        "actionsUi": {
          "actionFields": [
            {
              "action": "insert",
              "locationChoice": "location",
              "text": "={{ $('Message a model1').item.json.message.content }}"
            }
          ]
        }
      },
      "id": "873258bf-bc77-4a83-b8e3-c5621367cfb9",
      "name": "Add Final Article",
      "type": "n8n-nodes-base.googleDocs",
      "position": [
        976,
        0
      ],
      "typeVersion": 2,
      "credentials": {
        "googleDocsOAuth2Api": {
          "name": "<your credential>"
        }
      }
    }
  ],
  "connections": {
    "When chat message received": {
      "main": [
        [
          {
            "node": "Extract from File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Message a model1": {
      "main": [
        [
          {
            "node": "Create Doc Filename is title",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract from File": {
      "main": [
        [
          {
            "node": "Message a model1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create Doc Filename is title": {
      "main": [
        [
          {
            "node": "Add Final Article",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {
    "executionOrder": "v1"
  },
  "staticData": null,
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "versionId": "3b8fbb21-8df2-41fd-abff-44bebfc075f5",
  "triggerCount": 1,
  "shared": [
    {
      "updatedAt": "2025-11-28T17:36:31.254Z",
      "createdAt": "2025-11-28T17:36:31.254Z",
      "role": "workflow:owner",
      "workflowId": "QFvLylMg9TswRZTe",
      "projectId": "CK6XEsloykybki2p"
    }
  ],
  "tags": [
    {
      "updatedAt": "2025-11-27T22:32:06.122Z",
      "createdAt": "2025-11-27T22:32:06.122Z",
      "id": "lf6jGzaXcolij5dW",
      "name": "prod"
    },
    {
      "updatedAt": "2025-11-27T22:30:51.794Z",
      "createdAt": "2025-11-27T22:30:51.794Z",
      "id": "V4F4G6t2C5blKSYh",
      "name": "internal-infra"
    }
  ],
  "n8n_host_name ": "https://n8n.trymyapp.tech/"
}