跳转至

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 个领域)。

返回值: 路径字典列表,包含 sourcetargetpathfieldslength


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 流水线:

  1. 加载配置
  2. 加载知识图谱
  3. 运行所有分析函数
  4. 生成报告文件
  5. 在控制台打印关键发现