以下是为倪李神学专门设计的 CSV 文件结构与列定义完整指南:

***

## 一、节点文件设计原则

每类神学实体建议用**独立的 CSV 文件**,而非混合在一张表里,便于 Neo4j 分别赋予标签 。[1][2]

### `nodes_concept.csv`(神学概念)
“`csv
id,name,category,tradition,description,source_book
C001,神圣经纶,经纶论,倪李神学,神在永远中计划将自己分赐给人,以弗所书1:10
C002,神圣生命,生命论,倪李神学,三一神作为生命进入并充满人的灵,约翰福音1:4
C003,人的灵,人论,倪李神学,人里面接触神的最深处器官,撒迦利亚12:1
C004,调和(Mingling),救赎论,倪李神学,神与人在生命上的有机联合,约翰福音15:5
C005,召会建造,召会论,倪李神学,神经纶的终极目标与彰显,以弗所书2:22
C006,得胜者,末世论,倪李神学,在时代末了完成神心愿的信徒群体,启示录2-3章
C007,变化形态(Metabolic Transformation),救赎论,倪李神学,魂被神生命转化更新的过程,罗马书12:2
C008,三一神,神论,倪李神学,父子灵三而一的神圣实体,约翰福音14-16章
“`

### `nodes_person.csv`(人物)
“`csv
id,name,role,period,location,tradition
P001,倪柝声,使徒型工人,1903-1972,中国/台湾,倪李神学
P002,李常受,使徒型工人,1905-1997,台湾/美国,倪李神学
P003,奥斯丁·沃森斯,弟兄会领袖,1808-1897,英国,弟兄会
P004,宾路易师母,慕迪相关更新运动,1861-1921,美国,灵恩更新
“`

### `nodes_book.csv`(著作)
“`csv
id,title,author_id,year,language,theme
B001,属灵人,P001,1928,中文,人论;灵魂体
B002,正常的基督徒生活,P001,1957,中文,救赎论;生命经历
B003,以弗所书生命读经,P002,1984,中文,召会论;神圣经纶
B004,神圣经纶,P002,1972,中文,经纶论;三一神
B005,基督身体的建造,P002,1965,中文,召会建造
B006,恢复版新约圣经,P002,1985,中文,经文注释;脚注神学
“`

### `nodes_theme.csv`(神学主题类别)
“`csv
id,name,description
T001,人论,关于人的本质与构成(灵魂体)
T002,经纶论,神永远计划与目的
T003,召会论,教会本质与实践原则
T004,生命论,神圣生命的分赐与经历
T005,末世论,得胜者与神国度
“`

***

## 二、关系文件设计原则

关系文件需包含**源节点ID、目标节点ID、关系类型、关系属性** 。关系类型应用**动词短语**命名,语义清晰 。[3][1]

### `relationships.csv`(统一关系文件)
“`csv
source_id,source_label,target_id,target_label,type,weight,note
P001,Person,B001,Book,AUTHORED,,
P001,Person,B002,Book,AUTHORED,,
P002,Person,B003,Book,AUTHORED,,
P002,Person,B004,Book,AUTHORED,,
C001,Concept,C005,Concept,CULMINATES_IN,0.9,经纶的终极目的是召会建造
C002,Concept,C003,Concept,FLOWS_THROUGH,0.8,生命经由灵分赐
C003,Concept,C005,Concept,ENABLES,0.9,灵的功用成就建造
C004,Concept,C002,Concept,EXPRESSES,0.85,调和是生命联合的表现
C007,Concept,C003,Concept,TRANSFORMS,0.8,变化形态发生在魂/灵层面
B001,Book,C003,Concept,EXPOUNDS,,
B003,Book,C001,Concept,EXPOUNDS,,
B004,Book,C008,Concept,EXPOUNDS,,
C001,Concept,T002,Theme,BELONGS_TO,,
C005,Concept,T003,Theme,BELONGS_TO,,
C002,Concept,T004,Theme,BELONGS_TO,,
P001,Person,P002,Person,MENTORED,,倪柝声影响李常受
“`

***

## 三、列名规范总结

| 列名 | 用途 | 建议格式 |
|——|——|———|
| `id` | 节点唯一标识符 | 前缀+三位数字,如 `C001` [4] |
| `name` | 显示名称 | 中文全称 |
| `label` / `source_label` | Neo4j 节点标签 | 英文大写,如 `Concept` [1] |
| `type`(关系) | 关系类型 | 英文大写下划线,如 `AUTHORED` [1] |
| `weight` | 关系强度 | 0–1 浮点数(GraphRAG 输出可直接使用)[5] |
| `tradition` | 神学传统归属 | 便于比较神学过滤查询 |
| `source_book` | 概念来源 | 圣经章节或著作 |

***

## 四、与 GraphRAG 输出对接

若使用 GraphRAG/LightRAG 自动抽取,其输出的 `entities.csv` 和 `relationships.csv` 列名需映射到上述格式 :[5][6]

“`python
import pandas as pd

# GraphRAG 输出列:name, type, description, source_id, target_id, weight
entities = pd.read_csv(“graphrag_output/entities.csv”)
rels = pd.read_csv(“graphrag_output/relationships.csv”)

# 映射为 Neo4j 导入格式
entities = entities.rename(columns={“type”: “label”, “description”: “description”})
entities[“id”] = [“C” + str(i).zfill(3) for i in range(1, len(entities)+1)]

rels = rels.rename(columns={“weight”: “weight”})
rels[“type”] = rels[“type”].str.upper().str.replace(” “, “_”)

entities.to_csv(“nodes_concept.csv”, index=False, encoding=”utf-8-sig”)
rels.to_csv(“relationships.csv”, index=False, encoding=”utf-8-sig”)
“`

> **重要**:最终 CSV 须以 **UTF-8 with BOM(`utf-8-sig`)** 编码保存,防止 Neo4j 导入中文乱码 。[7]

Sources
[1] How to Build a Knowledge Graph with Neo4j to Detect Patterns and … https://blogs.businesscompassllc.com/2025/12/how-to-build-knowledge-graph-with-neo4j.html
[2] From CSV To GraphRAG Systems With Neo4j And LangChain | Part 1 https://www.youtube.com/watch?v=IqgsUwOnchE
[3] Create Relationships from CSV – Neo4j Community https://community.neo4j.com/t/create-relationships-from-csv/59087
[4] Best practice of Neo4j for specified case – Neo4j Graph Platform https://community.neo4j.com/t/best-practice-of-neo4j-for-specified-case/24320
[5] Easy GraphRAG with Neo4j Visualisation Locally – YouTube https://www.youtube.com/watch?v=Dw2g2NEdsw0
[6] Support for CSV files exported from Neo4j for indexing in GraphRAG https://github.com/microsoft/graphrag/issues/1497
[7] Import CSV to Neo4j – CSVBox Blog https://blog.csvbox.io/import-csv-to-neo4j/
[8] Neo4J Enforce Unique Relationships bertween Nodes when … https://stackoverflow.com/questions/72841878/neo4j-enforce-unique-relationships-bertween-nodes-when-reading-from-csv
[9] Unlocking the Power of Neo4j: A Comprehensive Guide to Graph … https://byteridge.com/industry-insights/unlocking-the-power-of-neo4j-a-comprehensive-guide-to-graph-databases/
[10] Best practices for transforming rows of data in nodes & relationships https://community.neo4j.com/t/best-practices-for-transforming-rows-of-data-in-nodes-relationships/59015
[11] Neo4j Live: How to Build a Knowledge Graph – YouTube https://www.youtube.com/watch?v=1ogNyPWUP7g
[12] I want to build a knowledge graph – can you tell me if that’s … – Reddit https://www.reddit.com/r/Neo4j/comments/1oks5dp/i_want_to_build_a_knowledge_graph_can_you_tell_me/