From 6747f3ab0193cfe4f93ee4b1248cd3a859b1494e Mon Sep 17 00:00:00 2001 From: mithilesh gaurihar Date: Wed, 1 Apr 2026 15:00:48 -0700 Subject: [PATCH 1/3] Add Neo4j Graph Chat pipeline (Sanitized) and update README --- README.md | 17 ++-- pipelines/neo4j_graph_chat.pipe | 139 ++++++++++++++++++++++++++++++++ 2 files changed, 148 insertions(+), 8 deletions(-) create mode 100644 pipelines/neo4j_graph_chat.pipe diff --git a/README.md b/README.md index 2b594f9..a3faf97 100644 --- a/README.md +++ b/README.md @@ -331,16 +331,17 @@ sequenceDiagram ## RocketRide AI Pipelines -4 visual pipelines in `pipelines/` directory: +5 visual pipelines in `pipelines/` directory: -| Pipeline | Purpose | -|----------|---------| -| `checkin_analysis.pipe` | Transcript → symptoms, mood, urgency | -| `drug_interaction.pipe` | Drug pair → plain-language explanation | -| `care_recommendation.pipe` | Graph data → personalized care plan | -| `condition_suggestion.pipe` | Symptom cluster → possible conditions | +| Pipeline | Purpose | Use Case for Doctors | +|----------|---------|----------------------| +| `checkin_analysis.pipe` | Transcript → symptoms, mood, urgency | Automatic symptom extraction from patient calls | +| `drug_interaction.pipe` | Drug pair → plain-language explanation | Explaining *why* two meds interact based on graph data | +| `care_recommendation.pipe` | Graph data → personalized care plan | Generating tailored clinical steps for family caregivers | +| `condition_suggestion.pipe` | Symptom cluster → possible conditions | Differential reasoning based on reported trends | +| `neo4j_graph_chat.pipe` | **Natural Language Graph Chat** | **Clinical Data Retrieval**: Doctors can chat directly to get patient data, symptoms, and medical history across the entire graph. | -Each follows: `Webhook → Prompt → Gemini LLM → Response` +Each follows: `Webhook → Question/Prompt → Gemini LLM → Response` **Setup:** Install RocketRide VS Code extension → Open .pipe file → Configure Gemini key → Click play diff --git a/pipelines/neo4j_graph_chat.pipe b/pipelines/neo4j_graph_chat.pipe new file mode 100644 index 0000000..f4fb951 --- /dev/null +++ b/pipelines/neo4j_graph_chat.pipe @@ -0,0 +1,139 @@ +{ + "viewport": { + "x": -152.71395540622166, + "y": 220.8070018486664, + "zoom": 0.5 + }, + "name": "Neo4j Graph Chat", + "description": "Natural language interface to query the CareGraph Neo4j database using Gemini", + "components": [ + { + "id": "llm_gemini_1", + "provider": "llm_gemini", + "name": "gemini", + "config": { + "profile": "gemini-2_5-flash", + "gemini-2_5-flash": { + "apikey": "{{GEMINI_API_KEY}}" + }, + "parameters": { + "google": {} + } + }, + "ui": { + "position": { + "x": 1325.7382550335572, + "y": 288.758389261745 + }, + "measured": { + "width": 150, + "height": 66 + }, + "nodeType": "default", + "formDataValid": true + }, + "control": [ + { + "classType": "llm", + "from": "db_neo4j_1" + } + ] + }, + { + "id": "db_neo4j_1", + "provider": "db_neo4j", + "name": "CareGraph Neo4j", + "config": { + "profile": "default", + "default": { + "auth_method": "userpass", + "database": "neo4j", + "db_description": "CareGraph\n", + "max_attempts": 5, + "uri": "{{NEO4J_URI}}", + "user": "{{NEO4J_USER}}", + "password": "{{NEO4J_PASSWORD}}" + }, + "uri": "{{NEO4J_URI}}", + "user": "{{NEO4J_USER}}", + "password": "{{NEO4J_PASSWORD}}", + "schema": "Graph Schema:\nNodes: (:Senior {name, phone, schedule, notes}), (:Medication {name}), (:Symptom {name}), (:Condition {name}), (:Doctor {name, specialty, phone}), (:FamilyMember {name, phone, relation}), (:Service {label, type})\nRelationships:\n(:Senior)-[:TAKES]->(:Medication)\n(:Senior)-[:REPORTED]->(:Symptom)\n(:Medication)-[:INTERACTS_WITH]->(:Medication)\n(:Medication)-[:SIDE_EFFECT]->(:Symptom)\n(:Symptom)-[:SUGGESTS]->(:Condition)\n(:Doctor)-[:CAN_TREAT]->(:Condition)\n(:Senior)-[:HAS_CONTACT]->(:FamilyMember)\n(:CheckIn)-[:DETECTED]->(:Symptom)", + "invoke": { + "llm": "llm_gemini_1" + }, + "parameters": { + "google": {} + } + }, + "ui": { + "position": { + "x": 1300, + "y": 100 + }, + "measured": { + "width": 150, + "height": 121 + }, + "nodeType": "default", + "formDataValid": true + }, + "input": [ + { + "lane": "questions", + "from": "chat_1" + } + ] + }, + { + "id": "response_answers_1", + "provider": "response_answers", + "config": { + "laneName": "answers" + }, + "ui": { + "position": { + "x": 1550, + "y": 100 + }, + "measured": { + "width": 150, + "height": 66 + }, + "nodeType": "default", + "formDataValid": true + }, + "input": [ + { + "lane": "answers", + "from": "db_neo4j_1" + } + ] + }, + { + "id": "chat_1", + "provider": "chat", + "config": { + "hideForm": true, + "mode": "Source", + "parameters": {}, + "type": "chat" + }, + "ui": { + "position": { + "x": 835.2684563758389, + "y": -75.7046979865772 + }, + "measured": { + "width": 150, + "height": 66 + }, + "nodeType": "default", + "formDataValid": true + } + } + ], + "project_id": "4212d898-a73f-4e0f-818e-05f6ce48bb81", + "version": 1, + "docRevision": 11, + "source": "chat_1" +} From 85fb62dae00c21927f8f93a2041325810192c700 Mon Sep 17 00:00:00 2001 From: mithilesh gaurihar Date: Wed, 1 Apr 2026 15:04:55 -0700 Subject: [PATCH 2/3] Detail the Graph Chat flow in README --- README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/README.md b/README.md index a3faf97..7035432 100644 --- a/README.md +++ b/README.md @@ -343,6 +343,17 @@ sequenceDiagram Each follows: `Webhook → Question/Prompt → Gemini LLM → Response` +### 🏥 Detailed Pipeline Workflow: Neo4j Graph Chat +The **Neo4j Graph Chat** enables doctors to perform natural language exploration of the care graph using **RocketRide AI** as the orchestrator. + +**Standard Flow:** +1. **Doctor Input**: A natural language question is typed into the dashboard (e.g., *"What medications is Margaret Park taking and has she reported any side effects?"*). +2. **RocketRide Webhook**: The question hits the `chat_1` node (Source) in the pipeline. +3. **Gemini LLM Reasoning**: The `llm_gemini_1` node uses **Gemini 2.5 Flash** to analyze the question against the documented **Neo4j Graph Schema**. +4. **Cypher Generation**: Gemini intelligently generates a precise **Cypher query** based on the patient's data, symptoms, and relationships in the graph. +5. **Neo4j Execution**: The `db_neo4j_1` node executes the query against the CareGraph database using stored environment credentials. +6. **Contextual Response**: Gemini synthesizes the graph results back into a professional medical summary for the doctor. + **Setup:** Install RocketRide VS Code extension → Open .pipe file → Configure Gemini key → Click play **Inference chain:** RocketRide pipeline → GMI Cloud (Qwen3-235B) fallback → empty From fd6fc1669c67125edf35ed82591ace3894f44a17 Mon Sep 17 00:00:00 2001 From: mithilesh gaurihar Date: Wed, 1 Apr 2026 15:07:37 -0700 Subject: [PATCH 3/3] Update README with simplified Graph Chat workflow --- README.md | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index 7035432..9108b40 100644 --- a/README.md +++ b/README.md @@ -343,20 +343,11 @@ sequenceDiagram Each follows: `Webhook → Question/Prompt → Gemini LLM → Response` -### 🏥 Detailed Pipeline Workflow: Neo4j Graph Chat -The **Neo4j Graph Chat** enables doctors to perform natural language exploration of the care graph using **RocketRide AI** as the orchestrator. - -**Standard Flow:** -1. **Doctor Input**: A natural language question is typed into the dashboard (e.g., *"What medications is Margaret Park taking and has she reported any side effects?"*). -2. **RocketRide Webhook**: The question hits the `chat_1` node (Source) in the pipeline. -3. **Gemini LLM Reasoning**: The `llm_gemini_1` node uses **Gemini 2.5 Flash** to analyze the question against the documented **Neo4j Graph Schema**. -4. **Cypher Generation**: Gemini intelligently generates a precise **Cypher query** based on the patient's data, symptoms, and relationships in the graph. -5. **Neo4j Execution**: The `db_neo4j_1` node executes the query against the CareGraph database using stored environment credentials. -6. **Contextual Response**: Gemini synthesizes the graph results back into a professional medical summary for the doctor. - -**Setup:** Install RocketRide VS Code extension → Open .pipe file → Configure Gemini key → Click play - -**Inference chain:** RocketRide pipeline → GMI Cloud (Qwen3-235B) fallback → empty +### 🏥 Pipeline Workflow: Neo4j Graph Chat +The **Neo4j Graph Chat** follows a simple visual flow in RocketRide: +1. **Chat Source Box**: Captures the doctor's question in the chat interface. +2. **Neo4j Database Tool Box**: Connects to the Neo4j graph and receives the question. +3. **Gemini LLM Box**: Connected directly to the Neo4j box to handle query generation and provide the final response to the doctor. ---