Asistente de investigación IA usando Jina y Gemini

Avanzado

Este es unContent Creation, AI RAGflujo de automatización del dominio deautomatización que contiene 25 nodos.Utiliza principalmente nodos como Code, Wait, JinaAi, SplitInBatches, Agent. Usar Jina AI y Gemini 2.5 Flash para crear informes de investigación integrales

Requisitos previos
  • Clave de API de Google Gemini
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "id": "v9dRFBMYVwnQUhii",
  "meta": {
    "instanceId": "d06afcec45b6881aa3c2bd3e34579ea44e46952db235308e9371e2bb743e4b43",
    "templateCredsSetupCompleted": true
  },
  "name": "AI Research Assistant with Jina & Gemini",
  "tags": [],
  "nodes": [
    {
      "id": "43de71f4-db4d-41aa-8294-abf2e0e984c8",
      "name": "Buscar en la web",
      "type": "n8n-nodes-base.jinaAi",
      "position": [
        20,
        40
      ],
      "parameters": {
        "options": {
          "outputFormat": ""
        },
        "operation": "search",
        "searchQuery": "={{ $json.chatInput }}",
        "requestOptions": {}
      },
      "credentials": {
        "jinaAiApi": {
          "id": "5ZbnfpUHVYg1i658",
          "name": "Jina AI account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "8126e0ee-8472-4f1f-8921-1e2aded6682e",
      "name": "Cuando se recibe un mensaje en el chat",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        -300,
        40
      ],
      "webhookId": "19764858-2825-4532-98ce-8fc538cf9ed0",
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.1
    },
    {
      "id": "0c414f7e-d927-4a6b-a45c-412676d99986",
      "name": "Iterar sobre elementos",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        700,
        40
      ],
      "parameters": {
        "options": {
          "reset": false
        }
      },
      "typeVersion": 3
    },
    {
      "id": "0a8274f0-7ef4-4305-a3e7-81b34cd07ddc",
      "name": "Código",
      "type": "n8n-nodes-base.code",
      "position": [
        340,
        40
      ],
      "parameters": {
        "language": "python",
        "pythonCode": "extracted_urls = []\n\nfor item in _input.all():\n    original_json = item.json\n\n    if 'url' in original_json:\n        extracted_urls.append({'url': original_json['url']})\n      \nreturn extracted_urls"
      },
      "typeVersion": 2
    },
    {
      "id": "540cae13-9d70-47b5-9be4-902abc7d6391",
      "name": "Leer contenido de URL",
      "type": "n8n-nodes-base.jinaAi",
      "position": [
        1040,
        200
      ],
      "parameters": {
        "url": "={{ $json.url }}",
        "options": {},
        "requestOptions": {}
      },
      "credentials": {
        "jinaAiApi": {
          "id": "5ZbnfpUHVYg1i658",
          "name": "Jina AI account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "e282b54c-4230-449b-ab7c-96f0566e81f2",
      "name": "Esperar",
      "type": "n8n-nodes-base.wait",
      "position": [
        1980,
        180
      ],
      "webhookId": "d584a477-75aa-4d75-aa1b-0ef3c630f8cc",
      "parameters": {
        "amount": 1
      },
      "typeVersion": 1.1
    },
    {
      "id": "37c6d91d-526e-4c9a-a1f3-4bbba63740bd",
      "name": "Salida estructurada",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        1640,
        340
      ],
      "parameters": {
        "jsonSchemaExample": "{\n\t\"source_url\": \"...\",\n\t\"summarized_content\": \"...\"\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "ef58119f-ab0e-4c99-a83d-d2a0dbc0ba17",
      "name": "Transformar",
      "type": "n8n-nodes-base.code",
      "position": [
        1060,
        -180
      ],
      "parameters": {
        "language": "python",
        "pythonCode": "all_outputs = []\nfor item in _input.all():\n    current_item_data = item.json\n\n    # Safely get the 'url' from the current item's data\n    output = current_item_data.get('output')\n\n    # Append the URL to the list if it exists\n    if output:\n        all_outputs.append(output)\n\n# Create the final single dictionary with all URLs under the \"urls\" key\nfinal_output_dict = {\n    \"output\": all_outputs\n}\n\n# Return the final dictionary as a single n8n item\nreturn [{'json': final_output_dict}]"
      },
      "typeVersion": 2
    },
    {
      "id": "154f148c-2f33-4d1d-afe2-2b75adfa16c5",
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -420,
        -160
      ],
      "parameters": {
        "width": 340,
        "height": 380,
        "content": "## User query\n"
      },
      "typeVersion": 1
    },
    {
      "id": "0bb609ef-222d-4cc6-8ffd-0145cea615f3",
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        -160
      ],
      "parameters": {
        "color": 7,
        "width": 260,
        "height": 380,
        "content": "## Search web\n\n**Purpose:** Web search using Jina AI based on chat input.\n**Input:** Chat message.\n**Note:** Requires Jina AI API key."
      },
      "typeVersion": 1
    },
    {
      "id": "01ee087c-e26c-4b8f-9f3f-9598d0cd83d3",
      "name": "Nota adhesiva2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        220,
        -160
      ],
      "parameters": {
        "color": 2,
        "width": 320,
        "height": 380,
        "content": "## Code (URL Transform)\n\n**Purpose:** Custom JavaScript code to process/transform URLs, likely preparing them for the loop.\n**Input:** Raw URLs from \"Search web\".\n**Output:** Formatted URLs suitable for \"Loop over Items\"."
      },
      "typeVersion": 1
    },
    {
      "id": "76f010e5-fc84-4066-a39a-7dd870ff9345",
      "name": "Nota adhesiva3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        560,
        -160
      ],
      "parameters": {
        "color": 6,
        "width": 380,
        "height": 380,
        "content": "## Loop over all URLs\n\n**Purpose:** Iterates over each URL provided by the \"Code\" node.\n**Function:** Processes each URL individually for content gathering and summarization.\n**Note:** Essential for handling multiple search results."
      },
      "typeVersion": 1
    },
    {
      "id": "6cdc7a5f-b488-4b72-a0da-9351c7478ea1",
      "name": "Nota adhesiva4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        960,
        100
      ],
      "parameters": {
        "color": 3,
        "width": 260,
        "height": 480,
        "content": "## Read URL Content\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n**Purpose:** Fetches the full content of each URL provided by the loop.\n**Input:** Individual URLs from \"Loop over Items\".\n**Output:** Raw web page content.\n**Note:** Essential for summarization."
      },
      "typeVersion": 1
    },
    {
      "id": "0d3c40cd-733b-4508-adc6-e34171e48ef1",
      "name": "Nota adhesiva5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1240,
        100
      ],
      "parameters": {
        "color": 5,
        "width": 600,
        "height": 480,
        "content": "## Summarize Gathered content\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n**Purpose:** AI agent to summarize web page content.\n**Input:** Web content & user query.\n**Output:** Summarized content.\n**Note:** Uses \"Summarizer Model\"."
      },
      "typeVersion": 1
    },
    {
      "id": "30e03e88-16a5-4a77-bf19-74488042d88f",
      "name": "Nota adhesiva6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1860,
        100
      ],
      "parameters": {
        "color": 4,
        "width": 340,
        "height": 480,
        "content": "## Avoid rate limits\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n**Purpose:** Introduces a pause to prevent hitting API rate limits.\n**Configuration:** Adjust delay time (e.g., 1000ms) based on API limits.\n**Tip:** Crucial for stable, long-running processes."
      },
      "typeVersion": 1
    },
    {
      "id": "52fd4d1c-63b6-44f0-b43f-30f092eadf7f",
      "name": "Nota adhesiva7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        960,
        -480
      ],
      "parameters": {
        "width": 300,
        "height": 480,
        "content": "## Transform (Summaries Aggregator)\n\n**Purpose:** Python code to consolidate all individual summarized outputs into a single list.\n**Input:** Multiple summaries.\n**Output:** One item with `{\"output\": [all_summaries]}`.\n**Key:** Prepares data for research report generation."
      },
      "typeVersion": 1
    },
    {
      "id": "1572a6bd-ed9b-4461-9167-4b1d98bfc878",
      "name": "Nota adhesiva8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1280,
        -480
      ],
      "parameters": {
        "color": 7,
        "width": 480,
        "height": 480,
        "content": "## Generate research Report\n\n**Purpose:** AI Agent to orchestrate research report generation.\n**Input:** Summarized data from \"Transform summarized data\".\n**Function:** Guides the \"Generator Model\" to create the report."
      },
      "typeVersion": 1
    },
    {
      "id": "f35efe92-7181-4283-8b93-858b807b1b40",
      "name": "Nota adhesiva9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1780,
        -480
      ],
      "parameters": {
        "width": 500,
        "height": 480,
        "content": "## Evaluate and Generate Final Report\n\n**Purpose:** AI Chain to evaluate and refine the generated report.\n**Input:** Research report from \"Generator Agent\".\n**Function:** Uses \"Evaluator Model\" to assess and improve output quality."
      },
      "typeVersion": 1
    },
    {
      "id": "d6d4b224-dd71-4bf7-be6f-b804002d48ac",
      "name": "Agente de resumen",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1420,
        180
      ],
      "parameters": {
        "text": "=Summarize this information:\n\nSource url: {{ $json.url }}\nTitle of the page: {{ $json.title }}\nDescription: {{ $json.description }}\nContent: {{ $json.content }}\n\nInitial User query: {{ $('When chat message received').item.json.chatInput }}",
        "options": {},
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 2
    },
    {
      "id": "ef2cf6a3-3ea5-4874-898f-25ebc56997f1",
      "name": "Modelo de resumen",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        1380,
        340
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemini-2.5-flash"
      },
      "credentials": {
        "googlePalmApi": {
          "id": "ngL4RI02lM8v6drj",
          "name": "Google Gemini API"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "4d26eb57-9e13-45e9-b365-c531189b0030",
      "name": "Modelo generador",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        1340,
        -120
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemini-2.5-flash"
      },
      "credentials": {
        "googlePalmApi": {
          "id": "ngL4RI02lM8v6drj",
          "name": "Google Gemini API"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "bc46ca58-24a6-4942-86e2-1c4c4df46c45",
      "name": "Agente generador",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1380,
        -320
      ],
      "parameters": {
        "text": "=## System Instructions\n\nYou are a specialized research AI agent designed to synthesize information from multiple sources and produce comprehensive, well-cited research documents. Your primary function is to analyze provided source URLs and their summarized contents to generate detailed research reports with proper inline citations.\n\n## Input \n\nInput with source_url and their summary : {\n\"1\": {\n    \"source_url\": {{ $json.output[0].source_url }},\n    \"summarized_content\": {{ $json.output[0].summarized_content }}\n  },\n\"2\": {\n    \"source_url\": {{ $json.output[1].source_url }},\n    \"summarized_content\": {{ $json.output[1].summarized_content }}\n  },\n\"3\": {\n    \"source_url\": {{ $json.output[2] }},\n    \"summarized_content\": {{ $json.output[2].summarized_content }}\n  },\n\"4\": {\n    \"source_url\": {{ $json.output[3].source_url }},\n    \"summarized_content\": {{ $json.output[3].summarized_content }}\n  },\n\"5\": {\n    \"source_url\": {{ $json.output[4].source_url }},\n    \"summarized_content\": {{ $json.output[4].summarized_content }}\n  },\n\"6\": {\n    \"source_url\": {{ $json.output[5].source_url }},\n    \"summarized_content\": {{ $json.output[5].summarized_content }}\n  },\n\"7\": {\n    \"source_url\": {{ $json.output[6].source_url }},\n    \"summarized_content\": {{ $json.output[6].summarized_content }}\n  },\n\"8\": {\n    \"source_url\": {{ $json.output[7].source_url }},\n    \"summarized_content\": {{ $json.output[7].summarized_content }}\n  },\n\"9\": {\n    \"source_url\": {{ $json.output[8].source_url }},\n    \"summarized_content\": {{ $json.output[8].summarized_content }}\n  },\n\"10\": {\n    \"source_url\": {{ $json.output[9].source_url }},\n    \"summarized_content\": {{ $json.output[9].summarized_content }}\n  }\n} \n\n\n## Research Generation Instructions\n\n### 1. Source Analysis Phase\n- **Evaluate Source Credibility**: Assess the reliability and authority of each source\n- **Identify Themes**: Extract common themes, patterns, and contradictions across sources\n- **Chronological Analysis**: When applicable, organize information chronologically\n- **Perspective Mapping**: Identify different viewpoints and biases in the sources\n\n### 2. Research Structure Requirements\n\n#### A. Executive Summary (100-200 words)\n- Concise overview of key findings\n- Main thesis or conclusion\n- Scope and limitations of the research\n\n#### B. Introduction\n- Context and background of the research topic\n- Research question and objectives\n- Methodology overview\n- Source overview and selection criteria\n\n#### C. Literature Review/Source Analysis\n- Systematic review of all provided sources\n- Comparison of different perspectives\n- Identification of knowledge gaps\n- Assessment of source quality and reliability\n\n#### D. Main Research Body\nOrganize into logical sections based on:\n- **Thematic Analysis**: Group findings by theme\n- **Comparative Analysis**: Compare different viewpoints\n- **Trend Analysis**: Identify patterns over time\n- **Case Studies**: Detailed examination of specific examples\n\n#### E. Synthesis and Discussion\n- Integration of findings from all sources\n- Critical analysis of contradictions or agreements\n- Implications of the research\n- Areas for further investigation\n\n#### F. Conclusions\n- Summary of main findings\n- Answer to the research question\n- Limitations and caveats\n- Recommendations (if applicable)\n\n#### G. References\n- Complete list of all sources used\n- Organized alphabetically or by relevance\n\n### 3. Citation Requirements\n\n#### Inline Citation Format:\nUse the following format for inline citations:\n- **Single source**: `[Source Title, URL]`\n- **Multiple sources**: `[Source1 Title, URL1; Source2 Title, URL2]`\n- **Specific quote**: `\"Direct quote\" [Source Title, URL]`\n- **Paraphrase**: `Paraphrased information [Source Title, URL]`\n\n#### Citation Best Practices:\n- Cite every factual claim that comes from the sources\n- Use citations after each major point or statistic\n- Maintain citation density of approximately 1-3 citations per paragraph\n- Ensure all sources are cited at least once\n- Use descriptive link text when possible\n\n### 4. Quality Standards\n\n#### Research Depth Requirements:\n- **Surface**: Basic overview with key points and conclusions\n- **Moderate**: Detailed analysis with multiple perspectives and comparisons\n- **Deep**: Comprehensive examination with critical analysis, synthesis, and original insights\n\n#### Writing Quality:\n- Clear, professional academic tone\n- Logical flow and structure\n- Proper grammar and syntax\n- Objective presentation with balanced viewpoints\n- Evidence-based conclusions\n\n#### Factual Accuracy:\n- All claims must be supported by provided sources\n- Clearly distinguish between facts and interpretations\n- Note any contradictions between sources\n- Avoid speculation beyond what sources support\n\n## Output Format Requirements\n\n### Document Structure:\n```markdown\n# Research Title\n\n## Executive Summary\n[Content with citations]\n\n## Table of Contents\n[If document is long enough]\n\n## 1. Introduction\n[Content with citations]\n\n## 2. Literature Review\n[Content with citations]\n\n## 3. [Main Research Sections]\n[Content with citations]\n\n## 4. Discussion and Synthesis\n[Content with citations]\n\n## 5. Conclusions\n[Content with citations]\n\n## References\n[Complete source list]\n```\n\n### Formatting Guidelines:\n- Use markdown formatting for headers, emphasis, and structure\n- Include relevant data tables or bullet points when appropriate\n- Maintain professional academic formatting\n- Ensure readability with proper spacing and organization\n\n## Special Instructions\n\n### Handling Conflicting Information:\n- Acknowledge contradictions explicitly\n- Present multiple viewpoints fairly\n- Assess credibility of conflicting sources\n- Avoid taking sides unless evidence strongly supports one view\n\n### Source Integration:\n- Weave citations naturally into the narrative\n- Avoid over-reliance on any single source\n- Balance direct quotes with paraphrasing\n- Ensure smooth transitions between different sources\n\n### Critical Analysis:\n- Question assumptions and methodologies\n- Identify potential biases in sources\n- Assess the strength of evidence presented\n- Consider alternative explanations or interpretations\n\n## Error Handling\n\n### Insufficient Sources:\n- Note when more sources would strengthen the research\n- Identify knowledge gaps clearly\n- Suggest areas for additional investigation\n\n### Contradictory Information:\n- Present all viewpoints transparently\n- Analyze reasons for contradictions\n- Assess which sources are most reliable\n- Provide balanced interpretation\n\n### Missing Information:\n- Clearly state limitations of available sources\n- Avoid speculation beyond source material\n- Suggest what additional information would be valuable\n\n## Final Checklist\n\nBefore completing the research document, ensure:\n- [ ] All provided sources are cited at least once\n- [ ] Every major claim is properly cited\n- [ ] Citations are formatted consistently\n- [ ] Document follows the required structure\n- [ ] Writing is clear and professional\n- [ ] Conclusions are supported by evidence\n- [ ] Source URLs are included and functional\n- [ ] Research question is adequately addressed\n- [ ] Target audience and depth requirements are met\n\n## Example Usage\n\nTo use this schema, provide input in the specified JSON format, and the AI agent will generate a comprehensive research document following all guidelines above, with proper inline citations linking back to your source URLs.",
        "options": {},
        "promptType": "define"
      },
      "typeVersion": 2
    },
    {
      "id": "bb051d77-8911-4f09-8626-b5e4f72ee5db",
      "name": "Cadena de evaluación",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        1900,
        -320
      ],
      "parameters": {
        "text": "=# Citation Verification & Report Refinement AI Agent Prompt\n\n## System Instructions\n\nYou are a specialized AI agent designed to process and refine research reports generated by another AI system. Your primary function is to verify citation accuracy, ensure proper markdown formatting, and produce a polished final research document. You receive the raw output from a research generation agent and must transform it into a publication-ready report.\n\n## Input Schema\n\n### Expected Input Format:\n```json\n[\n  {\n    \"output\": \"{{ $json.output }}\"\n  }\n]\n```\n\n## Core Responsibilities\n\n### 1. Citation Verification and Correction\n- **Extract and Validate Citations**: Identify all inline citations in the format `[Source Title, URL]`\n- **Check Citation Accuracy**: Verify that each citation corresponds to actual content claims\n- **Identify Missing Citations**: Flag claims that need citations but lack them\n- **Remove Redundant Citations**: Eliminate unnecessary duplicate citations within the same paragraph\n- **Standardize Citation Format**: Ensure consistent citation formatting throughout the document\n\n### 2. Content Quality Assurance\n- **Fact Consistency**: Ensure all claims are supported by the cited sources\n- **Logical Flow**: Verify that the document structure follows a logical progression\n- **Content Completeness**: Check that all sections are properly developed\n- **Remove Contradictions**: Identify and resolve any conflicting statements\n\n### 3. Markdown Formatting Optimization\n- **Header Hierarchy**: Ensure proper H1, H2, H3, H4 structure\n- **List Formatting**: Convert any improperly formatted lists to proper markdown\n- **Emphasis and Styling**: Apply appropriate **bold**, *italic*, and `code` formatting\n- **Link Formatting**: Ensure all URLs are properly formatted as markdown links\n- **Table Formatting**: If tables are present, ensure proper markdown table syntax\n- **Line Spacing**: Maintain proper spacing between sections and paragraphs\n\n### 4. Professional Report Structure\nEnsure the final output follows this structure:\n\n```markdown\n# [Research Title]\n\n## Executive Summary\n[Concise overview with key findings and citations]\n\n## Table of Contents\n[If document length warrants it]\n\n## 1. Introduction\n[Context, objectives, methodology with citations]\n\n## 2. Literature Review  \n[Source analysis and comparative review with citations]\n\n## 3. [Main Content Sections]\n[Organized thematic analysis with citations]\n\n## 4. Discussion and Synthesis\n[Critical analysis and integration with citations]\n\n## 5. Conclusions\n[Key findings, limitations, recommendations with citations]\n\n## References\n[Complete alphabetized source list]\n```\n\n## Citation Processing Rules\n\n### Citation Format Standards:\n- **Inline Citation**: `[Source Title](URL)` or `[Source Title, URL]`\n- **Multiple Sources**: `[Source1 Title](URL1); [Source2 Title](URL2)`\n- **Direct Quotes**: `\"Quote text\" [Source Title](URL)`\n- **Page-Specific**: `[Source Title, URL, p. X]` (if page numbers available)\n\n### Citation Quality Checks:\n1. **Relevance**: Each citation must directly support the claim it follows\n2. **Accessibility**: All URLs must be valid and accessible\n3. **Source Diversity**: Ensure citations are distributed across multiple sources\n4. **Citation Density**: Maintain 1-3 citations per substantial paragraph\n5. **Authority**: Prioritize authoritative and credible sources\n\n### Citation Correction Actions:\n- **Move Misplaced Citations**: Relocate citations to appropriate claims\n- **Add Missing Citations**: Insert citations for unsupported claims\n- **Merge Duplicate Citations**: Combine redundant citations in close proximity\n- **Fix Broken Citations**: Correct malformed citation syntax\n- **Enhance Citation Context**: Add brief context for obscure source titles\n\n## Content Refinement Guidelines\n\n### Writing Quality Improvements:\n- **Academic Tone**: Maintain professional, objective language\n- **Clarity**: Simplify complex sentences while preserving meaning\n- **Transitions**: Add smooth transitions between sections and paragraphs\n- **Conciseness**: Remove redundant phrases and unnecessary repetition\n- **Precision**: Use specific, accurate terminology\n\n### Structural Enhancements:\n- **Section Balance**: Ensure proportionate section lengths\n- **Paragraph Structure**: Maintain topic sentences and supporting details\n- **Logical Progression**: Order information from general to specific\n- **Cross-References**: Add internal references where appropriate\n\n### Data Presentation:\n- **Statistics**: Format numbers and percentages consistently\n- **Examples**: Ensure examples directly illustrate the points made\n- **Comparisons**: Present comparative information clearly\n- **Technical Terms**: Define or contextualize specialized terminology\n\n## Quality Assurance Checklist\n\nBefore finalizing the report, verify:\n\n### Citation Standards:\n- [ ] All factual claims are properly cited\n- [ ] Citation format is consistent throughout\n- [ ] All URLs are functional and properly formatted\n- [ ] No orphaned or misplaced citations exist\n- [ ] Reference list matches inline citations\n\n### Content Quality:\n- [ ] Executive summary accurately reflects main findings\n- [ ] Introduction clearly states objectives and methodology\n- [ ] Main sections follow logical progression\n- [ ] Discussion synthesizes findings effectively\n- [ ] Conclusions are supported by evidence\n- [ ] No contradictory statements exist\n\n### Format Standards:\n- [ ] Proper markdown syntax throughout\n- [ ] Consistent header hierarchy\n- [ ] Proper list formatting\n- [ ] Appropriate emphasis and styling\n- [ ] Professional document structure\n- [ ] Proper line spacing and paragraph breaks\n\n### Professional Presentation:\n- [ ] Academic tone maintained throughout\n- [ ] Clear, concise writing style\n- [ ] Appropriate technical depth for audience\n- [ ] Error-free grammar and spelling\n- [ ] Consistent terminology usage\n\n## Error Handling Protocols\n\n### Missing or Invalid Citations:\n- Flag unsupported claims clearly\n- Suggest where citations should be added\n- Note if source verification is needed\n- Maintain content integrity while highlighting issues\n\n### Structural Problems:\n- Reorganize content for better flow\n- Add missing section headers\n- Balance section lengths appropriately\n- Ensure logical argument progression\n\n### Formatting Issues:\n- Convert all content to proper markdown\n- Fix header hierarchy problems\n- Standardize list and emphasis formatting\n- Ensure consistent style throughout\n\n## Output Requirements\n\n### Final Document Must Include:\n1. **Complete Research Report** in proper markdown format\n2. **Citation Verification Summary** noting any issues found\n3. **Improvement Log** documenting changes made\n4. **Quality Assurance Report** confirming standards met\n\n### Output Format:\n```markdown\n# [RESEARCH TITLE]\n\n[Complete refined research document]\n\n---\n\n## Citation Verification Summary\n- Total citations processed: X\n- Citations corrected: X\n- Missing citations flagged: X\n- Duplicate citations merged: X\n\n## Improvement Log\n- Structural changes made\n- Content refinements applied\n- Formatting corrections implemented\n- Citation improvements completed\n\n## Quality Assurance Confirmation\n✓ All citations verified and properly formatted\n✓ Content structure optimized\n✓ Markdown formatting standardized\n✓ Professional presentation achieved\n```\n\n## Special Instructions\n\n### When Processing Input:\n1. **Extract the complete research content** from the JSON structure\n2. **Parse all existing citations** and create a reference database\n3. **Analyze content structure** and identify improvement opportunities\n4. **Apply systematic refinements** following the guidelines above\n5. **Generate comprehensive output** including verification summaries\n\n### Priority Actions:\n- Ensure every factual claim has appropriate citation support\n- Maintain the original research content and conclusions\n- Enhance readability without changing meaning\n- Create a publication-ready final document\n- Provide transparent documentation of all changes made\n\n### Final Validation:\nBefore output, confirm that the refined report maintains the original research integrity while significantly improving citation accuracy, structural organization, and professional presentation standards.",
        "batching": {},
        "promptType": "define"
      },
      "typeVersion": 1.7
    },
    {
      "id": "05fbd517-84e6-4ee9-be45-805271ff0b6a",
      "name": "Modelo de evaluación",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        1920,
        -120
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemini-2.5-flash"
      },
      "credentials": {
        "googlePalmApi": {
          "id": "ngL4RI02lM8v6drj",
          "name": "Google Gemini API"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "75a0f8dd-c2b8-462d-9eec-6f73710180b5",
      "name": "Nota adhesiva10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -960,
        -160
      ],
      "parameters": {
        "color": 5,
        "width": 520,
        "height": 380,
        "content": "# JInaAI Workflow Overview\n\nThis workflow intelligently processes incoming chat messages by performing a web search using Jina AI and then leverages Gemini 2.5 Flash to generate and evaluate responses.\n\n**How to Use:**\n* Send a chat message to the configured webhook for the \"When chat message received\" node.\n* The workflow will automatically search the web and generate an AI-powered response.\n\n**Expected Output:**\n* An AI-generated response, potentially incorporating information from web searches."
      },
      "typeVersion": 1
    }
  ],
  "active": true,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "1ddbd2df-251b-407c-8f5d-06e59affcd56",
  "connections": {
    "0a8274f0-7ef4-4305-a3e7-81b34cd07ddc": {
      "main": [
        [
          {
            "node": "0c414f7e-d927-4a6b-a45c-412676d99986",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e282b54c-4230-449b-ab7c-96f0566e81f2": {
      "main": [
        [
          {
            "node": "0c414f7e-d927-4a6b-a45c-412676d99986",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ef58119f-ab0e-4c99-a83d-d2a0dbc0ba17": {
      "main": [
        [
          {
            "node": "bc46ca58-24a6-4942-86e2-1c4c4df46c45",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "43de71f4-db4d-41aa-8294-abf2e0e984c8": {
      "main": [
        [
          {
            "node": "0a8274f0-7ef4-4305-a3e7-81b34cd07ddc",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "05fbd517-84e6-4ee9-be45-805271ff0b6a": {
      "ai_languageModel": [
        [
          {
            "node": "bb051d77-8911-4f09-8626-b5e4f72ee5db",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "bc46ca58-24a6-4942-86e2-1c4c4df46c45": {
      "main": [
        [
          {
            "node": "bb051d77-8911-4f09-8626-b5e4f72ee5db",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4d26eb57-9e13-45e9-b365-c531189b0030": {
      "ai_languageModel": [
        [
          {
            "node": "bc46ca58-24a6-4942-86e2-1c4c4df46c45",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "0c414f7e-d927-4a6b-a45c-412676d99986": {
      "main": [
        [
          {
            "node": "ef58119f-ab0e-4c99-a83d-d2a0dbc0ba17",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "540cae13-9d70-47b5-9be4-902abc7d6391",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "540cae13-9d70-47b5-9be4-902abc7d6391": {
      "main": [
        [
          {
            "node": "d6d4b224-dd71-4bf7-be6f-b804002d48ac",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d6d4b224-dd71-4bf7-be6f-b804002d48ac": {
      "main": [
        [
          {
            "node": "e282b54c-4230-449b-ab7c-96f0566e81f2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ef2cf6a3-3ea5-4874-898f-25ebc56997f1": {
      "ai_languageModel": [
        [
          {
            "node": "d6d4b224-dd71-4bf7-be6f-b804002d48ac",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "37c6d91d-526e-4c9a-a1f3-4bbba63740bd": {
      "ai_outputParser": [
        [
          {
            "node": "d6d4b224-dd71-4bf7-be6f-b804002d48ac",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "8126e0ee-8472-4f1f-8921-1e2aded6682e": {
      "main": [
        [
          {
            "node": "43de71f4-db4d-41aa-8294-abf2e0e984c8",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿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, RAG de IA

¿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.

Información del flujo de trabajo
Nivel de dificultad
Avanzado
Número de nodos25
Categoría2
Tipos de nodos10
Descripción de la dificultad

Adecuado para usuarios avanzados, flujos de trabajo complejos con 16+ nodos

Autor
AppStoneLab Technologies LLP

AppStoneLab Technologies LLP

@appstonelab

Dive into the digital era with a trusted partner. From idea to execution, we transform visions into interactive realities. Let's shape the future, together.

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34