レジュメツール
中級
これはHR, AI Summarization分野の自動化ワークフローで、15個のノードを含みます。主にCode, Merge, Webhook, Aggregate, GoogleDriveなどのノードを使用。 Llama3.1大規模言語モデルに基づくAIレジュメ選考、Googleドライブおよびスプレッドシートとの統合
前提条件
- •HTTP Webhookエンドポイント(n8nが自動生成)
- •Google Drive API認証情報
- •Google Sheets API認証情報
使用ノード (15)
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "7wkmOQEEUAJIwFEP",
"meta": {
"instanceId": "558d88703fb65b2d0e44613bc35916258b0f0bf983c5d4730c00c424b77ca36a",
"templateCredsSetupCompleted": true
},
"name": "cv-tool",
"tags": [],
"nodes": [
{
"id": "0cae9383-b4da-43ec-9962-afc97d56ddad",
"name": "アイテムのループ",
"type": "n8n-nodes-base.splitInBatches",
"position": [
-280,
160
],
"parameters": {
"options": {}
},
"executeOnce": false,
"typeVersion": 3
},
{
"id": "c027ca47-5415-4f7a-9028-a0637acc195f",
"name": "マージ",
"type": "n8n-nodes-base.merge",
"position": [
380,
360
],
"parameters": {
"mode": "chooseBranch"
},
"typeVersion": 3
},
{
"id": "2bd255ee-e3d8-46a6-9112-14b348852eae",
"name": "集計",
"type": "n8n-nodes-base.aggregate",
"position": [
600,
360
],
"parameters": {
"options": {},
"aggregate": "aggregateAllItemData"
},
"typeVersion": 1
},
{
"id": "ae51c305-87e4-4404-816e-4f2b30b80c6d",
"name": "Ollama Model",
"type": "@n8n/n8n-nodes-langchain.lmOllama",
"position": [
920,
840
],
"parameters": {
"model": "llama3.1:latest",
"options": {
"temperature": 0.1
}
},
"credentials": {
"ollamaApi": {
"id": "7CIt42W14b1MCgxQ",
"name": "Ollama account"
}
},
"typeVersion": 1
},
{
"id": "42fd32cf-1787-45c5-a2df-08955534ae64",
"name": "自動修正アウトプットパーサー",
"type": "@n8n/n8n-nodes-langchain.outputParserAutofixing",
"position": [
1020,
660
],
"parameters": {
"options": {}
},
"typeVersion": 1
},
{
"id": "097e8558-2a30-4c1e-a7bd-4620bc9d22a6",
"name": "構造化アウトプットパーサー",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
1060,
1100
],
"parameters": {
"schemaType": "manual",
"inputSchema": "{\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"title\": \"Evaluation Form\",\n \"type\": \"object\",\n \"properties\": {\n \"candidate_file_name\": {\"$ref\": \"#/definitions/candidateFileName\"},\n \"candidate_name\": {\"$ref\": \"#/definitions/candidateName\"},\n \"questions\": {\"$ref\": \"#/definitions/questions\"},\n \"overall_points\": {\"$ref\": \"#/definitions/overallPoints\"}\n },\n \"required\": [\"candidate_file_name\", \"candidate_name\", \"questions\", \"overall_points\"],\n \"definitions\": {\n \"candidateFileName\": {\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"title\": \"Candidate File Name\",\n \"type\": \"string\"\n },\n \"candidateName\": {\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"title\": \"Candidate Name\",\n \"type\": \"string\"\n },\n \"questions\": {\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"title\": \"Questions\",\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/definitions/question\"\n }\n },\n \"question\": {\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"title\": \"Question\",\n \"type\": \"object\",\n \"properties\": {\n \"question\": {\"$ref\": \"#/definitions/questionText\"},\n \"answer\": {\"$ref\": \"#/definitions/candidateAnswer\"}\n },\n \"required\": [\"question\", \"answer\"]\n },\n \"questionText\": {\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"title\": \"Question Text\",\n \"type\": \"string\"\n },\n \"candidateAnswer\": {\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"title\": \"Candidate Answer\",\n \"type\": \"string\"\n },\n \"overallPoints\": {\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"title\": \"Overall Points\",\n \"type\": \"string\"\n }\n }\n}"
},
"typeVersion": 1.2
},
{
"id": "79957386-3e4b-4650-9490-8a29f948d5f0",
"name": "コード",
"type": "n8n-nodes-base.code",
"position": [
1260,
360
],
"parameters": {
"jsCode": "// Extract input data\nconst items = $input.all();\nlet results = [];\nlet allQuestions = new Set();\n\n// Collect all possible question fields dynamically\nitems.forEach(item => {\n let output = item.json.output;\n let questions = output.questions;\n \n Object.keys(questions).forEach(q => allQuestions.add(q));\n});\n\n// Convert to array format\nitems.forEach(item => {\n let output = item.json.output;\n let row = {\n \"Candidate File Name\": output.candidate_file_name,\n \"Candidate Name\": output.candidate_name\n };\n\n // Add all dynamically available question scores\n allQuestions.forEach(question => {\n row[question] = output.questions[question] || \"\";\n });\n\n // Add overall points\n row[\"Overall Points\"] = output.overall_points;\n results.push(row);\n});\n\nreturn results.map(row => ({ json: row }));"
},
"executeOnce": false,
"typeVersion": 2
},
{
"id": "b0c56e05-f929-496d-9482-ff2f61a6e544",
"name": "ファイルダウンロード",
"type": "n8n-nodes-base.googleDrive",
"position": [
-100,
380
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $json.id }}"
},
"options": {
"googleFileConversion": {
"conversion": {
"docsToFormat": "application/pdf",
"slidesToFormat": "application/pdf",
"drawingsToFormat": "application/pdf"
}
}
},
"operation": "download"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "5dc07e0a-900f-407e-be7e-da4db4168e30",
"name": "抽出条件",
"type": "n8n-nodes-base.googleSheets",
"position": [
20,
180
],
"parameters": {
"options": {},
"sheetName": {
"__rl": true,
"mode": "list",
"value": 714429904,
"cachedResultUrl": "",
"cachedResultName": "Search_Criteria_t2"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1VoJbCMXbgQm8lO37h1kAp-wFo_7rC_xthL7H4PXCNxg",
"cachedResultUrl": "",
"cachedResultName": "Criteria-sheet"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "",
"name": "Google Sheets account"
}
},
"typeVersion": 4.5
},
{
"id": "e917b4e5-ca96-4d08-b43c-bf832710b1f4",
"name": "PDFから抽出",
"type": "n8n-nodes-base.extractFromFile",
"position": [
140,
380
],
"parameters": {
"options": {},
"operation": "pdf"
},
"typeVersion": 1
},
{
"id": "fbee4bec-65af-4017-98b7-9074c4fd5770",
"name": "出力シート",
"type": "n8n-nodes-base.googleSheets",
"position": [
1500,
360
],
"parameters": {
"columns": {
"value": {},
"schema": [
{
"id": "Candidate File Name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Candidate File Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Candidate Name",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Candidate Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Business Analysis",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Business Analysis",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Project Management (PMO)",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Project Management (PMO)",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Banking",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Banking",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Communication Skills",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Communication Skills",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Overall Points",
"type": "string",
"display": true,
"removed": false,
"required": false,
"displayName": "Overall Points",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "autoMapInputData",
"matchingColumns": []
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": 1534129230,
"cachedResultUrl": "",
"cachedResultName": "Sheet2"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1TvYZwuCeTVImsXdd3cNh6zYf7neJbHvCkqLjNzsCk5w",
"cachedResultUrl": "",
"cachedResultName": "Output-sheet"
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "",
"name": "Google Sheets account"
}
},
"typeVersion": 4.5
},
{
"id": "1d77e98d-20fa-4301-93ea-175881cac1dc",
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
-880,
160
],
"webhookId": "6751c9a2-4bf9-416e-8e98-905498867431",
"parameters": {
"path": "6751c9a2-4bf9-416e-8e98-905498867431",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "d7644e7c-2abb-4bb2-ac81-7595cc918a9b",
"name": "Webhookに返信",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
20,
-60
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "{\n \"Status\": \"Workflow Completed!\"\n}"
},
"typeVersion": 1.1,
"alwaysOutputData": false
},
{
"id": "14869643-9588-42de-a238-195f47875d78",
"name": "フォルダ検索",
"type": "n8n-nodes-base.googleDrive",
"position": [
-580,
160
],
"parameters": {
"filter": {
"folderId": {
"__rl": true,
"mode": "list",
"value": "1z0DTQL4nfB7lQFETQw8-fnxg1YaOpgoL",
"cachedResultUrl": "",
"cachedResultName": "test"
}
},
"options": {},
"resource": "fileFolder"
},
"credentials": {
"googleDriveOAuth2Api": {
"id": "",
"name": "Google Drive account"
}
},
"typeVersion": 3
},
{
"id": "8f920f78-86d3-45ed-b59c-4a74e6fb108b",
"name": "基本LLMチェーン",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
860,
360
],
"parameters": {
"text": "=%Candidate_Profile%: \n{{ $('Extract from PDF').first().json.text}}\n\nAnalyze the %Candidate_Profile% against the %Questions%:{{ $json.data.map(item => item.Matching_Criteria + \" - Output Type:\" + item.Output_Type) + \"\\n\" }}. \n\nUse this question format as input to the AI-Model : How do you rate your experiance in {{ $json.data.map(item => item.Matching_Criteria + \"Output Type:\" + item.Output_Type) + \"\\n\" }}\n\nTake candidate_file_name as {{ $('Download-file').first().json.name }} and fetch the candidate_name from the %Candidate_Profile%\n\nFor each question output format should be : {{ $json.data[0].Output_Type}}\n\nAt the end please calculate overall point(Total Point = sum({{ $json.data[0].Output_Type}} for each criteria)).\n\n\nIf he or she didn't have any experiance under specific area please mark rating as 0.\n",
"messages": {
"messageValues": [
{
"message": "Output should be a one specific format for all outputs"
}
]
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.5
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "3a4961eb-24af-44a3-b727-9e11b39ee823",
"connections": {
"79957386-3e4b-4650-9490-8a29f948d5f0": {
"main": [
[
{
"node": "fbee4bec-65af-4017-98b7-9074c4fd5770",
"type": "main",
"index": 0
}
]
]
},
"c027ca47-5415-4f7a-9028-a0637acc195f": {
"main": [
[
{
"node": "2bd255ee-e3d8-46a6-9112-14b348852eae",
"type": "main",
"index": 0
}
]
]
},
"1d77e98d-20fa-4301-93ea-175881cac1dc": {
"main": [
[
{
"node": "14869643-9588-42de-a238-195f47875d78",
"type": "main",
"index": 0
}
]
]
},
"2bd255ee-e3d8-46a6-9112-14b348852eae": {
"main": [
[
{
"node": "8f920f78-86d3-45ed-b59c-4a74e6fb108b",
"type": "main",
"index": 0
}
]
]
},
"ae51c305-87e4-4404-816e-4f2b30b80c6d": {
"ai_languageModel": [
[
{
"node": "8f920f78-86d3-45ed-b59c-4a74e6fb108b",
"type": "ai_languageModel",
"index": 0
},
{
"node": "42fd32cf-1787-45c5-a2df-08955534ae64",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"fbee4bec-65af-4017-98b7-9074c4fd5770": {
"main": [
[
{
"node": "0cae9383-b4da-43ec-9962-afc97d56ddad",
"type": "main",
"index": 0
}
]
]
},
"b0c56e05-f929-496d-9482-ff2f61a6e544": {
"main": [
[
{
"node": "e917b4e5-ca96-4d08-b43c-bf832710b1f4",
"type": "main",
"index": 0
}
]
]
},
"14869643-9588-42de-a238-195f47875d78": {
"main": [
[
{
"node": "0cae9383-b4da-43ec-9962-afc97d56ddad",
"type": "main",
"index": 0
}
]
]
},
"5dc07e0a-900f-407e-be7e-da4db4168e30": {
"main": [
[
{
"node": "c027ca47-5415-4f7a-9028-a0637acc195f",
"type": "main",
"index": 0
}
]
]
},
"8f920f78-86d3-45ed-b59c-4a74e6fb108b": {
"main": [
[
{
"node": "79957386-3e4b-4650-9490-8a29f948d5f0",
"type": "main",
"index": 0
}
]
]
},
"0cae9383-b4da-43ec-9962-afc97d56ddad": {
"main": [
[
{
"node": "d7644e7c-2abb-4bb2-ac81-7595cc918a9b",
"type": "main",
"index": 0
}
],
[
{
"node": "b0c56e05-f929-496d-9482-ff2f61a6e544",
"type": "main",
"index": 0
},
{
"node": "5dc07e0a-900f-407e-be7e-da4db4168e30",
"type": "main",
"index": 0
}
]
]
},
"e917b4e5-ca96-4d08-b43c-bf832710b1f4": {
"main": [
[
{
"node": "c027ca47-5415-4f7a-9028-a0637acc195f",
"type": "main",
"index": 1
}
]
]
},
"097e8558-2a30-4c1e-a7bd-4620bc9d22a6": {
"ai_outputParser": [
[
{
"node": "42fd32cf-1787-45c5-a2df-08955534ae64",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"42fd32cf-1787-45c5-a2df-08955534ae64": {
"ai_outputParser": [
[
{
"node": "8f920f78-86d3-45ed-b59c-4a74e6fb108b",
"type": "ai_outputParser",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - 人事, AI要約
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
n8nノードの探索(可視化リファレンスライブラリ内)
n8nノードを可視化リファレンスライブラリで探索
If
Ftp
Set
+
If
Ftp
Set
113 ノードI versus AI
その他
毎日の WhatsApp グループ スマート分析:GPT-4.1 による分析と音声メッセージの transcrição
毎日の WhatsApp グループ インタラクティブ分析:GPT-4.1 分析と音声メッセージ文字起こし
If
Set
Code
+
If
Set
Code
52 ノードDaniel Lianes
その他
オートメーション動画ジェネレーター
DeepSeek、TTS、Together.ai を使ってスクリプトから AI 動画を生成
Set
Code
Wait
+
Set
Code
Wait
81 ノードLakindu Siriwardana
コンテンツ作成
第一轮 Telegram と LinkedIn 快速通道 AI 招聘アシスタント
AI候选人筛选流程:LinkedInへTelegram,統合Gemini与Apify
If
Set
Code
+
If
Set
Code
55 ノードDean Pike
人事
TalentFlow AI - バッチ履歴書スクリーニングと職位説明とのマッチング
GPT-4を活用したHRチーム向けの大量リソーシェスクリーニングと職位説明書マッチング
If
Code
Merge
+
If
Code
Merge
30 ノードTrung Tran
人事
ペットショップ 4
ペットショップ予約AIエージェント
If
Set
Code
+
If
Set
Code
187 ノードBruno Dias
人工知能