Crear artículos de investigación usando planificación de IA, búsqueda de Linkup y GPT-5
Este es unContent Creation, Miscellaneous, AI RAG, Multimodal AIflujo de automatización del dominio deautomatización que contiene 19 nodos.Utiliza principalmente nodos como Set, SplitOut, Aggregate, FormTrigger, HttpRequest. Crear artículos con respaldo de investigación usando planificación de IA, búsqueda Linkup y GPT-5
- •Pueden requerirse credenciales de autenticación para la API de destino
- •Clave de API de OpenAI
Nodos utilizados (19)
{
"nodes": [
{
"id": "954ed22b-db88-4708-82f8-63beed6317de",
"name": "Formulario de nuevo artículo",
"type": "n8n-nodes-base.formTrigger",
"position": [
-944,
-704
],
"webhookId": "61cdfeab-f3ce-4b9a-925b-63f813c267f9",
"parameters": {
"options": {},
"formTitle": "New article",
"formFields": {
"values": [
{
"fieldLabel": "Article title",
"placeholder": "10 ways to do Influencer Marketing in 2025",
"requiredField": true
},
{
"fieldLabel": "Article guidelines",
"placeholder": "Promote xyz and write in British English...",
"requiredField": true
}
]
},
"formDescription": "Fill in this form to trigger the generation of a new article."
},
"typeVersion": 2.3
},
{
"id": "4d44933f-1e99-46cf-919d-0942acb2ccb7",
"name": "Preparar valores del formulario",
"type": "n8n-nodes-base.set",
"position": [
-688,
-704
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "ec4734ed-654f-478a-ab90-91bfcee1e208",
"name": "Title",
"type": "string",
"value": "={{ $json['Article title'] }}"
},
{
"id": "c034402e-a7b9-4c91-aaed-f24a838c3d91",
"name": "Guidelines",
"type": "string",
"value": "={{ $json['Article guidelines'] }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "5553922c-69d4-4de7-8a07-a38c37238b50",
"name": "Analizador de salida estructurada",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-256,
-480
],
"parameters": {
"jsonSchemaExample": "[\n {\n \"question\": \"Lorem ipsum dolor sit amet, consectetur adipiscing elit?\"\n },\n {\n \"question\": \"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua?\"\n },\n {\n \"question\": \"Lorem ipsum dolor sit amet?\"\n },\n {\n \"question\": \"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua, ut enim ad minim veniam?\"\n },\n {\n \"question\": \"Lorem ipsum dolor sit amet, consectetur?\"\n }\n]"
},
"typeVersion": 1.2
},
{
"id": "2b5dee40-df1b-41cb-8691-bf43158ff50e",
"name": "GPT 5 mini",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-384,
-480
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-5-mini",
"cachedResultName": "gpt-5-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "dMiSy27YCK6c6rra",
"name": "Duv's OpenAI"
}
},
"typeVersion": 1.2
},
{
"id": "4e25660b-428e-416c-91a0-63cc04104196",
"name": "Separar preguntas",
"type": "n8n-nodes-base.splitOut",
"position": [
16,
-704
],
"parameters": {
"options": {},
"fieldToSplitOut": "output"
},
"typeVersion": 1
},
{
"id": "39c18e8e-5d8f-4f54-9b0c-009fa3f4b966",
"name": "Bucle sobre preguntas",
"type": "n8n-nodes-base.splitInBatches",
"position": [
272,
-720
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "924c6121-8fd7-413b-9a77-9b77054dd481",
"name": "GPT 5 chat",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
864,
-1056
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-5-chat-latest",
"cachedResultName": "gpt-5-chat-latest"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "dMiSy27YCK6c6rra",
"name": "Duv's OpenAI"
}
},
"typeVersion": 1.2
},
{
"id": "a9f80b58-8767-49ce-a1b3-b310a39f40dc",
"name": "Resultado del artículo",
"type": "n8n-nodes-base.set",
"position": [
1200,
-1280
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "d3b8c4bc-27d9-4d57-b8d6-3a40b84d7b7d",
"name": "Article",
"type": "string",
"value": "={{ $json.text }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "a0c64516-6639-4164-8271-600a35a7eda2",
"name": "Nota adhesiva",
"type": "n8n-nodes-base.stickyNote",
"position": [
544,
-720
],
"parameters": {
"color": 7,
"width": 224,
"height": 352,
"content": "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nConnect your linkup.so credentials (adding your API key in the header or using \"generic credentials\" that you've stored for Linkup)."
},
"typeVersion": 1
},
{
"id": "04528097-0fdb-432d-9847-5741eef25624",
"name": "Agregar contenido de investigación",
"type": "n8n-nodes-base.aggregate",
"position": [
528,
-1072
],
"parameters": {
"options": {},
"aggregate": "aggregateAllItemData",
"destinationFieldName": "Content to leverage"
},
"typeVersion": 1
},
{
"id": "45d07062-280c-41f4-a6ec-f1d50ce3ac22",
"name": "Nota adhesiva1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1680,
-1008
],
"parameters": {
"width": 544,
"height": 752,
"content": "# AI Article Research & Writing Team\n\nThis workflow mimics a professional writing process to create high-quality, sourced articles. It doesn't just write; it plans, researches, and then drafts the content.\n\n## How it works\n1. **Plan:** An AI planner breaks your article topic into a series of sub-questions.\n2. **Research:** It uses **Linkup** to search the web for sourced insights on each sub-question.\n3. **Write:** A final AI writer composes the article based *only* on the sourced research, complete with hyperlinks.\n\n## How to use\n1. **Connect Linkup:** Add your Linkup API Key to the `Query Linkup for insights` node.\n2. **Connect AI Provider:** Connect your AI credentials to the two LLM nodes (we recommend a small model for planning and a large one for writing).\n3. **Run:** Use the form to enter a title and guidelines to generate your sourced article.\n\n\n\n*This template was created by Guillaume Duvernay*"
},
"typeVersion": 1
},
{
"id": "7fa303e2-3f58-4c34-b4ae-d7d17a4062b7",
"name": "Nota adhesiva2",
"type": "n8n-nodes-base.stickyNote",
"position": [
176,
-848
],
"parameters": {
"color": 6,
"width": 976,
"height": 608,
"content": "## Retrieving insights from the web for each sub-question"
},
"typeVersion": 1
},
{
"id": "59d256ae-0dee-4e9a-aeef-d674f97473bb",
"name": "Nota adhesiva3",
"type": "n8n-nodes-base.stickyNote",
"position": [
720,
-1440
],
"parameters": {
"color": 5,
"width": 368,
"height": 512,
"content": "## AI step writing the final article based on the insights and initial request"
},
"typeVersion": 1
},
{
"id": "61489602-8823-4dc7-87aa-16870a543dcc",
"name": "Nota adhesiva4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-528,
-848
],
"parameters": {
"color": 6,
"width": 480,
"height": 608,
"content": "## Breaking down the topic into sub-questions"
},
"typeVersion": 1
},
{
"id": "653763b7-3438-4085-8888-fb332a6d3cd2",
"name": "Nota adhesiva5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1024,
-832
],
"parameters": {
"color": 4,
"width": 272,
"height": 304,
"content": "## Fill in this form to request a new article"
},
"typeVersion": 1
},
{
"id": "148a3000-ed6b-42a9-9c18-d7595cc1b754",
"name": "Consultar Linkup para obtener información",
"type": "n8n-nodes-base.httpRequest",
"position": [
608,
-672
],
"parameters": {
"url": "https://api.linkup.so/v1/search",
"method": "POST",
"options": {},
"sendBody": true,
"authentication": "genericCredentialType",
"bodyParameters": {
"parameters": [
{
"name": "q",
"value": "=Find 5 specific and meaningful insights about the topic:\n\n\"{{ $json.question }}\" \n\nthat would strengthen an article paragraph. Each insight should be a concrete finding, statistic, research result, or illustrative example (not just generic background), and should come from a robust source."
},
{
"name": "depth",
"value": "standard"
},
{
"name": "outputType",
"value": "structured"
},
{
"name": "structuredOutputSchema",
"value": "={\n \"type\": \"object\",\n \"properties\": {\n \"insights\": {\n \"description\": \"A list of 5 insights about the topic\",\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"insight\": {\n \"description\": \"A one-sentence key insight, finding, or example about the topic\",\n \"type\": \"string\"\n },\n \"url\": {\n \"description\": \"The URL of the source where the insight is from\",\n \"type\": \"string\"\n },\n \"title\": {\n \"description\": \"The title of the page containing the insight\",\n \"type\": \"string\"\n }\n },\n \"required\": [\"insight\", \"url\", \"title\"]\n }\n }\n }\n}"
},
{
"name": "fromDate",
"value": "={{ \n $now\n .minus($json['News from last x days'], 'days')\n .startOf('day')\n .toISO()\n}}"
},
{
"name": "includeImages",
"value": "false"
}
]
},
"genericAuthType": "httpBearerAuth"
},
"credentials": {
"httpBearerAuth": {
"id": "W7AgeoVOv60DlvyS",
"name": "Linkup - web search AI"
}
},
"typeVersion": 4.2
},
{
"id": "1af07cce-2414-4cfb-9320-099fe697e9ae",
"name": "Formatear pregunta e información",
"type": "n8n-nodes-base.set",
"position": [
960,
-464
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "1e33a1f4-a1a2-4962-ac72-cc518d7ff043",
"name": "Question",
"type": "string",
"value": "={{ $('Loop Over Questions').item.json.question }}"
},
{
"id": "903bcf38-13dd-48fb-8eb3-83f7a232aa53",
"name": "Insights",
"type": "array",
"value": "={{ $json.insights }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "7d217bf4-1209-4e0c-bdf8-0c4dce7b7f82",
"name": "Generar preguntas de investigación",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
-384,
-704
],
"parameters": {
"text": "=Content title: {{ $json.Title }}\n\nArticle guidelines: {{ $json.Guidelines }}\n\n",
"messages": {
"messageValues": [
{
"message": "=You will receive a content title and an angle. Return 3–5 non-overlapping questions in JSON array format that cover everything needed to write excellent content as it breaks down the topic into sub-questions.\n\nGuidelines: \n- Start with simple, short broad questions for example to define the terms (e.g., What is X?, Why is X important?, How to do X?). \n- Then move into more specific, advanced, or analytical questions. \n- Ensure questions together form a complete coverage of the topic. \n\n## Output format:\n\nYou'll return the questions in such a JSON ARRAY:\n\n[\n {\n \"question\": \"Lorem ipsum dolor sit amet, consectetur adipiscing elit?\"\n },\n {\n \"question\": \"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua?\"\n },\n {\n \"question\": \"Lorem ipsum dolor sit amet?\"\n },\n {\n \"question\": \"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua, ut enim ad minim veniam?\"\n },\n {\n \"question\": \"Lorem ipsum dolor sit amet, consectetur?\"\n }\n]"
}
]
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.5
},
{
"id": "083922d8-71ec-4f1f-9451-f5b18cbc0880",
"name": "Generar la salida de IA",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
784,
-1280
],
"parameters": {
"text": "=Article title:\n\n{{ $('Prepare form values').first().json.Title }}\n\nArticle guidelines:\n\n{{ $('Prepare form values').first().json.Guidelines }}\n\n\nInsighs to leverage:\n\nThis Q&Insights research provides high-quality insights, and sources for your content. Be sure to include source links in your output whenever a source was used.\n\n{{ JSON.stringify($json['Content to leverage'], null, 2) }}\n",
"messages": {
"messageValues": [
{
"message": "=# Role\n\nYour role is to write an article based on the request in the user message.\n\n# What the user message contains\n\nThe user message includes the article title, any guidelines to follow, and a comprehensive set of insights. These insights should be smoothly integrated within the article's content to fact-base it and ensure is qualitative through the leverage of multiple sources. \nInterate the source links smoothly as hyperlinks in the article.\n\n# How to write good articles\n\nYou excel at writing articles by making sure that they deliver value, are concise, seem like they are human-written, not using typical AI useless sentence formulations.\n\n# Your output format\n\nOutput only the full article.\n\n* Begin with a `# H1` title.\n* Use subheadings throughout the article."
}
]
},
"promptType": "define"
},
"typeVersion": 1.5
}
],
"connections": {
"924c6121-8fd7-413b-9a77-9b77054dd481": {
"ai_languageModel": [
[
{
"node": "083922d8-71ec-4f1f-9451-f5b18cbc0880",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"2b5dee40-df1b-41cb-8691-bf43158ff50e": {
"ai_languageModel": [
[
{
"node": "7d217bf4-1209-4e0c-bdf8-0c4dce7b7f82",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"954ed22b-db88-4708-82f8-63beed6317de": {
"main": [
[
{
"node": "4d44933f-1e99-46cf-919d-0942acb2ccb7",
"type": "main",
"index": 0
}
]
]
},
"39c18e8e-5d8f-4f54-9b0c-009fa3f4b966": {
"main": [
[
{
"node": "04528097-0fdb-432d-9847-5741eef25624",
"type": "main",
"index": 0
}
],
[
{
"node": "148a3000-ed6b-42a9-9c18-d7595cc1b754",
"type": "main",
"index": 0
}
]
]
},
"4d44933f-1e99-46cf-919d-0942acb2ccb7": {
"main": [
[
{
"node": "7d217bf4-1209-4e0c-bdf8-0c4dce7b7f82",
"type": "main",
"index": 0
}
]
]
},
"4e25660b-428e-416c-91a0-63cc04104196": {
"main": [
[
{
"node": "39c18e8e-5d8f-4f54-9b0c-009fa3f4b966",
"type": "main",
"index": 0
}
]
]
},
"083922d8-71ec-4f1f-9451-f5b18cbc0880": {
"main": [
[
{
"node": "a9f80b58-8767-49ce-a1b3-b310a39f40dc",
"type": "main",
"index": 0
}
]
]
},
"5553922c-69d4-4de7-8a07-a38c37238b50": {
"ai_outputParser": [
[
{
"node": "7d217bf4-1209-4e0c-bdf8-0c4dce7b7f82",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"148a3000-ed6b-42a9-9c18-d7595cc1b754": {
"main": [
[
{
"node": "1af07cce-2414-4cfb-9320-099fe697e9ae",
"type": "main",
"index": 0
}
]
]
},
"04528097-0fdb-432d-9847-5741eef25624": {
"main": [
[
{
"node": "083922d8-71ec-4f1f-9451-f5b18cbc0880",
"type": "main",
"index": 0
}
]
]
},
"7d217bf4-1209-4e0c-bdf8-0c4dce7b7f82": {
"main": [
[
{
"node": "4e25660b-428e-416c-91a0-63cc04104196",
"type": "main",
"index": 0
}
]
]
},
"1af07cce-2414-4cfb-9320-099fe697e9ae": {
"main": [
[
{
"node": "39c18e8e-5d8f-4f54-9b0c-009fa3f4b966",
"type": "main",
"index": 0
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Avanzado - Creación de contenido, Varios, RAG de IA, IA Multimodal
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Compartir este flujo de trabajo