This workflow follows the Agent → Chainllm recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"active": false,
"connections": {
"When chat message received": {
"main": [
[
{
"node": "Researcher-Agent",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model4": {
"ai_languageModel": [
[
{
"node": "Hypothesis",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Hypothesis": {
"main": [
[
{
"node": "Feedback",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model1": {
"ai_languageModel": [
[
{
"node": "Feedback",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"OpenAI Chat Model5": {
"ai_languageModel": [
[
{
"node": "Hypothesis- \u00dcberarbeitet",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Feedback": {
"main": [
[
{
"node": "Hypothesis- \u00dcberarbeitet",
"type": "main",
"index": 0
}
]
]
},
"Hypothesis- \u00dcberarbeitet": {
"main": [
[
{
"node": "Szenarien",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model2": {
"ai_languageModel": [
[
{
"node": "Szenarien",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Switch": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
},
{
"node": "Brian2",
"type": "main",
"index": 0
}
],
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
},
{
"node": "The Virtual Brain",
"type": "main",
"index": 0
}
],
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"Loop Over Items": {
"main": [
[
{
"node": "No Operation, do nothing",
"type": "main",
"index": 0
}
],
[
{
"node": "Switch",
"type": "main",
"index": 0
}
]
]
},
"Splitter": {
"main": [
[
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
]
]
},
"Brian2": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 0
},
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
],
[
{
"node": "Execute Workflow1",
"type": "main",
"index": 0
}
]
]
},
"Replace Me2": {
"main": [
[
{
"node": "Nest",
"type": "main",
"index": 0
}
]
]
},
"The Virtual Brain": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 1
},
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
],
[
{
"node": "Execute Workflow",
"type": "main",
"index": 0
}
]
]
},
"Nest": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 2
},
{
"node": "Loop Over Items",
"type": "main",
"index": 0
}
],
[
{
"node": "Replace Me2",
"type": "main",
"index": 0
}
]
]
},
"Execute Workflow1": {
"main": [
[
{
"node": "Brian2",
"type": "main",
"index": 0
}
]
]
},
"Merge": {
"main": [
[
{
"node": "Aggregate",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model3": {
"ai_languageModel": [
[
{
"node": "Datenauswertung",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Datenauswertung": {
"main": [
[]
]
},
"OpenAI Chat Model6": {
"ai_languageModel": [
[
{
"node": "Decision",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Decision": {
"main": [
[
{
"node": "If",
"type": "main",
"index": 0
}
]
]
},
"Hypothesis1": {
"main": [
[
{
"node": "Feedback1",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model7": {
"ai_languageModel": [
[
{
"node": "Hypothesis1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Feedback1": {
"main": [
[
{
"node": "Hypothesis- \u00dcberarbeitet1",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model8": {
"ai_languageModel": [
[
{
"node": "Feedback1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"OpenAI Chat Model9": {
"ai_languageModel": [
[
{
"node": "Hypothesis- \u00dcberarbeitet1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Hypothesis- \u00dcberarbeitet1": {
"main": [
[
{
"node": "Sub-Task1",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model10": {
"ai_languageModel": [
[
{
"node": "Sub-Task1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Sub-Task1": {
"main": [
[
{
"node": "Splitter1",
"type": "main",
"index": 0
}
]
]
},
"Switch1": {
"main": [
[
{
"node": "Loop Over Items1",
"type": "main",
"index": 0
},
{
"node": "Brian",
"type": "main",
"index": 0
}
],
[
{
"node": "Loop Over Items1",
"type": "main",
"index": 0
},
{
"node": "The Virtual Brain1",
"type": "main",
"index": 0
}
],
[
{
"node": "Loop Over Items1",
"type": "main",
"index": 0
},
{
"node": "Nest1",
"type": "main",
"index": 0
}
]
]
},
"Loop Over Items1": {
"main": [
[
{
"node": "No Operation, do nothing1",
"type": "main",
"index": 0
}
],
[
{
"node": "Switch1",
"type": "main",
"index": 0
}
]
]
},
"Splitter1": {
"main": [
[
{
"node": "Loop Over Items1",
"type": "main",
"index": 0
}
]
]
},
"Brian": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 0
}
],
[
{
"node": "Execute Workflow3",
"type": "main",
"index": 0
}
]
]
},
"Replace Me": {
"main": [
[
{
"node": "Nest1",
"type": "main",
"index": 0
}
]
]
},
"The Virtual Brain1": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 1
}
],
[
{
"node": "Execute Workflow2",
"type": "main",
"index": 0
}
]
]
},
"Nest1": {
"main": [
[
{
"node": "Merge1",
"type": "main",
"index": 2
}
],
[
{
"node": "Replace Me",
"type": "main",
"index": 0
}
]
]
},
"Execute Workflow2": {
"main": [
[
{
"node": "The Virtual Brain1",
"type": "main",
"index": 0
}
]
]
},
"Execute Workflow3": {
"main": [
[
{
"node": "Brian",
"type": "main",
"index": 0
}
]
]
},
"Merge1": {
"main": [
[
{
"node": "Datenaufbereitung1",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model11": {
"ai_languageModel": [
[
{
"node": "Datenaufbereitung1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"OpenAI Chat Model12": {
"ai_languageModel": [
[
{
"node": "Datenauswertung1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Datenauswertung1": {
"main": [
[
{
"node": "Decision1",
"type": "main",
"index": 0
}
]
]
},
"Datenaufbereitung1": {
"main": [
[
{
"node": "Datenauswertung1",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model13": {
"ai_languageModel": [
[
{
"node": "Decision1",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"If": {
"main": [
[
{
"node": "Hypothesis1",
"type": "main",
"index": 0
}
],
[
{
"node": "Execute Workflow4",
"type": "main",
"index": 0
}
]
]
},
"Szenarien": {
"main": [
[
{
"node": "Splitter",
"type": "main",
"index": 0
}
]
]
},
"Execute Workflow": {
"main": [
[
{
"node": "The Virtual Brain",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model14": {
"ai_languageModel": [
[
{
"node": "Entscheider",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"If1": {
"main": [
[],
[
{
"node": "Hypothesis",
"type": "main",
"index": 0
}
]
]
},
"Entscheider": {
"main": [
[
{
"node": "If1",
"type": "main",
"index": 0
}
]
]
},
"Researcher-Agent": {
"main": [
[
{
"node": "Entscheider",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Research2",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Research-Agent": {
"ai_tool": [
[
{
"node": "Research2",
"type": "ai_tool",
"index": 0
}
]
]
},
"Aggregate": {
"main": [
[
{
"node": "Research2",
"type": "main",
"index": 0
}
]
]
},
"Research2": {
"main": [
[
{
"node": "Datenauswertung",
"type": "main",
"index": 0
}
]
]
}
},
"createdAt": "2025-01-25T09:06:59.816Z",
"id": "2ZEkgNaUxdL6ewJ2",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Forscher_Workflow",
"nodes": [
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"typeVersion": 1.1,
"position": [
-400,
20
],
"id": "fe22c0c0-80b6-4eb7-a2be-07c0dd8efb45",
"name": "When chat message received"
},
{
"parameters": {
"promptType": "define",
"text": "=Rolle: Du bist ein interdisziplin\u00e4rer Wissenschaftler mit Expertise in Neurowissenschaften und neuronalen Dynamiken. Deine Aufgabe ist es, neuartige, \u00fcberpr\u00fcfbare und relevante Hypothesen zu entwickeln, die ausschlie\u00dflich neuronale Prozesse und Dynamiken im Gehirn beschreiben und durch simulationsbasierte Experimente validiert werden k\u00f6nnen.\n\nZiel: Entwickle eine neurowissenschaftliche Hypothese, die:\n\nAuf die gegebene Fragestellung eingeht.\nKonkrete neuronale Mechanismen oder Dynamiken beschreibt (z. B. synaptische Plastizit\u00e4t, neuronale Netzwerke, oszillatorische Aktivit\u00e4ten, Spike-Timing, etc.).\nSimulationsbasiert \u00fcberpr\u00fcfbar ist.\nWissenschaftlich fundiert, innovativ und pr\u00e4zise formuliert ist.\nArbeitsweise:\n\nAnalysiere die Fragestellung und identifiziere relevante neuronale Prozesse oder Strukturen.\nEntwickle eine plausible Hypothese, die eine kausale Beziehung zwischen den neuronalen Dynamiken beschreibt.\nGib an, welche Parameter oder Mechanismen der Hypothese in Simulationen \u00fcberpr\u00fcft werden k\u00f6nnten.\nBeschreibe m\u00f6gliche Vorhersagen und wie diese Ergebnisse die Hypothese st\u00fctzen oder widerlegen k\u00f6nnten.\nBeispiel-Input:\nFragestellung: \"Wie beeinflusst die synchrone Aktivierung spezifischer Neuronenpopulationen im Hippocampus die Langzeitpotenzierung (LTP)?\"\n\nBeispiel-Output:\nHypothese: \"Die synchrone Aktivierung von CA3-Pyramidenzellen und CA1-Interneuronen f\u00f6rdert die Langzeitpotenzierung durch verst\u00e4rkte Spike-Timing-Dependent-Plasticity (STDP) in den dendritischen Verzweigungen von CA1-Neuronen.\"\nParameter/Mechanismen: \"Spike-Timing, synaptische Plastizit\u00e4t (LTP), dendritische Calciumspitzen in CA1-Neuronen.\"\n\nAchte darauf, dass die Hypothese ohne Vorwissen und ohne Probanden in Simulationssoftware \u00fcberpr\u00fcfbar ist. Vermeide jegliche Einleitung oder Abschluss sowie allgemeine Lifestyle-Empfehlungen.\n\nFragestellung:\n{{ $('When chat message received').item.json.chatInput }}"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
980,
40
],
"id": "0e501837-289e-4808-9b4a-302a63ef52c9",
"name": "Hypothesis"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
1000,
300
],
"id": "38843144-08d2-4351-87c4-bd93fef90b02",
"name": "OpenAI Chat Model4",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "=Rolle: Du bist ein erfahrener Neurowissenschaftler und Methodenspezialist mit Fokus auf wissenschaftliche Hypothesenentwicklung und experimentelle Validierung. Deine Aufgabe ist es, konstruktives Feedback zu einer neurowissenschaftlichen Hypothese zu geben, um deren Qualit\u00e4t und \u00dcberpr\u00fcfbarkeit zu verbessern.\n\nZiel: Gib pr\u00e4zises und umsetzbares Feedback, das:\n\nSchwachstellen oder Unklarheiten in der Hypothese aufdeckt.\nVorschl\u00e4ge zur Pr\u00e4zisierung und Verbesserung der Hypothese liefert.\nHinweise gibt, wie die Hypothese simulationsfreundlicher und \u00fcberpr\u00fcfbarer gemacht werden kann.\nAuf wissenschaftliche Plausibilit\u00e4t und innovative Ans\u00e4tze achtet.\nArbeitsweise:\n\nAnalysiere die Hypothese und identifiziere Unklarheiten, ungenaue Formulierungen oder nicht \u00fcberpr\u00fcfbare Aspekte.\nGib Feedback zu spezifischen Elementen der Hypothese, wie z. B.:\nKlarheit und Genauigkeit der Formulierungen.\nWissenschaftliche Fundierung und Plausibilit\u00e4t.\n\u00dcberpr\u00fcfbarkeit durch Simulationen oder Experimente.\nFormuliere pr\u00e4zise Verbesserungsvorschl\u00e4ge, um die Hypothese robuster und testbarer zu machen.\nBegr\u00fcnde dein Feedback kurz und nachvollziehbar, damit der Entwickler der Hypothese es leicht umsetzen kann.\nBeispiel-Input:\nHypothese: \"Die synchrone Aktivierung von CA1- und CA3-Neuronen im Hippocampus verst\u00e4rkt die Plastizit\u00e4t hippocampaler Netzwerke und verbessert dadurch die Effizienz des r\u00e4umlichen Lernens.\"\n\nBeispiel-Output:\n\nKlarheit und Genauigkeit: Der Begriff \"synchrone Aktivierung\" k\u00f6nnte pr\u00e4zisiert werden. Meinst du Synchronisation auf der Ebene der Spike-Timing-Dependent-Plasticity (STDP) oder auf einem anderen Zeitskalen-Niveau?\nWissenschaftliche Fundierung: Die Verbindung zwischen CA1- und CA3-Neuronen in Bezug auf r\u00e4umliches Lernen ist plausibel, aber welche molekularen Mechanismen (z. B. NMDA-Rezeptoren) m\u00f6chtest du genauer betrachten?\n\u00dcberpr\u00fcfbarkeit: Vorschlag: Definiere spezifische Messparameter, wie z. B. \u00c4nderungen in der Long-Term Potentiation (LTP) als Folge synchroner Aktivit\u00e4t, um die Hypothese \u00fcberpr\u00fcfbar zu machen.\nVerbesserungsvorschlag: Erg\u00e4nze einen klaren Zusammenhang zwischen Synchronisation und den Lernaufgaben, z. B.: \"Die synchrone Aktivierung von CA1- und CA3-Neuronen bei Gamma-Frequenzen erh\u00f6ht die LTP im Hippocampus und beschleunigt die Lernrate bei r\u00e4umlichen Navigationsaufgaben.\"\n\n---------------------------------------------------------------------------\nHypothese:\n{{ $json.text }}"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
1600,
40
],
"id": "26d81c2d-c675-4496-8a05-e873fbcb51ab",
"name": "Feedback"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
1620,
340
],
"id": "c8e9a8d5-78da-480e-bff8-8f16ca2ccccd",
"name": "OpenAI Chat Model1",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
2140,
360
],
"id": "fd1602f5-eb84-4aa2-ab33-5ab861a210b4",
"name": "OpenAI Chat Model5",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "=Verbessere diese Hypothese:\n{{ $('Hypothesis').item.json.text }}\n... unter Ber\u00fccksichtigung dieses kritischen Feedbacks:\n{{ $json.text }}\nAchte darauf, alle Schw\u00e4chen und Unklarheiten der urspr\u00fcnglichen Hypothese zu adressieren und die Formulierungen zu pr\u00e4zisieren. Verwende klar definierte wissenschaftliche Begriffe und f\u00fchre konkrete \u00c4nderungen ein, um die Hypothese pr\u00e4ziser und testbarer zu machen."
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
2120,
40
],
"id": "40e4e427-e7ed-49fd-81d9-4fceee8bb04b",
"name": "Hypothesis- \u00dcberarbeitet"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
2700,
360
],
"id": "558df9f7-f8dd-4f34-b1ef-b1cdddbd8385",
"name": "OpenAI Chat Model2",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"leftValue": "={{ $json.software }}",
"rightValue": "Brian2",
"operator": {
"type": "string",
"operation": "equals"
}
}
],
"combinator": "and"
}
},
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "ef7e1ffc-8627-4053-a9e4-2cb5024bca59",
"leftValue": "={{ $json.software }}",
"rightValue": "The Virtual Brain",
"operator": {
"type": "string",
"operation": "equals",
"name": "filter.operator.equals"
}
}
],
"combinator": "and"
}
}
]
},
"options": {
"fallbackOutput": "extra"
}
},
"type": "n8n-nodes-base.switch",
"typeVersion": 3.2,
"position": [
3720,
300
],
"id": "9a27904f-7e5f-4a3e-92c1-ce493adbac3c",
"name": "Switch"
},
{
"parameters": {
"content": "Szenarien --> Feste Simulationsparameter",
"height": 80,
"width": 180,
"color": 4
},
"type": "n8n-nodes-base.stickyNote",
"typeVersion": 1,
"position": [
2800,
200
],
"id": "e0eb7d3c-3c3b-4bcf-a73e-268c2788dd32",
"name": "Sticky Note"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
3500,
60
],
"id": "6950d0ee-23bc-453e-ba34-82eb321697c5",
"name": "Loop Over Items"
},
{
"parameters": {
"jsCode": "// Das Eingabetext von der ersten Quelle holen\nconst input = $input.first().json.text;\n\n// Splitte das Eingabetext in separate Sub-Szenarien anhand von \"Sub-Szenario X:\"\nconst tasks = input.split(/Sub-Szenario\\s*\\d+:/).filter(task => task.trim() !== \"\");\n\n// Funktion zur Bestimmung der Software basierend auf Schl\u00fcsselw\u00f6rtern\nconst determineSoftware = (task) => {\n if (task.includes(\"Brian2\")) {\n return \"Brian2\";\n } else if (task.includes(\"NEST\")) {\n return \"NEST\";\n } else if (task.includes(\"The Virtual Brain\") || task.includes(\"TVB\")) {\n return \"TVB\";\n } else {\n return \"Unknown\"; // R\u00fcckfalloption, falls keine Software erkannt wird\n }\n};\n\n// Array f\u00fcr neue Items erstellen\nconst items = tasks.map((task, index) => {\n // Bereinigung der Beschreibung (zus\u00e4tzliche Leerzeichen und Zeilenumbr\u00fcche entfernen)\n const cleanedDescription = task.trim().replace(/\\n+/g, \" \").replace(/\\s+/g, \" \");\n \n // Ein neues Item erstellen\n return {\n json: {\n software: determineSoftware(task), // Bestimme die Software\n description: cleanedDescription, // Bereinigte Sub-Szenario-Beschreibung\n }\n };\n});\n\n// R\u00fcckgabe der Items als JSON-Array\nreturn items.map(item => ({ json: item.json }));\n\n"
},
"type": "n8n-nodes-base.code",
"typeVersion": 2,
"position": [
3120,
40
],
"id": "919bc517-4740-45f4-b3ea-b50a33c35c9f",
"name": "Splitter"
},
{
"parameters": {},
"type": "n8n-nodes-base.noOp",
"typeVersion": 1,
"position": [
3700,
-60
],
"id": "5710cdd4-11c6-4bf0-9d53-86a93f6381f0",
"name": "No Operation, do nothing"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
4260,
-260
],
"id": "046ea460-fc7e-43d9-b579-0ac643d82b83",
"name": "Brian2"
},
{
"parameters": {},
"type": "n8n-nodes-base.noOp",
"name": "Replace Me2",
"typeVersion": 1,
"position": [
4420,
500
],
"id": "c5be4dc7-c3de-43eb-81c8-ad27438bb370"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
4260,
40
],
"id": "5d1f05ad-ca48-499d-923d-097fc743427d",
"name": "The Virtual Brain"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
4240,
400
],
"id": "0dd5428d-6299-43bf-be44-19c7cb15a004",
"name": "Nest"
},
{
"parameters": {
"workflowId": {
"__rl": true,
"value": "eqfCMvdWOW8V5ZmJ",
"mode": "list",
"cachedResultName": "Brian2_Version2"
},
"workflowInputs": {
"mappingMode": "defineBelow",
"value": {},
"matchingColumns": [],
"schema": [],
"attemptToConvertTypes": false,
"convertFieldsToString": true
},
"mode": "each",
"options": {}
},
"type": "n8n-nodes-base.executeWorkflow",
"typeVersion": 1.2,
"position": [
4480,
-140
],
"id": "032d4bda-fb07-4cfa-821e-d66d5a4be89a",
"name": "Execute Workflow1"
},
{
"parameters": {
"numberInputs": 3
},
"type": "n8n-nodes-base.merge",
"typeVersion": 3,
"position": [
5100,
60
],
"id": "af26ff07-5658-42ef-8272-43a7c3588376",
"name": "Merge"
},
{
"parameters": {
"model": "gpt-4o",
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
6180,
260
],
"id": "adff459c-940b-4792-8497-ec5ad5661590",
"name": "OpenAI Chat Model3",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "=Du bist ein hochentwickeltes wissenschaftliches KI-Modell, spezialisiert auf die Analyse von Daten in der Neurowissenschaft. Deine Aufgabe ist es, eine umfassende wissenschaftliche Bewertung basierend auf den bereitgestellten Datenquellen vorzunehmen. \n\n### **Vorgehensweise:** \n1. **Verst\u00e4ndnis der Fragestellung:** \n - Analysiere die Kernfrage und identifiziere ihre wissenschaftliche Bedeutung. \n\n2. **Auswertung der relevanten Studien:** \n - Untersuche die angegebenen wissenschaftlichen Studien systematisch. \n - Extrahiere und gewichte relevante Erkenntnisse in Bezug auf die Fragestellung. \n - Identifiziere Konsistenzen oder Widerspr\u00fcche zwischen den Studien. \n\n3. **Analyse der Hypothesen:** \n - Vergleiche die Hypothesen mit bestehenden Forschungsergebnissen. \n - Bewerte ihre Plausibilit\u00e4t anhand der bisherigen Literatur. \n\n4. **Auswertung der Szenariosimulationen:** \n - Untersuche die experimentell simulierten (Sub-)Szenarien. \n - Analysiere die Simulationsergebnisse im Kontext der Fragestellung. \n - Vergleiche Simulationsergebnisse mit den bestehenden wissenschaftlichen Daten. \n\n5. **Synthese und wissenschaftliches Fazit:** \n - Formuliere eine abschlie\u00dfende Bewertung der Fragestellung. \n - Diskutiere die Aussagekraft der Simulationsergebnisse im Vergleich zur bisherigen Forschung. \n - Hebe m\u00f6gliche Limitationen der Daten oder Methodik hervor. \n - Falls n\u00f6tig, mache Vorschl\u00e4ge f\u00fcr weitere Untersuchungen. \n\n### **Ausgabeformat:** \n1. **Zusammenfassung der Hauptbefunde** \n2. **Bewertung der Hypothesen (Best\u00e4tigung, Modifikation oder Widerlegung)** \n3. **Wissenschaftliches Fazit inkl. Empfehlungen f\u00fcr zuk\u00fcnftige Forschung** \n\nNutze einen sachlichen, pr\u00e4zisen und wissenschaftlichen Schreibstil. Ziehe nur begr\u00fcndbare Schlussfolgerungen und gebe klare Belege f\u00fcr deine Argumentation an.\n\nFragestellung: \n{{$node[\"When chat message received\"].json[\"chatInput\"]}}\nRelevante Studienergebnisse: \n{{$node[\"Researcher-Agent\"].json[\"output\"]}}\n{{$node[\"Research2\"].json[\"output\"]}}\nHypothese:\n{{$node[\"Hypothesis\"].json['text']}}\nSub-Szenarien:\n{{$node[\"Szenarien\"].json['text']}}\nSimulationsergebnisse:\n{{ $('Merge').item.json.text }}"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
6160,
60
],
"id": "1ebad612-7f4b-4b59-880f-29d4d59244bf",
"name": "Datenauswertung"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
10380,
-1060
],
"id": "6bf23c24-dd33-481a-81e3-12bb6350b3dc",
"name": "OpenAI Chat Model6",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
10360,
-1240
],
"id": "f56386e9-398e-455f-9d48-4e3638ff5c5c",
"name": "Decision"
},
{
"parameters": {
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "dc13d86f-39d9-4451-8c62-e73415905e9e",
"leftValue": "={{ $json }}",
"rightValue": "Iteration",
"operator": {
"type": "string",
"operation": "equals"
}
}
],
"combinator": "and"
},
"options": {}
},
"type": "n8n-nodes-base.if",
"typeVersion": 2.2,
"position": [
10760,
-1240
],
"id": "418d2e5d-863a-4681-94b8-242735be86dd",
"name": "If"
},
{
"parameters": {
"promptType": "define",
"text": "=Rolle: Du bist ein interdisziplin\u00e4rer Wissenschaftler mit Expertise in Neurowissenschaften und neuronalen Dynamiken. Deine Aufgabe ist es, neuartige, \u00fcberpr\u00fcfbare und relevante Hypothesen zu entwickeln, die ausschlie\u00dflich neuronale Prozesse und Dynamiken im Gehirn beschreiben und durch simulationsbasierte Experimente validiert werden k\u00f6nnen.\n\nZiel: Entwickle eine neurowissenschaftliche Hypothese, die:\n\nAuf die gegebene Fragestellung eingeht.\nKonkrete neuronale Mechanismen oder Dynamiken beschreibt (z. B. synaptische Plastizit\u00e4t, neuronale Netzwerke, oszillatorische Aktivit\u00e4ten, Spike-Timing, etc.).\nSimulationsbasiert \u00fcberpr\u00fcfbar ist.\nWissenschaftlich fundiert, innovativ und pr\u00e4zise formuliert ist.\nArbeitsweise:\n\nAnalysiere die Fragestellung und identifiziere relevante neuronale Prozesse oder Strukturen.\nEntwickle eine plausible Hypothese, die eine kausale Beziehung zwischen den neuronalen Dynamiken beschreibt.\nGib an, welche Parameter oder Mechanismen der Hypothese in Simulationen \u00fcberpr\u00fcft werden k\u00f6nnten.\nBeschreibe m\u00f6gliche Vorhersagen und wie diese Ergebnisse die Hypothese st\u00fctzen oder widerlegen k\u00f6nnten.\nBeispiel-Input:\nFragestellung: \"Wie beeinflusst die synchrone Aktivierung spezifischer Neuronenpopulationen im Hippocampus die Langzeitpotenzierung (LTP)?\"\n\nBeispiel-Output:\nHypothese: \"Die synchrone Aktivierung von CA3-Pyramidenzellen und CA1-Interneuronen f\u00f6rdert die Langzeitpotenzierung durch verst\u00e4rkte Spike-Timing-Dependent-Plasticity (STDP) in den dendritischen Verzweigungen von CA1-Neuronen.\"\nParameter/Mechanismen: \"Spike-Timing, synaptische Plastizit\u00e4t (LTP), dendritische Calciumspitzen in CA1-Neuronen.\"\n\nAchte darauf, dass die Hypothese ohne Vorwissen und ohne Probanden in Simulationssoftware \u00fcberpr\u00fcfbar ist. Vermeide jegliche Einleitung oder Abschluss sowie allgemeine Lifestyle-Empfehlungen.\n\nFragestellung:\n{{ $('When chat message received').item.json.chatInput }}"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
10960,
-2080
],
"id": "ff67e6bd-9aa3-4976-b85c-92107672ad65",
"name": "Hypothesis1"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
10960,
-1820
],
"id": "a33af6eb-c3fa-4023-90fd-734bbb7cdf26",
"name": "OpenAI Chat Model7",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "=Rolle: Du bist ein erfahrener Neurowissenschaftler und Methodenspezialist mit Fokus auf wissenschaftliche Hypothesenentwicklung und experimentelle Validierung. Deine Aufgabe ist es, konstruktives Feedback zu einer neurowissenschaftlichen Hypothese zu geben, um deren Qualit\u00e4t und \u00dcberpr\u00fcfbarkeit zu verbessern.\n\nZiel: Gib pr\u00e4zises und umsetzbares Feedback, das:\n\nSchwachstellen oder Unklarheiten in der Hypothese aufdeckt.\nVorschl\u00e4ge zur Pr\u00e4zisierung und Verbesserung der Hypothese liefert.\nHinweise gibt, wie die Hypothese simulationsfreundlicher und \u00fcberpr\u00fcfbarer gemacht werden kann.\nAuf wissenschaftliche Plausibilit\u00e4t und innovative Ans\u00e4tze achtet.\nArbeitsweise:\n\nAnalysiere die Hypothese und identifiziere Unklarheiten, ungenaue Formulierungen oder nicht \u00fcberpr\u00fcfbare Aspekte.\nGib Feedback zu spezifischen Elementen der Hypothese, wie z. B.:\nKlarheit und Genauigkeit der Formulierungen.\nWissenschaftliche Fundierung und Plausibilit\u00e4t.\n\u00dcberpr\u00fcfbarkeit durch Simulationen oder Experimente.\nFormuliere pr\u00e4zise Verbesserungsvorschl\u00e4ge, um die Hypothese robuster und testbarer zu machen.\nBegr\u00fcnde dein Feedback kurz und nachvollziehbar, damit der Entwickler der Hypothese es leicht umsetzen kann.\nBeispiel-Input:\nHypothese: \"Die synchrone Aktivierung von CA1- und CA3-Neuronen im Hippocampus verst\u00e4rkt die Plastizit\u00e4t hippocampaler Netzwerke und verbessert dadurch die Effizienz des r\u00e4umlichen Lernens.\"\n\nBeispiel-Output:\n\nKlarheit und Genauigkeit: Der Begriff \"synchrone Aktivierung\" k\u00f6nnte pr\u00e4zisiert werden. Meinst du Synchronisation auf der Ebene der Spike-Timing-Dependent-Plasticity (STDP) oder auf einem anderen Zeitskalen-Niveau?\nWissenschaftliche Fundierung: Die Verbindung zwischen CA1- und CA3-Neuronen in Bezug auf r\u00e4umliches Lernen ist plausibel, aber welche molekularen Mechanismen (z. B. NMDA-Rezeptoren) m\u00f6chtest du genauer betrachten?\n\u00dcberpr\u00fcfbarkeit: Vorschlag: Definiere spezifische Messparameter, wie z. B. \u00c4nderungen in der Long-Term Potentiation (LTP) als Folge synchroner Aktivit\u00e4t, um die Hypothese \u00fcberpr\u00fcfbar zu machen.\nVerbesserungsvorschlag: Erg\u00e4nze einen klaren Zusammenhang zwischen Synchronisation und den Lernaufgaben, z. B.: \"Die synchrone Aktivierung von CA1- und CA3-Neuronen bei Gamma-Frequenzen erh\u00f6ht die LTP im Hippocampus und beschleunigt die Lernrate bei r\u00e4umlichen Navigationsaufgaben.\"\n\n---------------------------------------------------------------------------\nHypothese:\n{{ $json.text }}"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
11560,
-2080
],
"id": "c321cb81-3646-4a0a-bcd5-86f953e56d31",
"name": "Feedback1"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
11580,
-1780
],
"id": "12c56b7f-827e-4b29-a4ab-e8284aa04d75",
"name": "OpenAI Chat Model8",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
12100,
-1760
],
"id": "e760d787-057c-4b6f-a71d-e1b930eb7ce2",
"name": "OpenAI Chat Model9",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "=Verbessere diese Hypothese:\n{{ $('Hypothesis1').item.json.text }}\n... unter Ber\u00fccksichtigung dieses kritischen Feedbacks:\n{{ $json.text }}\nAchte darauf, alle Schw\u00e4chen und Unklarheiten der urspr\u00fcnglichen Hypothese zu adressieren und die Formulierungen zu pr\u00e4zisieren. Verwende klar definierte wissenschaftliche Begriffe und f\u00fchre konkrete \u00c4nderungen ein, um die Hypothese pr\u00e4ziser und testbarer zu machen."
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
12080,
-2080
],
"id": "521313ee-cc69-43f9-b072-b5043d852706",
"name": "Hypothesis- \u00dcberarbeitet1"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
12660,
-1760
],
"id": "a04380a3-bded-4c3e-bbbc-85ab812d8b92",
"name": "OpenAI Chat Model10",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define",
"text": "=Du bist ein wissenschaftlicher Assistent mit umfassendem Wissen \u00fcber neuronale Simulationssoftware wie \u201eThe Virtual Brain (TVB)\u201c, \u201eNEST\u201c und \u201eBrian2\u201c. Deine Aufgabe ist es, eine gegebene wissenschaftliche Hypothese zu analysieren und diese in testbare Sub-Tasks zu dekonstruieren. Die Sub-Tasks sollen die spezifischen St\u00e4rken der Simulationssoftware nutzen, um die Hypothese effizient zu pr\u00fcfen. Ber\u00fccksichtige dabei:\n\nThe Virtual Brain (TVB): Gro\u00dffl\u00e4chige, makroskopische Gehirnregion-Simulationen.\nNEST: Hochpr\u00e4zise neuronale Netzwerke und Spike-basierte Simulationen.\nBrian2: Flexible und pr\u00e4zise Modellierung kleiner neuronaler Netzwerke.\nAnalysiere die Hypothese und dekonstruiere sie so, dass:\n\nJeder Sub-Task klar definiert ist und ein spezifisches Ziel verfolgt.\nDie Outputs jedes Sub-Tasks spezifiziert werden.\nKlar ist, welche Software f\u00fcr jeden Sub-Task verwendet werden soll und warum.\nBeispielhypothese:\n\u201eNeuronale Ver\u00e4nderungen in einer Gehirnregion beeinflussen die Netzwerkaktivit\u00e4t im gesamten Gehirn.\u201c\n\nOutput-Format:\n\nSub-Task-1: Simulation der gro\u00dffl\u00e4chigen Netzwerkaktivit\u00e4t unter normalen Bedingungen.\nZiel: Referenzmodell der normalen Netzwerkdynamik.\nSoftware: The Virtual Brain (TVB) \u2013 geeignet f\u00fcr makroskopische Simulationen.\nOutputs: Netzwerkaktivit\u00e4ts-Zeitreihen.\n\nSub-Task-2: Analyse lokaler neuronaler Ver\u00e4nderungen.\nZiel: Pr\u00e4zise Modellierung von Ver\u00e4nderungen auf lokaler Ebene.\nSoftware: Brian2 \u2013 ideal f\u00fcr detaillierte Modellierung kleiner Netzwerke.\nOutputs: Zeitreihen der lokalen Aktivit\u00e4t.\n\nSub-Task-3: Integration von lokalen Ver\u00e4nderungen und gro\u00dffl\u00e4chiger Dynamik.\nZiel: Analyse des Einflusses lokaler Ver\u00e4nderungen auf globale Netzwerke.\nSoftware: The Virtual Brain (TVB) \u2013 erm\u00f6glicht die Integration.\nOutputs: Kombinierte Netzwerkdynamik-Daten.\n\nWichtig: Vermeide Einleitungen, Abschl\u00fcsse, Erkl\u00e4rungen oder zus\u00e4tzliche Kommentare. Formuliere nur die Sub-Tasks im vorgegebenen Format.\n\nDies ist die Hypothese:\n{{ $json.text }}\n"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
12620,
-2080
],
"id": "cb1a3458-fbf8-4422-bff6-786ad853116d",
"name": "Sub-Task1"
},
{
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"leftValue": "={{ $json.software }}",
"rightValue": "Brian2",
"operator": {
"type": "string",
"operation": "equals"
}
}
],
"combinator": "and"
}
},
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "ef7e1ffc-8627-4053-a9e4-2cb5024bca59",
"leftValue": "={{ $json.software }}",
"rightValue": "The Virtual Brain",
"operator": {
"type": "string",
"operation": "equals",
"name": "filter.operator.equals"
}
}
],
"combinator": "and"
}
},
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "b843cfcf-5ded-4ddc-8ef2-acfb30acd3ad",
"leftValue": "={{ $json.software }}",
"rightValue": "Nest",
"operator": {
"type": "string",
"operation": "equals",
"name": "filter.operator.equals"
}
}
],
"combinator": "and"
}
}
]
},
"options": {}
},
"type": "n8n-nodes-base.switch",
"typeVersion": 3.2,
"position": [
13680,
-1820
],
"id": "0eb6725c-c419-4172-8c84-f06cbdc652ed",
"name": "Switch1"
},
{
"parameters": {
"content": "Szenarien --> Feste Simulationsparameter",
"height": 80,
"width": 180,
"color": 4
},
"type": "n8n-nodes-base.stickyNote",
"typeVersion": 1,
"position": [
12760,
-1920
],
"id": "52d654a8-d785-4f56-89db-9fe85203e1a2",
"name": "Sticky Note1"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
13460,
-2060
],
"id": "83d488cf-4ca8-4f64-8dd9-7ebcc3a91f49",
"name": "Loop Over Items1"
},
{
"parameters": {
"jsCode": "// Das Eingabetext von der ersten Quelle holen\nconst input = $input.first().json.text;\n\n// Splitte das Eingabetext in separate Aufgaben anhand von \"Sub-Task-X:\"\nconst tasks = input.split(/Sub-Task-\\d+:/).filter(task => task.trim() !== \"\");\n\n// Funktion zur Bestimmung der Software basierend auf Schl\u00fcsselw\u00f6rtern\nconst determineSoftware = (task) => {\n if (task.includes(\"Brian2\")) {\n return \"Brian2\";\n } else if (task.includes(\"NEST\")) {\n return \"NEST\";\n } else if (task.includes(\"The Virtual Brain\") || task.includes(\"TVB\")) {\n return \"TVB\";\n } else {\n return \"Unknown\"; // R\u00fcckfalloption, falls keine Software erkannt wird\n }\n};\n\n// Array f\u00fcr neue Items erstellen\nconst items = tasks.map((task, index) => {\n // Bereinigung der Beschreibung (zus\u00e4tzliche Leerzeichen und Zeilenumbr\u00fcche entfernen)\n const cleanedDescription = task.trim().replace(/\\n+/g, \" \").replace(/\\s+/g, \" \");\n \n // Ein neues Item erstellen\n return {\n json: {\n software: determineSoftware(task), // Bestimme die Software\n description: cleanedDescription, // Bereinigte Sub-Task-Beschreibung\n }\n };\n});\n\n// R\u00fcckgabe der Items als JSON-Array\nreturn items.map(item => ({ json: item.json }));\n\n"
},
"type": "n8n-nodes-base.code",
"typeVersion": 2,
"position": [
13080,
-2080
],
"id": "a8cd095d-cf45-4d0a-96cc-1c2874146590",
"name": "Splitter1"
},
{
"parameters": {},
"type": "n8n-nodes-base.noOp",
"typeVersion": 1,
"position": [
13660,
-2180
],
"id": "6a2fec85-d528-4b14-8b69-2b12b81ca2a4",
"name": "No Operation, do nothing1"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
14220,
-2380
],
"id": "d91d79a2-3623-439d-ae0a-70587dd6eea8",
"name": "Brian"
},
{
"parameters": {},
"type": "n8n-nodes-base.noOp",
"name": "Replace Me",
"typeVersion": 1,
"position": [
14380,
-1620
],
"id": "14026ede-d601-4dfa-8448-79d7859e9702"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
14220,
-2080
],
"id": "c2aab930-42bf-42a0-9d04-a22e35782259",
"name": "The Virtual Brain1"
},
{
"parameters": {
"options": {}
},
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 3,
"position": [
14200,
-1720
],
"id": "cf62e649-3cbd-490d-a8e4-1f080447c3cb",
"name": "Nest1"
},
{
"parameters": {
"workflowId": {
"__rl": true,
"value": "oKf3SRq4ar4MDt8B",
"mode": "list",
"cachedResultName": "My Sub-Workflow 1"
},
"workflowInputs": {
"mappingMode": "defineBelow",
"value": {},
"matchingColumns": [],
"schema": [],
"attemptToConvertTypes": false,
"convertFieldsToString": true
},
"options": {}
},
"type": "n8n-nodes-base.executeWorkflow",
"typeVersion": 1.2,
"position": [
14360,
-1960
],
"id": "3c28e5b4-093f-44ea-8565-27a508218497",
"name": "Execute Workflow2"
},
{
"parameters": {
"workflowId": {
"__rl": true,
"value": "LHJsZNJbtICBszV2",
"mode": "list",
"cachedResultName": "Brian2"
},
"workflowInputs": {
"mappingMode": "defineBelow",
"value": {},
"matchingColumns": [],
"schema": [],
"attemptToConvertTypes": false,
"convertFieldsToString": true
},
"options": {}
},
"type": "n8n-nodes-base.executeWorkflow",
"typeVersion": 1.2,
"position": [
14380,
-2280
],
"id": "c3a360c6-da1d-4c05-8d64-98eb34daa423",
"name": "Execute Workflow3"
},
{
"parameters": {
"numberInputs": 3
},
"type": "n8n-nodes-base.merge",
"typeVersion": 3,
"position": [
15060,
-2060
],
"id": "820b375a-8546-4016-a7fa-dc34f500bd7a",
"name": "Merge1"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
15400,
-1880
],
"id": "07362f07-9fc3-4ed7-97c1-e8347753a5f4",
"name": "OpenAI Chat Model11",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
15740,
-1860
],
"id": "ebaaf5f0-deac-4169-bf9b-826a3f9e0481",
"name": "OpenAI Chat Model12",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
15740,
-2060
],
"id": "486205a0-153c-4474-af19-46f6bc49362b",
"name": "Datenauswertung1"
},
{
"parameters": {
"promptType": "define"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
15380,
-2060
],
"id": "36b2b69f-5015-4975-9bcb-dc0ef72b7422",
"name": "Datenaufbereitung1"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
16120,
-1860
],
"id": "2c17890d-4bea-422e-a168-6a28d8d7fe5e",
"name": "OpenAI Chat Model13",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"promptType": "define"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
16100,
-2060
],
"id": "3cd8b963-eef8-499f-9b06-f948f258cef2",
"name": "Decision1"
},
{
"parameters": {
"workflowId": {
"__rl": true,
"value": "oKf3SRq4ar4MDt8B",
"mode": "list",
"cachedResultName": "My Sub-Workflow 1"
},
"workflowInputs": {
"mappingMode": "defineBelow",
"value": {},
"matchingColumns": [],
"schema": [],
"attemptToConvertTypes": false,
"convertFieldsToString": true
},
"options": {}
},
"type": "n8n-nodes-base.executeWorkflow",
"typeVersion": 1.2,
"position": [
4440,
160
],
"id": "c08412bc-9bdb-44ee-8efc-1cb8c7728692",
"name": "Execute Workflow"
},
{
"parameters": {
"promptType": "define",
"text": "=Du bist ein wissenschaftlicher Assistent mit umfassendem Wissen \u00fcber neuronale Simulationssoftware wie \u201eThe Virtual Brain (TVB)\u201c, \u201eNEST\u201c und \u201eBrian2\u201c. Deine Aufgabe ist es, eine gegebene wissenschaftliche Hypothese in ein konkretes Simulationsszenario zu \u00fcbersetzen. Dabei sollst du realistische Sub-Szenarien entwerfen, die spezifische Aspekte der Hypothese untersuchen.\n\nBer\u00fccksichtige dabei:\n\nThe Virtual Brain (TVB): Gro\u00dffl\u00e4chige, makroskopische Gehirnregion-Simulationen.\nNEST: Hochpr\u00e4zise neuronale Netzwerke und Spike-basierte Simulationen.\nBrian2: Flexible und pr\u00e4zise Modellierung kleiner neuronaler Netzwerke.\nErstelle ein simulationsbasiertes Sub-Szenario, das die Hypothese testet:\n\nJedes Sub-Szenario stellt eine spezifische experimentelle Simulation dar.\nDefiniere das Ziel jeder Simulation klar.\nLege die Simulationsparameter fest (z. B. Art der neuronalen Aktivit\u00e4t, Modelltypen).\nW\u00e4hle die geeignete Simulationssoftware und begr\u00fcnde die Wahl.\nBeschreibe die erwarteten Outputs jeder Simulation.\nBeispielhypothese:\n\u201eNeuronale Ver\u00e4nderungen in einer Gehirnregion beeinflussen die Netzwerkaktivit\u00e4t im gesamten Gehirn.\u201c\n\nOutput-Format:\n\nSub-Szenario 1: Simulation der normalen gro\u00dffl\u00e4chigen Gehirnaktivit\u00e4t\n\nZiel: Erstellung eines Referenzmodells der normalen Netzwerkdynamik.\nSimulation: Makroskopische Hirnregionenmodellierung mit realen Konnektivit\u00e4tsdaten.\nSoftware: The Virtual Brain (TVB) \u2013 geeignet f\u00fcr gro\u00dffl\u00e4chige Simulationen.\nOutputs: Zeitreihen der Netzwerkaktivit\u00e4t und funktionale Konnektivit\u00e4tsmuster.\nSub-Szenario 2: Modellierung lokaler neuronaler St\u00f6rungen\n\nZiel: Untersuchung der Auswirkungen lokal ver\u00e4nderter neuronaler Eigenschaften.\nSimulation: Modifikation der Spiking-Dynamik in einer spezifischen Region.\nSoftware: Brian2 \u2013 flexibel f\u00fcr detaillierte Modellierung einzelner neuronaler Gruppen.\nOutputs: Feuerraten und Spike-Zeitreihen der betroffenen Neuronenpopulation.\nSub-Szenario 3: Integration lokaler Ver\u00e4nderungen in ein gro\u00dffl\u00e4chiges Netzwerk\n\nZiel: Analyse der Wechselwirkungen zwischen lokalen Ver\u00e4nderungen und globaler Aktivit\u00e4t.\nSimulation: Verbindung der lokalen neuronalen Ver\u00e4nderungen mit der gesamten Netzwerkdynamik.\nSoftware: The Virtual Brain (TVB) \u2013 erm\u00f6glicht gro\u00dffl\u00e4chige Analyse neuronaler Interaktionen.\nOutputs: Ver\u00e4nderungen in funktionaler Konnektivit\u00e4t und Synchronisation.\nHypothese:\n{{ $json.text }}\n\n"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
2660,
40
],
"id": "a60d36fc-9c82-4c4a-959f-8a1db8cd4cbc",
"name": "Szenarien"
},
{
"parameters": {
"workflowId": {
"__rl": true,
"value": "lpy0koEuFj7nkFMp",
"mode": "list",
"cachedResultName": "My Sub-Workflow 1"
},
"workflowInputs": {
"mappingMode": "defineBelow",
"value": {},
"matchingColumns": [],
"schema": [],
"attemptToConvertTypes": false,
"convertFieldsToString": true
},
"options": {}
},
"type": "n8n-nodes-base.executeWorkflow",
"typeVersion": 1.2,
"position": [
11340,
-1220
],
"id": "74c007eb-5776-40fa-aded-c8b0dabddbad",
"name": "Execute Workflow4"
},
{
"parameters": {
"options": {}
},
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"typeVersion": 1.1,
"position": [
220,
300
],
"id": "3d08b8d6-a72f-49c7-b024-892b8e75dbca",
"name": "OpenAI Chat Model14",
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "strict",
"version": 2
},
"conditions": [
{
"id": "eea6e250-41af-4651-a6aa-892c819aef62",
"leftValue": "={{ $('Researcher-Agent').item.json.output }}",
"rightValue": "Ja",
"operator": {
"type": "string",
"operation": "equals",
"name": "filter.operator.equals"
}
}
],
"combinator": "or"
},
"options": {}
},
"type": "n8n-nodes-base.if",
"typeVersion": 2.2,
"position": [
620,
20
],
"id": "30766b54-f3fc-4608-b74d-c2fae1ac1aa6",
"name": "If1"
},
{
"parameters": {
"promptType": "define",
"text": "=Aufgabe: Du erh\u00e4ltst eine wissenschaftliche Fragestellung und eine Zusammenfassung von relevanten Studienergebnissen. Deine Aufgabe ist es zu bewerten, ob die vorliegenden Studien ausreichen, um die Fragestellung wissenschaftlich fundiert zu beantworten.\n\nBewertungskriterien:\n\nAnzahl & Qualit\u00e4t der Studien: Sind gen\u00fcgend hochwertige (peer-reviewed, gro\u00dfe Stichprobe, reproduzierbare) Studien vorhanden?\nKonsistenz der Ergebnisse: Stimmen die Studien weitgehend \u00fcberein, oder gibt es widerspr\u00fcchliche Ergebnisse?\nMethodische Strenge: Sind die Methoden robust, randomisiert, kontrolliert und frei von Bias?\nAktualit\u00e4t: Sind die Studien aktuell oder basieren sie auf veralteten Daten?\nReplikation: Wurden die Ergebnisse mehrfach best\u00e4tigt?\nAntwortformat:\nAntworte nur mit \"Ja\" oder \"Nein\", je nachdem, ob die Studien ausreichen, um die Fragestellung wissenschaftlich fundiert zu beantworten.\n\nEingabeformat:\nFragestellung: {{ $('When chat message received').item.json.chatInput }}\nStudienergebnisse: {{ $('Researcher-Agent').item.json }}\n\nWichtige Hinweise:\n\nWenn die Studienlage unzureichend ist oder methodische M\u00e4ngel aufweist, antworte mit \"Nein\".\nFalls Du unsicher bist oder weitere Studien ben\u00f6tigt werden, antworte mit \"Nein\".\nFalls gen\u00fcgend \u00fcberzeugende und qualitativ hochwertige Studien vorhanden sind, antworte mit \"Ja\".\n\nVermeide mit mehr als \"Ja\" oder \"Nein\" zu antworten"
},
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"typeVersion": 1.5,
"position": [
200,
20
],
"id": "d794b445-5af6-4f7a-b81a-8838a4f49410",
"name": "Entscheider"
},
{
"parameters": {
"workflowId": {
"__rl": true,
"value": "73LuBQENC2ABsrUz",
"mode": "list",
"cachedResultName": "Research_Agent"
},
"workflowInputs": {
"mappingMode": "defineBelow",
"value": {},
"matchingColumns": [],
"schema": [
{
"id": "chatInput",
"displayName": "chatInput",
"required": false,
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
openAiApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Forscher_Workflow. Uses chatTrigger, chainLlm, lmChatOpenAi, toolWorkflow. Chat trigger; 61 nodes.
Source: https://github.com/Tim-Projekt/n8n_Backup/blob/69c416aae9401e92e922f4bb1b22b9f9483c8346/workflows/2ZEkgNaUxdL6ewJ2.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This Chatbot automates the process of discovering job openings and generating tailored job application emails.
Job Application PredictLeads & ScrapeGraph AI. Uses chatTrigger, lmChatOpenAi, mcpClientTool, memoryBufferWindow. Chat trigger; 32 nodes.
This n8n template provides a powerful AI-powered chatbot that acts as your personal Spotify DJ. Simply tell the chatbot what kind of music you're in the mood for, and it will intelligently create a cu
Agent Nodes. Uses lmChatOpenAi, slack, stopAndError, errorTrigger. Event-driven trigger; 72 nodes.
by Varritech Technologies