src/insight_analyzer¶
阶段 6 模块,负责图谱分析和洞见报告生成。
函数¶
load_graph(graph_path: str) → nx.DiGraph¶
从 JSON 文件加载知识图谱到 NetworkX。
参数:
| 名称 | 类型 | 说明 |
|---|---|---|
graph_path |
str |
knowledge_graph.json 的路径 |
返回值: NetworkX 有向图。
analyze_hub_concepts(G: nx.DiGraph) → list[dict]¶
查找连接最多不同科学领域的桥梁概念。
参数:
| 名称 | 类型 | 说明 |
|---|---|---|
G |
nx.DiGraph |
知识图谱 |
返回值: 排序后的字典列表:
[
{
"concept": "Protein Degradation Mechanisms",
"field_count": 3,
"fields": ["Biology", "Chemistry", "Physics"],
"degree": 12
},
...
]
analyze_field_influence(G: nx.DiGraph) → dict¶
分析哪些领域输出概念、哪些领域引入概念。
返回值: 结构如下的字典:
{
"exports": {"Physics": 3, "Chemistry": 2, ...},
"imports": {"Biology": 5, "Physics": 4, ...},
"net": {"Physics": -1, "Biology": -5, ...}
}
analyze_temporal_patterns(G: nx.DiGraph) → list[dict]¶
提取跨学科迁移事件的时间线。
返回值: 排序后的迁移事件列表:
[
{
"year": 1961,
"source_concept": "...",
"target_concept": "...",
"source_field": "Physics",
"target_field": "Biology",
"description": "..."
},
...
]
analyze_key_pathways(G: nx.DiGraph) → list[dict]¶
查找跨领域的概念间最短路径(3-6 跳,跨越 ≥2 个领域)。
返回值: 路径字典列表,包含 source、target、path、fields、length。
generate_report(G: nx.DiGraph, output_path: str) → None¶
生成完整的 Markdown 分析报告和 JSON 数据文件。
参数:
| 名称 | 类型 | 说明 |
|---|---|---|
G |
nx.DiGraph |
知识图谱 |
output_path |
str |
输出目录路径 |
输出:
{output_path}/insight_report.md— 6 章节 Markdown 报告{output_path}/insight_report.json— 机器可读分析数据
run() → None¶
执行完整的阶段 6 流水线:
- 加载配置
- 加载知识图谱
- 运行所有分析函数
- 生成报告文件
- 在控制台打印关键发现