AI 로고 테이블 추출기를 Airtable로
고급
이것은Sales, Product, AI, Marketing분야의자동화 워크플로우로, 44개의 노드를 포함합니다.주로 Set, Code, Html, Merge, Crypto 등의 노드를 사용하며인공지능 기술을 결합하여 스마트 자동화를 구현합니다. 폼、AI、Google Sheet과 Airtable을 사용하여 로고 테이블에서 정보를 추출
사전 요구사항
- •Airtable API Key
- •OpenAI API Key
사용된 노드 (44)
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "dDAqkobn2pqgdl2N",
"meta": {
"instanceId": "9e331a89ae45a204c6dee51c77131d32a8c962ec20ccf002135ea60bd285dba9"
},
"name": "AI Logo Sheet Extractor to Airtable",
"tags": [],
"nodes": [
{
"id": "f7ecadb8-dc5d-4e8c-96b8-52c1dbad49b6",
"name": "폼 제출 시",
"type": "n8n-nodes-base.formTrigger",
"position": [
-660,
-220
],
"webhookId": "43837a27-f752-40a8-852a-d5d63d647bfd",
"parameters": {
"options": {
"path": "logo-sheet-feeder"
},
"formTitle": "AI Logo Sheet Feeder",
"formFields": {
"values": [
{
"fieldType": "file",
"fieldLabel": "The Logo-Sheet as Image",
"requiredField": true
},
{
"fieldLabel": "Addional Prompt (e.g.: What the meaning of the graphic?) *optional but helps from time to time.",
"placeholder": "It's a graph chart comparing AI Tools"
}
]
},
"formDescription": "Provide a Image with multiple Logos comparing or bringing multiple Tools into Context with one another."
},
"typeVersion": 2.2
},
{
"id": "b1530578-bde9-4ee3-9cdb-545a621cdb84",
"name": "검색 및 구문 분석 에이전트",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-180,
-220
],
"parameters": {
"options": {
"systemMessage": "Your task is to retrieve Information from the given Input. Extract Categories and Attributes of all given and shown Tools, Softwares or Products you've got by the user.\n\nProvide the Output Array of Tools with the following Structure as JSON:\n\n[{\n\"name\": \"Name of the Tool, Software, etc.\",\n\"attributes\": [\"Some category or attribute\", \"something else you can see from the context or image\"],\n\"similar\": [\"similar tool, product, etc. from shown context\", \"another similar software, product, tool from context\"]\n},{\n\"name\": \"Name of anotherTool, Software, etc.\",\n\"attributes\": [\"Some category, subcategory or general attribute\", \"something else you can see from the context or image\"],\n\"similar\": [\"similar tool, product, etc. from shown context\", \"another similar software, product, tool from context\"]\n}]\n\nList these structure for all the Products you see!\n\nHere a description of the JSON fields:\n\"name\": Just the Name of the Software.\n\"attribute\": Turn any information from the context or image into multiple useful Attributes for this tool. Could be a category, could be a feature, etc. Try to split this information in multiple specific Attributes or Categories.\n\"similar\": if multiple tools are shown that could compare to this one (like on the same level or in the same category), list those here\n\nTake a deep breath and think step by step.\nTry to extract every mentioned tool. There are for sure multiple listed.",
"passthroughBinaryImages": true
},
"hasOutputParser": true
},
"typeVersion": 1.7
},
{
"id": "51642a02-51a4-4894-adf0-f364736dabc1",
"name": "JSON 처리",
"type": "n8n-nodes-base.set",
"position": [
220,
-220
],
"parameters": {
"mode": "raw",
"options": {},
"jsonOutput": "={{ $json.output }}"
},
"typeVersion": 3.4
},
{
"id": "ec0f0575-eb33-48a9-b3fe-c4f5b71ff548",
"name": "구조화된 출력 파서",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
40,
20
],
"parameters": {
"jsonSchemaExample": "{\n\t\"tools\": [{\n\"name\": \"Name of the Tool, Software, etc.\",\n\"attributes\": [\"Some category or attribute\", \"something else you can see from the context or image\"],\n\"similar\": [\"similar tool, product, etc. from shown context\", \"another similar software, product, tool from context\"]\n},{\n\"name\": \"Name of anotherTool, Software, etc.\",\n\"attributes\": [\"Some category, subcategory or general attribute\", \"something else you can see from the context or image\"],\n\"similar\": [\"similar tool, product, etc. from shown context\", \"another similar software, product, tool from context\"]\n}]}"
},
"typeVersion": 1.2
},
{
"id": "6d78005e-7277-40a9-9f10-e3d8e475cbaf",
"name": "속성 존재 여부 확인",
"type": "n8n-nodes-base.airtable",
"position": [
1380,
0
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "appq0gcmxHAZQhswW",
"cachedResultUrl": "https://airtable.com/appq0gcmxHAZQhswW",
"cachedResultName": "AI Tools"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblX2rj8yNAZZRhwt",
"cachedResultUrl": "https://airtable.com/appq0gcmxHAZQhswW/tblX2rj8yNAZZRhwt",
"cachedResultName": "Attributes"
},
"columns": {
"value": {
"Name": "={{$json.attributes}}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "id",
"defaultMatch": true
},
{
"id": "Name",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Tools",
"type": "array",
"display": true,
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Tools",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"Name"
]
},
"options": {},
"operation": "upsert"
},
"credentials": {
"airtableTokenApi": {
"id": "jMqH6HkKUYTgyHVm",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "1c468a4b-4563-4f78-ba1b-138b18ac4821",
"name": "병합",
"type": "n8n-nodes-base.merge",
"position": [
1620,
80
],
"parameters": {
"mode": "combine",
"options": {},
"combineBy": "combineByPosition"
},
"typeVersion": 3
},
{
"id": "4f597962-48e5-4367-a329-bc07d42ff86d",
"name": "속성 ID 매핑",
"type": "n8n-nodes-base.set",
"position": [
1840,
80
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "675510b1-97e7-4a71-9c9e-d3ee792d9919",
"name": "id",
"type": "string",
"value": "={{ $json.id }}"
},
{
"id": "87cc9086-effd-4f4e-84c1-9adec5774e94",
"name": "attribute",
"type": "string",
"value": "={{ $json.attributes }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "11679757-360c-468f-b624-a9f6853e29f4",
"name": "속성 순환 처리",
"type": "n8n-nodes-base.splitInBatches",
"position": [
720,
-40
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "835a09ae-2e51-488c-b0b3-d895696a135e",
"name": "모든 속성",
"type": "n8n-nodes-base.set",
"position": [
940,
-60
],
"parameters": {
"mode": "raw",
"options": {},
"jsonOutput": "={{ $json }}"
},
"typeVersion": 3.4
},
{
"id": "b8ca6d98-ab37-4393-8a2c-561912aeff2b",
"name": "속성 생성 대기",
"type": "n8n-nodes-base.merge",
"position": [
1120,
-200
],
"parameters": {
"mode": "chooseBranch"
},
"typeVersion": 3
},
{
"id": "9eaf87d4-910b-4a6e-9cdf-ee51ff4180cc",
"name": "각 속성을 해당 RecID로 변경",
"type": "n8n-nodes-base.code",
"position": [
1340,
-200
],
"parameters": {
"jsCode": "let knownAttributesOutput = $('All Attributes').all();\nlet knownAttributes = new Map();\nknownAttributesOutput.forEach((nodeOutput)=>{\nknownAttributes.set(nodeOutput.json.attribute.toString().trim(), nodeOutput.json.id);\n});\n\n\nfor (const item of $input.all()) {\n item.json.attributes.forEach((attribute, index)=>{\n item.json.attributes[index] = knownAttributes.get(attribute.toString().trim());\n });\n}\n\nreturn $input.all();"
},
"typeVersion": 2
},
{
"id": "ecfedff4-f6f9-429e-8514-cf8208e70048",
"name": "스티커 노트",
"type": "n8n-nodes-base.stickyNote",
"position": [
600,
-280
],
"parameters": {
"color": 5,
"width": 1460,
"height": 600,
"content": "## Attribute Creation and Mapping those created or existing Ids "
},
"typeVersion": 1
},
{
"id": "ad2fafed-0a42-4615-a882-01306af7caf5",
"name": "스티커 노트1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-260,
-360
],
"parameters": {
"color": 6,
"width": 420,
"height": 540,
"content": "## Eat the provided Images, Extract the Information out of them as \"Tool -> Attributes\" list."
},
"typeVersion": 1
},
{
"id": "5eb89e50-7a2f-415c-82f2-99eb8a7ff82f",
"name": "도구 분리",
"type": "n8n-nodes-base.splitOut",
"position": [
440,
-220
],
"parameters": {
"options": {},
"fieldToSplitOut": "tools"
},
"typeVersion": 1
},
{
"id": "680dfb4b-dde4-4d8f-852d-c3eba82e6607",
"name": "각 속성 문자열 분리",
"type": "n8n-nodes-base.splitOut",
"position": [
1140,
100
],
"parameters": {
"options": {},
"fieldToSplitOut": "attributes"
},
"typeVersion": 1
},
{
"id": "a33465e9-d469-498f-9178-7c30e15d2782",
"name": "스티커 노트2",
"type": "n8n-nodes-base.stickyNote",
"position": [
2120,
-280
],
"parameters": {
"color": 4,
"width": 880,
"height": 600,
"content": "## Create the Tools (if not exists)"
},
"typeVersion": 1
},
{
"id": "5b5ab9f2-d4ac-437f-ab0a-b113a8af34ab",
"name": "이름에 대한 고유 해시 생성",
"type": "n8n-nodes-base.crypto",
"position": [
2180,
-200
],
"parameters": {
"value": "={{ $json.name.toLowerCase().trim() }}",
"dataPropertyName": "hash"
},
"typeVersion": 1
},
{
"id": "ea8f7e6f-9004-4271-80d3-333701cce488",
"name": "존재하지 않으면 생성",
"type": "n8n-nodes-base.airtable",
"position": [
2400,
-100
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "appq0gcmxHAZQhswW",
"cachedResultUrl": "https://airtable.com/appq0gcmxHAZQhswW",
"cachedResultName": "AI Tools"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblrikRHbX1N6P2JI",
"cachedResultUrl": "https://airtable.com/appq0gcmxHAZQhswW/tblrikRHbX1N6P2JI",
"cachedResultName": "Tools"
},
"columns": {
"value": {
"Hash": "={{$json.hash}}",
"Name": "={{$json.name}}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "id",
"defaultMatch": true
},
{
"id": "Name",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Description",
"type": "string",
"display": true,
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Website",
"type": "string",
"display": true,
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Website",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Category",
"type": "array",
"display": true,
"options": [],
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Category",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Attributes",
"type": "array",
"display": true,
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Attributes",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Hash",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Hash",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"Hash"
]
},
"options": {},
"operation": "upsert"
},
"credentials": {
"airtableTokenApi": {
"id": "jMqH6HkKUYTgyHVm",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "85ac3cbb-4103-4184-b686-9e5b8d48f421",
"name": "기존 데이터 + RecID 병합",
"type": "n8n-nodes-base.merge",
"position": [
2820,
-180
],
"parameters": {
"mode": "combine",
"options": {},
"fieldsToMatchString": "hash"
},
"typeVersion": 3
},
{
"id": "29d6369f-f233-46f8-8bee-aa3be854bb0c",
"name": "필요한 항목만",
"type": "n8n-nodes-base.set",
"position": [
2600,
-100
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "0ff954ec-1d71-429b-b2e8-dca17ff0478d",
"name": "hash",
"type": "string",
"value": "={{ $json.fields.Hash }}"
},
{
"id": "a7f4c2e7-fa63-45d7-ad22-ce8c3aaae4d6",
"name": "id",
"type": "string",
"value": "={{ $json.id }}"
},
{
"id": "081a7613-7c06-4578-8aa4-25d21952b727",
"name": "existingAttributes",
"type": "array",
"value": "={{ $json.fields.Attributes ? $json.fields.Attributes : [] }}"
},
{
"id": "e3ace89b-d818-4448-8328-b36cdf08da2a",
"name": "existingSimilars",
"type": "array",
"value": "={{ $json.fields.Similar ? $json.fields.Similar : [] }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "bdf9c435-3994-4c25-9520-8dfa76e625eb",
"name": "저장할 속성 결정",
"type": "n8n-nodes-base.code",
"position": [
3040,
-180
],
"parameters": {
"mode": "runOnceForEachItem",
"jsCode": "let savingAttributes = $input.item.json.existingAttributes ? $input.item.json.existingAttributes : [];\n$input.item.json.attributes.forEach((attrId)=>{\nif($input.item.json.existingAttributes.indexOf(attrId) == -1) savingAttributes.push(attrId);\n});\n\n$input.item.json.savingAttributes = savingAttributes;\n\nreturn $input.item;"
},
"typeVersion": 2
},
{
"id": "88e9f499-87d3-46e2-b3ea-1833c14aaa1b",
"name": "유사 항목 분리",
"type": "n8n-nodes-base.splitOut",
"position": [
3300,
20
],
"parameters": {
"options": {},
"fieldToSplitOut": "similar"
},
"typeVersion": 1
},
{
"id": "733a8d0c-c6ea-4386-9fd1-075980289e9c",
"name": "병합1",
"type": "n8n-nodes-base.merge",
"position": [
3960,
0
],
"parameters": {
"mode": "combine",
"options": {},
"combineBy": "combineByPosition"
},
"typeVersion": 3
},
{
"id": "dabb7e11-b4de-44d9-a80f-3302f49194fb",
"name": "유사 항목에 대한 고유 해시 생성",
"type": "n8n-nodes-base.crypto",
"position": [
3520,
-100
],
"parameters": {
"value": "={{ $json.similar.toLowerCase().trim() }}",
"dataPropertyName": "hash"
},
"typeVersion": 1
},
{
"id": "a1bbda24-f75c-4316-b2bd-645827d7af1f",
"name": "존재해야 함",
"type": "n8n-nodes-base.airtable",
"position": [
3740,
-100
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "appq0gcmxHAZQhswW",
"cachedResultUrl": "https://airtable.com/appq0gcmxHAZQhswW",
"cachedResultName": "AI Tools"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblrikRHbX1N6P2JI",
"cachedResultUrl": "https://airtable.com/appq0gcmxHAZQhswW/tblrikRHbX1N6P2JI",
"cachedResultName": "Tools"
},
"columns": {
"value": {
"Hash": "={{$json.hash}}",
"Name": "={{$json.similar}}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "id",
"defaultMatch": true
},
{
"id": "Name",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Description",
"type": "string",
"display": true,
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Website",
"type": "string",
"display": true,
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Website",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Category",
"type": "array",
"display": true,
"options": [],
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Category",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Attributes",
"type": "array",
"display": true,
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Attributes",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Hash",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Hash",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"Hash"
]
},
"options": {},
"operation": "upsert"
},
"credentials": {
"airtableTokenApi": {
"id": "jMqH6HkKUYTgyHVm",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "9853b85d-fcb9-4183-8fe4-6e32d318ab01",
"name": "모든 유사 항목",
"type": "n8n-nodes-base.set",
"position": [
4180,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "675510b1-97e7-4a71-9c9e-d3ee792d9919",
"name": "id",
"type": "string",
"value": "={{ $json.id }}"
},
{
"id": "87cc9086-effd-4f4e-84c1-9adec5774e94",
"name": "similar",
"type": "string",
"value": "={{ $json.similar }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "0e98acd2-4aa5-4df0-b36b-6ac1a8a2263b",
"name": "병합2",
"type": "n8n-nodes-base.merge",
"position": [
4400,
-160
],
"parameters": {
"mode": "chooseBranch"
},
"typeVersion": 3
},
{
"id": "ed94900a-78cd-4f61-a705-30f7cb8eb9b8",
"name": "스티커 노트3",
"type": "n8n-nodes-base.stickyNote",
"position": [
3200,
-280
],
"parameters": {
"color": 2,
"width": 1600,
"height": 600,
"content": "## Map Competitors"
},
"typeVersion": 1
},
{
"id": "74f0f703-ce73-457c-9137-88d613d2e480",
"name": "각 유사 항목을 해당 RecID로 변경",
"type": "n8n-nodes-base.code",
"position": [
4600,
-160
],
"parameters": {
"jsCode": "let knownSimilarsOutput = $('All Similar').all();\nlet knownSimilars = new Map();\nknownSimilarsOutput.forEach((nodeOutput)=>{\n knownSimilars.set(nodeOutput.json.similar.toString().trim(), nodeOutput.json.id);\n});\n\nfor (const item of $input.all()) {\n item.json.similar.forEach((similar, index)=>{\n item.json.similar[index] = knownSimilars.get(similar.toString().trim());\n });\n}\n\nreturn $input.all();"
},
"typeVersion": 2
},
{
"id": "c9187902-f67f-4639-906b-d6b14ace6a0e",
"name": "저장할 유사 항목 결정",
"type": "n8n-nodes-base.code",
"position": [
4880,
-160
],
"parameters": {
"mode": "runOnceForEachItem",
"jsCode": "let savingSimilar = $input.item.json.existingSimilars ? $input.item.json.existingSimilars : [];\n$input.item.json.similar.forEach((simId)=>{\nif($input.item.json.existingSimilars.indexOf(simId) == -1) savingSimilar.push(simId);\n});\n\n$input.item.json.savingSimilars = savingSimilar;\n\nreturn $input.item;"
},
"typeVersion": 2
},
{
"id": "e925a388-05e2-49e4-92ad-984517f44057",
"name": "모든 유용한 데이터 저장",
"type": "n8n-nodes-base.airtable",
"position": [
5120,
-160
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "appq0gcmxHAZQhswW",
"cachedResultUrl": "https://airtable.com/appq0gcmxHAZQhswW",
"cachedResultName": "AI Tools"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblrikRHbX1N6P2JI",
"cachedResultUrl": "https://airtable.com/appq0gcmxHAZQhswW/tblrikRHbX1N6P2JI",
"cachedResultName": "Tools"
},
"columns": {
"value": {
"Hash": "={{$json.hash}}",
"Name": "={{$json.name}}",
"Similar": "={{ $json.savingSimilars }}",
"Attributes": "={{ $json.savingAttributes }}"
},
"schema": [
{
"id": "id",
"type": "string",
"display": true,
"removed": true,
"readOnly": true,
"required": false,
"displayName": "id",
"defaultMatch": true
},
{
"id": "Name",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Name",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Description",
"type": "string",
"display": true,
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Description",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Website",
"type": "string",
"display": true,
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Website",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Category",
"type": "array",
"display": true,
"options": [],
"removed": true,
"readOnly": false,
"required": false,
"displayName": "Category",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Attributes",
"type": "array",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Attributes",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Hash",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Hash",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Similar",
"type": "array",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Similar",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [
"Hash"
]
},
"options": {},
"operation": "upsert"
},
"credentials": {
"airtableTokenApi": {
"id": "jMqH6HkKUYTgyHVm",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "d2532094-9c71-4fc0-8195-fb2e29169086",
"name": "에이전트 입력 매핑",
"type": "n8n-nodes-base.set",
"position": [
-440,
-220
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "ace29464-a2a1-44a1-87f9-255fbde042cf",
"name": "chatInput",
"type": "string",
"value": "={{$json.Prompt}}"
}
]
},
"includeOtherFields": true
},
"typeVersion": 3.4
},
{
"id": "8fa7273b-ebc8-40e4-9f11-e4b26784f60d",
"name": "gpt-4o",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-200,
20
],
"parameters": {
"model": "gpt-4o",
"options": {}
},
"credentials": {
"openAiApi": {
"id": "25",
"name": "Key 3 vom 15. Jan. 2023\t"
}
},
"typeVersion": 1
},
{
"id": "fb282ffe-4871-4560-97ce-43cc381db874",
"name": "노트3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1440,
-580
],
"parameters": {
"width": 668,
"height": 786,
"content": "## Instructions\n\nThis automation enables you to just upload any Image (via Form) of a Logo Sheet, containing multiple Images of Products, most likely and bringing them in some context to one another. \n\nAfter submitting an AI-Agent eats **that Logo Sheet**, turning it into an List of \"Productname\" and \"Attributes\", also checks if Tools are kind of similar to another, given the Context of the Image.\n\nWe utilize AI Vision capabilities for that. **NOTE:** It might not be able to extract all informations. For a \"upload and forget it\" Workflow it works for me. You can even run it multiple times, to be sure. \n\nBut if you need to make sure it extracts **everything** you might need to think about an Multi-Agent Setup with Validation-Agent Steps.\n\nOnce the Agent finishes the extraction, it will traditionally and deterministicly add those Attributes to Airtable (**Creates** those, if not already existing.) and also **Upserts** the Tool Informations.\n\nIt uses MD5 **Hashes** for turning Product Names into.. something fancy really, you could also use it without that, but I wanted to have something that looks atleast like an ID. \n\n### Setup\n\n1. Set Up the Airtable like shown below.\n2. Update and set Credentials for all Airtable Nodes.\n3. Check or Adjust the Prompt of the Agent matching your use-case.\n4. Activate the Workflow. \n5. Open the Form (default: https://your-n8n.io/form/logo-sheet-feeder)\n6. Enjoy growing your Airtable.\n\n \nEnjoy the workflow! ❤️ \n[let the workf low](https://let-the-work-flow.com) — Workflow Automation & Development"
},
"typeVersion": 1
},
{
"id": "9ea45b9b-ac2a-4498-b96f-5f5de50acade",
"name": "테이블: 도구",
"type": "n8n-nodes-base.noOp",
"position": [
-1340,
340
],
"parameters": {},
"typeVersion": 1
},
{
"id": "6dfbc02e-36b3-4640-b9f2-940c7cd6f86e",
"name": "테이블: 속성",
"type": "n8n-nodes-base.noOp",
"position": [
-1000,
340
],
"parameters": {},
"typeVersion": 1
},
{
"id": "d8ffeff8-8df7-4fc0-9f18-49a44d10eb7d",
"name": "노트",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1440,
240
],
"parameters": {
"color": 7,
"width": 668,
"height": 786,
"content": "## Airtable Structure\n"
},
"typeVersion": 1
},
{
"id": "7023be89-ee1d-41e6-bcf5-ee28f1284e07",
"name": "스티커 노트4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1420,
580
],
"parameters": {
"color": 5,
"width": 300,
"height": 320,
"content": "### Tools Table Fields\n\n**Required:**\nName (singleLineText) \nAttributes (multipleRecordLinks=Link to Attributes Table) \nHash (singleLineText) \nSimilar (multipleRecordLinks=Link to the Same Table:\"Tools\") \n\n_Description (multilineText)_ \n_Website (url)_\n_Category (multipleSelects)_"
},
"typeVersion": 1
},
{
"id": "0c999f6f-11fb-472a-aa10-0915fbcd1254",
"name": "make 가독성 있는 목록으로",
"type": "n8n-nodes-base.html",
"disabled": true,
"position": [
-420,
800
],
"parameters": {
"html": ""
},
"typeVersion": 1.2
},
{
"id": "ae351db3-5c47-4e53-bf9e-e34434ad9522",
"name": "스키마 가져오기",
"type": "n8n-nodes-base.airtable",
"disabled": true,
"position": [
-640,
800
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "appq0gcmxHAZQhswW",
"cachedResultUrl": "https://airtable.com/appq0gcmxHAZQhswW",
"cachedResultName": "AI Tools"
},
"resource": "base",
"operation": "getSchema"
},
"credentials": {
"airtableTokenApi": {
"id": "jMqH6HkKUYTgyHVm",
"name": "Airtable Personal Access Token account"
}
},
"typeVersion": 2.1
},
{
"id": "9da286e2-2a06-4d2a-bd5b-b6c828683ff2",
"name": "노트1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-720,
660
],
"parameters": {
"color": 7,
"width": 488,
"height": 366,
"content": "## Helper for Documentation (ignore or enjoy it)\n"
},
"typeVersion": 1
},
{
"id": "901a0c48-82a9-4fd3-a007-8f4b257348d3",
"name": "스티커 노트5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1080,
580
],
"parameters": {
"color": 5,
"width": 280,
"height": 320,
"content": "### Attributes Table Fields\n\n**Required:**\nName (singleLineText)\nTools (multipleRecordLinks=Link to Tools Table) "
},
"typeVersion": 1
},
{
"id": "966243fa-a1a3-4201-9df7-6a01aa762ae8",
"name": "스티커 노트6",
"type": "n8n-nodes-base.stickyNote",
"position": [
-160,
-460
],
"parameters": {
"color": 3,
"width": 220,
"height": 80,
"content": "### Might want to Adjust Prompt to your \"Use-Case\" 🤖"
},
"typeVersion": 1
},
{
"id": "1a4e5b87-68a6-499e-9374-e067fae12c84",
"name": "노트4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2440,
-580
],
"parameters": {
"color": 7,
"width": 968,
"height": 646,
"content": "## Example Logo Sheet\n### For these kind of sheets the Prompt is designed per default\n\n "
},
"typeVersion": 1
}
],
"active": true,
"pinData": {
"Retrieve and Parser Agent": [
{
"json": {
"output": {
"tools": [
{
"name": "airOps",
"similar": [
"Cognition",
"Gradial"
],
"attributes": [
"Agentic Application",
"AI infrastructure"
]
},
{
"name": "Cognition",
"similar": [
"airOps",
"Gradial"
],
"attributes": [
"Agentic Application",
"AI infrastructure"
]
},
{
"name": "Gradial",
"similar": [
"Cognition",
"airOps"
],
"attributes": [
"Agentic Application",
"AI infrastructure"
]
},
{
"name": "Cognosys",
"similar": [
"FIXIE",
"continuia"
],
"attributes": [
"Agentic Application",
"AI infrastructure"
]
},
{
"name": "FIXIE",
"similar": [
"Cognosys",
"continuia"
],
"attributes": [
"Agentic Application",
"AI infrastructure"
]
},
{
"name": "continuia",
"similar": [
"Cognosys",
"FIXIE"
],
"attributes": [
"Agentic Application",
"AI infrastructure"
]
},
{
"name": "Agentlabs",
"similar": [
"OpenAI",
"LangChain"
],
"attributes": [
"Presentation Tool",
"Utilizes OpenAI and LangChain"
]
},
{
"name": "TINY FISH",
"similar": [
"Superagent",
"basepilot"
],
"attributes": [
"UI Automation",
"Agent as a Service"
]
},
{
"name": "Superagent",
"similar": [
"TINY FISH",
"basepilot"
],
"attributes": [
"UI Automation",
"Agent as a Service"
]
},
{
"name": "basepilot",
"similar": [
"TINY FISH",
"Superagent"
],
"attributes": [
"UI Automation",
"Agent as a Service"
]
},
{
"name": "Browserbase",
"similar": [
"browsersless",
"APIFY"
],
"attributes": [
"Browser Infrastructure",
"Web services"
]
},
{
"name": "browsersless",
"similar": [
"Browserbase",
"APIFY"
],
"attributes": [
"Browser Infrastructure",
"Web services"
]
},
{
"name": "APIFY",
"similar": [
"Browserbase",
"browsersless"
],
"attributes": [
"Browser Infrastructure",
"Web services"
]
},
{
"name": "Cloudflare",
"similar": [
"bright data",
"platform.sh"
],
"attributes": [
"Browser Infrastructure",
"Web services"
]
},
{
"name": "bright data",
"similar": [
"Cloudflare",
"platform.sh"
],
"attributes": [
"Browser Infrastructure",
"Web services"
]
},
{
"name": "platform.sh",
"similar": [
"Cloudflare",
"bright data"
],
"attributes": [
"Browser Infrastructure",
"Web services"
]
},
{
"name": "ingest",
"similar": [
"hatchet",
"Trigger.dev"
],
"attributes": [
"Persistence Tool",
"Data management"
]
},
{
"name": "hatchet",
"similar": [
"ingest",
"Trigger.dev"
],
"attributes": [
"Persistence Tool",
"Data management"
]
},
{
"name": "Trigger.dev",
"similar": [
"ingest",
"hatchet"
],
"attributes": [
"Persistence Tool",
"Data management"
]
},
{
"name": "DSPy",
"similar": [
"AutoGen",
"Scma4.ai"
],
"attributes": [
"Orchestration Tool",
"AI Workflow Management"
]
},
{
"name": "AutoGen",
"similar": [
"DSPy",
"Scma4.ai"
],
"attributes": [
"Orchestration Tool",
"AI Workflow Management"
]
},
{
"name": "Scma4.ai",
"similar": [
"DSPy",
"AutoGen"
],
"attributes": [
"Orchestration Tool",
"AI Workflow Management"
]
},
{
"name": "WhyHowAI",
"similar": [
"Graphlit",
"LangMem"
],
"attributes": [
"Personalization Tool",
"Memory management"
]
},
{
"name": "Graphlit",
"similar": [
"WhyHowAI",
"LangMem"
],
"attributes": [
"Personalization Tool",
"Memory management"
]
},
{
"name": "LangMem",
"similar": [
"WhyHowAI",
"Graphlit"
],
"attributes": [
"Personalization Tool",
"Memory management"
]
},
{
"name": "Pinecone",
"similar": [
"Chroma",
"Weaviate"
],
"attributes": [
"Storage Tool",
"Memory management"
]
},
{
"name": "Chroma",
"similar": [
"Pinecone",
"Weaviate"
],
"attributes": [
"Storage Tool",
"Memory management"
]
},
{
"name": "Weaviate",
"similar": [
"Pinecone",
"Chroma"
],
"attributes": [
"Storage Tool",
"Memory management"
]
},
{
"name": "MongoDB",
"similar": [
"WhiteLodge",
"Chroma"
],
"attributes": [
"Context Management",
"Data storage"
]
},
{
"name": "LangServe",
"similar": [
"E2B",
"Ollama"
],
"attributes": [
"Agent Hosting",
"Deployment platform"
]
},
{
"name": "E2B",
"similar": [
"LangServe",
"Ollama"
],
"attributes": [
"Agent Hosting",
"Deployment platform"
]
},
{
"name": "Ollama",
"similar": [
"LangServe",
"E2B"
],
"attributes": [
"Agent Hosting",
"Deployment platform"
]
},
{
"name": "LangGraph",
"similar": [
"Semantic Kernel",
"LlamaIndex"
],
"attributes": [
"Framework Tool",
"Graph Management"
]
},
{
"name": "LlamaIndex",
"similar": [
"LangGraph",
"Semantic Kernel"
],
"attributes": [
"Framework Tool",
"Graph Management"
]
},
{
"name": "Semantic Kernel",
"similar": [
"LangGraph",
"LlamaIndex"
],
"attributes": [
"Framework Tool",
"Graph Management"
]
},
{
"name": "agentops",
"similar": [
"context",
"LangSmith"
],
"attributes": [
"Agent Evaluation Tool",
"Performance Assessment"
]
},
{
"name": "context",
"similar": [
"agentops",
"LangSmith"
],
"attributes": [
"Agent Evaluation Tool",
"Performance Assessment"
]
},
{
"name": "LangSmith",
"similar": [
"agentops",
"context"
],
"attributes": [
"Agent Evaluation Tool",
"Performance Assessment"
]
},
{
"name": "WHYLabs",
"similar": [
"griptape",
"braintrust"
],
"attributes": [
"Developer Tools",
"Data Management"
]
},
{
"name": "griptape",
"similar": [
"WHYLabs",
"braintrust"
],
"attributes": [
"Developer Tools",
"Data Management"
]
},
{
"name": "braintrust",
"similar": [
"WHYLabs",
"griptape"
],
"attributes": [
"Developer Tools",
"Data Management"
]
}
]
}
}
}
]
},
"settings": {
"executionOrder": "v1"
},
"versionId": "cd74efad-4f0c-45ea-bc7e-3f7c5554c204",
"connections": {
"1c468a4b-4563-4f78-ba1b-138b18ac4821": {
"main": [
[
{
"node": "4f597962-48e5-4367-a329-bc07d42ff86d",
"type": "main",
"index": 0
}
]
]
},
"733a8d0c-c6ea-4386-9fd1-075980289e9c": {
"main": [
[
{
"node": "9853b85d-fcb9-4183-8fe4-6e32d318ab01",
"type": "main",
"index": 0
}
]
]
},
"0e98acd2-4aa5-4df0-b36b-6ac1a8a2263b": {
"main": [
[
{
"node": "74f0f703-ce73-457c-9137-88d613d2e480",
"type": "main",
"index": 0
}
]
]
},
"8fa7273b-ebc8-40e4-9f11-e4b26784f60d": {
"ai_languageModel": [
[
{
"node": "b1530578-bde9-4ee3-9cdb-545a621cdb84",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"51642a02-51a4-4894-adf0-f364736dabc1": {
"main": [
[
{
"node": "5eb89e50-7a2f-415c-82f2-99eb8a7ff82f",
"type": "main",
"index": 0
}
]
]
},
"ae351db3-5c47-4e53-bf9e-e34434ad9522": {
"main": [
[
{
"node": "0c999f6f-11fb-472a-aa10-0915fbcd1254",
"type": "main",
"index": 0
}
]
]
},
"9853b85d-fcb9-4183-8fe4-6e32d318ab01": {
"main": [
[
{
"node": "0e98acd2-4aa5-4df0-b36b-6ac1a8a2263b",
"type": "main",
"index": 1
}
]
]
},
"9ea45b9b-ac2a-4498-b96f-5f5de50acade": {
"main": [
[
{
"node": "9ea45b9b-ac2a-4498-b96f-5f5de50acade",
"type": "main",
"index": 0
},
{
"node": "6dfbc02e-36b3-4640-b9f2-940c7cd6f86e",
"type": "main",
"index": 0
}
]
]
},
"835a09ae-2e51-488c-b0b3-d895696a135e": {
"main": [
[
{
"node": "b8ca6d98-ab37-4393-8a2c-561912aeff2b",
"type": "main",
"index": 1
}
]
]
},
"d2532094-9c71-4fc0-8195-fb2e29169086": {
"main": [
[
{
"node": "b1530578-bde9-4ee3-9cdb-545a621cdb84",
"type": "main",
"index": 0
}
]
]
},
"5eb89e50-7a2f-415c-82f2-99eb8a7ff82f": {
"main": [
[
{
"node": "11679757-360c-468f-b624-a9f6853e29f4",
"type": "main",
"index": 0
},
{
"node": "b8ca6d98-ab37-4393-8a2c-561912aeff2b",
"type": "main",
"index": 0
}
]
]
},
"a1bbda24-f75c-4316-b2bd-645827d7af1f": {
"main": [
[
{
"node": "733a8d0c-c6ea-4386-9fd1-075980289e9c",
"type": "main",
"index": 0
}
]
]
},
"4f597962-48e5-4367-a329-bc07d42ff86d": {
"main": [
[
{
"node": "11679757-360c-468f-b624-a9f6853e29f4",
"type": "main",
"index": 0
}
]
]
},
"29d6369f-f233-46f8-8bee-aa3be854bb0c": {
"main": [
[
{
"node": "85ac3cbb-4103-4184-b686-9e5b8d48f421",
"type": "main",
"index": 1
}
]
]
},
"88e9f499-87d3-46e2-b3ea-1833c14aaa1b": {
"main": [
[
{
"node": "dabb7e11-b4de-44d9-a80f-3302f49194fb",
"type": "main",
"index": 0
},
{
"node": "733a8d0c-c6ea-4386-9fd1-075980289e9c",
"type": "main",
"index": 1
}
]
]
},
"6dfbc02e-36b3-4640-b9f2-940c7cd6f86e": {
"main": [
[]
]
},
"f7ecadb8-dc5d-4e8c-96b8-52c1dbad49b6": {
"main": [
[
{
"node": "d2532094-9c71-4fc0-8195-fb2e29169086",
"type": "main",
"index": 0
}
]
]
},
"ea8f7e6f-9004-4271-80d3-333701cce488": {
"main": [
[
{
"node": "29d6369f-f233-46f8-8bee-aa3be854bb0c",
"type": "main",
"index": 0
}
]
]
},
"11679757-360c-468f-b624-a9f6853e29f4": {
"main": [
[
{
"node": "835a09ae-2e51-488c-b0b3-d895696a135e",
"type": "main",
"index": 0
}
],
[
{
"node": "680dfb4b-dde4-4d8f-852d-c3eba82e6607",
"type": "main",
"index": 0
}
]
]
},
"85ac3cbb-4103-4184-b686-9e5b8d48f421": {
"main": [
[
{
"node": "bdf9c435-3994-4c25-9520-8dfa76e625eb",
"type": "main",
"index": 0
}
]
]
},
"ec0f0575-eb33-48a9-b3fe-c4f5b71ff548": {
"ai_outputParser": [
[
{
"node": "b1530578-bde9-4ee3-9cdb-545a621cdb84",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"6d78005e-7277-40a9-9f10-e3d8e475cbaf": {
"main": [
[
{
"node": "1c468a4b-4563-4f78-ba1b-138b18ac4821",
"type": "main",
"index": 0
}
]
]
},
"b1530578-bde9-4ee3-9cdb-545a621cdb84": {
"main": [
[
{
"node": "51642a02-51a4-4894-adf0-f364736dabc1",
"type": "main",
"index": 0
}
]
]
},
"b8ca6d98-ab37-4393-8a2c-561912aeff2b": {
"main": [
[
{
"node": "9eaf87d4-910b-4a6e-9cdf-ee51ff4180cc",
"type": "main",
"index": 0
}
]
]
},
"5b5ab9f2-d4ac-437f-ab0a-b113a8af34ab": {
"main": [
[
{
"node": "ea8f7e6f-9004-4271-80d3-333701cce488",
"type": "main",
"index": 0
},
{
"node": "85ac3cbb-4103-4184-b686-9e5b8d48f421",
"type": "main",
"index": 0
}
]
]
},
"680dfb4b-dde4-4d8f-852d-c3eba82e6607": {
"main": [
[
{
"node": "6d78005e-7277-40a9-9f10-e3d8e475cbaf",
"type": "main",
"index": 0
},
{
"node": "1c468a4b-4563-4f78-ba1b-138b18ac4821",
"type": "main",
"index": 1
}
]
]
},
"c9187902-f67f-4639-906b-d6b14ace6a0e": {
"main": [
[
{
"node": "e925a388-05e2-49e4-92ad-984517f44057",
"type": "main",
"index": 0
}
]
]
},
"dabb7e11-b4de-44d9-a80f-3302f49194fb": {
"main": [
[
{
"node": "a1bbda24-f75c-4316-b2bd-645827d7af1f",
"type": "main",
"index": 0
}
]
]
},
"bdf9c435-3994-4c25-9520-8dfa76e625eb": {
"main": [
[
{
"node": "88e9f499-87d3-46e2-b3ea-1833c14aaa1b",
"type": "main",
"index": 0
},
{
"node": "0e98acd2-4aa5-4df0-b36b-6ac1a8a2263b",
"type": "main",
"index": 0
}
]
]
},
"74f0f703-ce73-457c-9137-88d613d2e480": {
"main": [
[
{
"node": "c9187902-f67f-4639-906b-d6b14ace6a0e",
"type": "main",
"index": 0
}
]
]
},
"9eaf87d4-910b-4a6e-9cdf-ee51ff4180cc": {
"main": [
[
{
"node": "5b5ab9f2-d4ac-437f-ab0a-b113a8af34ab",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급 - 영업, 제품, 인공지능, 마케팅
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
자동화 뉴스-브리핑 AI 에이전트 v13
AI 뉴스 연구 팀: 24/7 브리핑 자동화, Perplexity 인용 포함
Set
Code
Gmail
+
Set
Code
Gmail
37 노드Derek Cheung
제품
[템플릿] AI 반려동물 가게 v8
🐶 AI 펫 샵 어시스턴트 - GPT-4o, Google 캘린더 및 WhatsApp/Instagram/Facebook 통합
If
N8n
Set
+
If
N8n
Set
244 노드Amanda Benks
영업
HDW 리드 베이비
AI 에이전트를 사용한 자동화된 LinkedIn 리드 생성, 점수 매기기 및 소통
If
Code
Sort
+
If
Code
Sort
86 노드Andrey
영업
WordPress 콘텐츠 생성기 v3
WordPress 내용 생성기 v3
If
Set
Code
+
If
Set
Code
102 노드Alex Kim
인공지능
🗞️ AI로운 지속 가능한 마케팅 브리핑(gmail, GPT-4o 사용)
🗞️ AI 주도의 지속 가능성 마케팅 브리핑( Gmail, GPT-4o 사용)
If
Set
Code
+
If
Set
Code
21 노드Samir Saci
인공지능
AI 마케팅 에이전트: Reddit + OpenRouter + Gmail 잠재고객 생성
AI 마케팅 에이전트: Reddit, OpenRouter 및 Gmail을 통한 잠재고객 생성
If
Set
Code
+
If
Set
Code
23 노드Ari Nakos
영업
워크플로우 정보
난이도
고급
노드 수44
카테고리4
노드 유형14
저자
Marcel Claus-Ahrens
@geckseHey 👋 I'm an Automation Expert with a passion for AI workflow automations and AI agents in general. Coming from a software background, I bring the necessary hard skills but love using NoCode to get the job done faster – hence n8n.
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유