易图(YiGraph)是一套端到端的图数据分析智能体系统,用于帮助用户从复杂数据中快速洞察关键关联关系。
易图能够从日志、文档、表格等多类原始数据中,自动抽取实体与关系,构建结构化的图数据;用户只需通过自然语言描述业务问题,系统即可自动规划分析流程,完成计算,并生成清晰、可解释、可追溯的分析报告。
在系统内部,大语言模型负责理解用户意图、拆解分析任务并组织最终输出;而支撑分析结果可靠性的核心技术是 AAG(Analytics-Augmented Generation,分析增强生成)框架。AAG 将分析计算作为核心能力,在关键环节调用图算法与图系统完成可验证的计算,再由模型对结果进行解释与汇总。
因此,易图并非只"回答问题"的对话式 AI,而是一套能够将业务问题转化为可执行、可复核分析流程的图分析智能体。
易图可灵活适配不同行业与业务需求,覆盖多类复杂关联数据分析场景,包括但不限于:
- 金融反洗钱与可疑交易分析:将海量交易流水自动构建为交易网络,识别异常资金路径与可疑交易环路
- 电商风控与羊毛党识别:融合账号、设备、地址等多源数据建图,发现团伙化作弊与关联作恶行为
- 企业关联与风险排查:通过企业、股权、交易等关系建图,穿透复杂结构,识别潜在合规与经营风险
- 园区/城市事件分析:将门禁、轨迹、事件数据统一建图,还原人员关系与事件演化过程
- 供应链风险分析:整合企业与交易数据构建供应链网络,定位隐蔽关联风险及传导路径
系统会先理解用户问题"想解决什么",再把它拆成可执行的分析步骤:
- 需要哪些数据字段与关系
- 该构建怎样的图(哪些实体、哪些关系)
- 该用哪些分析方法与参数
- 分析结果需要如何解释与呈现
你不需要懂图算法,系统会把"我要查什么"转成"怎么做分析"。
易图不会让模型随意"写一段不可控的代码再去跑"。相反,它会以"可验证的算法模块"为中心进行调用与组合,让每一步分析:
- 可复现:同样输入得到稳定一致的输出
- 可追溯:知道用了哪些算法、跑了哪些步骤
- 更可靠:关键计算由专业模块完成,而不是纯文本推理
易图不会把所有原始数据不加区分地建成一张大图。它会根据当前任务需要,选择性抽取与构建"与问题相关的实体与关系",避免无关结构干扰分析,并把图组织成更适合执行的形式,从而提升效率与结果质量。
内置 100+ 种图算法,覆盖 11 大类别,为各类图分析场景提供专业算法支持:
| 算法类别 | 算法数量 | 典型算法 | 应用场景 |
|---|---|---|---|
| Basics(基础算子) | 10 个 | BFS、DFS、拓扑排序、DAG 判定、祖先/后代查询 | 图结构校验、依赖分析、层级遍历 |
| Path(路径算法) | 13 个 | Dijkstra、Bellman-Ford、Floyd-Warshall、欧拉路径、DAG 最长路径 | 路径规划、关系链分析、关键路径 |
| Centrality(中心性算法) | 14 个 | PageRank、介数中心性、接近中心性、特征向量中心性、HITS、VoteRank | 关键节点识别、影响力评估、种子选择 |
| Connectivity & Components(连通性与组件) | 13 个 | 连通分量、强连通分量、割点/割边、最小割、节点/边连通度 | 网络稳健性、脆弱性分析、孤岛识别 |
| Clustering & Community(聚类与社区) | 17 个 | Louvain、Leiden、标签传播、k-clique、Girvan-Newman、聚类系数、环检测 | 圈层识别、团伙发现、紧密度分析 |
| Tree & Spanning Tree(树与生成树) | 3 个 | 最小生成树、最大生成树、随机生成树 | 网络骨架提取、成本优化 |
| Flow & Cut(流与割) | 5 个 | Edmonds-Karp、最大流、最小割、Gomory-Hu 树 | 容量规划、瓶颈分析、网络韧性 |
| Matching & Coloring(匹配与着色) | 6 个 | 最大/最小权重匹配、贪心着色、最小边覆盖 | 资源分配、冲突检测、任务调度 |
| Cliques & Cores(团与核) | 4 个 | 极大团枚举、最大权重团、k-core、核数计算 | 紧密群体发现、核心成员识别 |
| Distance & Measures(距离与结构度量) | 8 个 | 离心率、直径、半径、中心/边缘、维纳指数、同配系数 | 网络体检、拓扑对比、结构偏好分析 |
| Graph Query(图查询) | 8 个 | 节点查询、关系过滤、邻居查询、路径查询、共同邻居、子图抽取、聚合统计 | 数据获取与筛选、交互式探索、风控排查 |
详细的算法说明和使用指南请参考 📚 在线文档
支持多种数据源输入:
- 图数据
- 文本数据:文档、日志、报告等非结构化数据
系统会自动从原始数据中抽取实体与关系,构建结构化的图数据。
- 普通模式:用户只需提交业务问题,易图会自动完成问题解析、选择合适的图算法并执行计算,最终生成分析报告,适合非技术背景或一般业务用户使用。
- 交互模式:用户与易图协同完成业务问题分析。对于给定问题,易图会与大模型交互共同确定计算流程与图算法,再依据确定好的方案完成计算并反馈分析报告,适合对业务和图算法都有一定了解的进阶用户。
- 专家模式:用户直接给出业务问题以及解决思路、计算步骤与图算法,易图根据用户提供的方案执行计算并输出分析报告,适合深度掌握业务与图算法的专家用户。
核心能力
- ✅ 完整的图计算引擎(基于 NetworkX 和 Neo4j)
- ✅ 智能任务规划与执行
- ✅ 100+ 种图算法支持,覆盖 11 大类别
- ✅ 多数据源支持(图/文本)
- ✅ 交互式对话界面
v0.2.0(计划中)
- 🔄 图算法扩展至200-300个
- 🔄 新增图学习模块
- Python >= 3.11
请确认当前 Python 版本满足要求:
python --version
# 或
python3 --versionconda create -n AAG python=3.11
conda activate AAG易图需要使用 Neo4j 作为图数据库。本指南使用 Neo4j 3.5.25 版本。
Neo4j 3.5.25 需要 Java 8 或 Java 11。请先检查 Java 版本:
java -version如果未安装 Java,请先安装对应版本。
- 从官网下载 Neo4j 3.5.25 安装包(通常是
.tar.gz或.zip格式) - 解压安装包到指定位置:
Linux/Mac 系统(.tar.gz 格式):
tar -xzf neo4j-community-3.5.25-unix.tar.gz
cd neo4j-community-3.5.25Windows 系统(.zip 格式):
- 右键点击压缩包,选择"解压到当前文件夹"
- 或使用命令:
unzip neo4j-community-3.5.25-windows.zip - 进入解压后的目录
进入 conf 目录,编辑 neo4j.conf 配置文件:
cd conf在 neo4j.conf 中添加或修改以下配置:
dbms.connectors.default_listen_address=0.0.0.0
dbms.connectors.default_advertised_address=localhost
dbms.connector.bolt.listen_address=0.0.0.0:7687
dbms.connector.http.listen_address=0.0.0.0:7474
dbms.connector.https.enabled=true进入 bin 目录,执行启动或停止命令:
启动 Neo4j:
cd bin
./neo4j start停止 Neo4j:
./neo4j stop启动 Neo4j 后,可以通过浏览器访问 http://localhost:7474 来验证安装是否成功。
git clone https://github.com/iDC-NEU/YiGraph.git
cd YiGraphpip install -r requirements.txt编辑配置文件:
config/engine_config.yaml
示例配置如下:
# 运行模式: interactive / batch
mode: interactive
# 推理模块配置
reasoner:
llm:
provider: "openai" # 可选:ollama / openai
openai:
base_url: "https://your-api-endpoint/v1/"
api_key: "your-api-key"
model: "gpt-4o-mini"
# 检索模块配置
retrieval:
database:
graph:
space_name: "AMLSim1K"
server_ip: "127.0.0.1"
server_port: "9669"
vector:
collection_name: "graphllm_collection"
host: "localhost"
port: 19530
embedding:
model_name: "BAAI/bge-large-en-v1.5"
device: "cuda:2"
rag:
graph:
k_hop: 2
vector:
k_similarity: 5编辑配置文件:
config/data_upload_config.yaml
示例配置如下:
datasets:
- name: AMLSim1K
type: graph
schema:
vertex:
- type: account
path: "/path/to/accounts.csv"
format: csv
id_field: acct_id
edge:
- type: transfer
path: "/path/to/transactions.csv"
format: csv
source_field: orig_acct
target_field: bene_acct请将
path修改为你本地真实的数据文件路径。
重要提示: 在启动易图之前,请确保 Neo4j 数据库已经启动并正常运行。如果 Neo4j 未启动,易图将无法连接到图数据库。请参考 1.3.4 启动与停止 Neo4j 部分启动 Neo4j。
易图支持以下两种运行模式:
-
Web 交互模式(推荐) 通过浏览器进行交互式分析,适合日常使用、演示与业务分析场景。
-
终端交互模式(Terminal) 通过命令行进行交互,适合开发调试、快速验证与批量测试场景。
在项目根目录下执行以下命令启动 Web 服务:
python web/frontend/run.py启动成功后,终端会输出可访问的服务地址。请根据提示在浏览器中打开对应地址,即可进入易图的 Web 界面。
在 Web 界面中,用户可以通过自然语言输入业务问题,系统将自动完成分析流程,并展示分析结果与报告。
使用易图 Web 界面进行分析的基本步骤如下:
-
开始对话:开启一个新对话或者从历史记录中选择一个现有对话。
-
选择模式:选择最适合您的模式。
-
选择数据集:会将您上传好的数据集列举出来。例如:DocumentDemo。
-
输入您的请求:在输入框中输入您的指令或问题。请尽可能清晰和具体。
-
提交:点击发送按钮。
-
监控进度:在主聊天区观察状态更新(运行中、规划中、分析中等)。
-
查看结果:处理完成后,结果将显示在主聊天区。然后您可以提出后续问题或开始新的请求。
在 Web 界面中,您可以方便地管理数据集:
-
创建数据集:点击"创建"按钮。
-
填写数据集信息:
- 输入数据集的名称
- 选择数据集中文件的类型
-
上传数据文件:根据选择的文件类型上传相应的数据文件。
-
保存数据集:完成配置后保存,数据集将在对话中可供选择使用。
在文件管理界面中,您可以对数据集中的文件进行管理和可视化:
-
选择数据集:从下拉列表中选择对应的数据集。
-
上传文件:向选定的数据集中上传文件。
-
查看解析进度:系统会显示文件的解析进度,实时反馈处理状态。
-
可视化知识图谱:文件解析完成后,点击"可视化"按钮,即可查看该数据集对应的知识图谱可视化展示。
如果希望直接通过命令行与易图进行交互,可在项目根目录下执行:
python aag/main.py启动后,系统将进入终端交互模式。用户可按照终端提示输入问题,易图将在命令行中完成分析并输出结果。
使用终端交互模式的基本步骤:
-
查看可用数据集:通过指令查看系统中有哪些可用的数据集。
-
选择数据集:根据提示选择要使用的数据集。
-
输入问题:直接在终端中输入您的业务问题或分析需求。
-
查看结果:系统会在终端中实时显示分析过程和最终结果。
该模式主要用于开发调试、算法验证或快速测试场景。
无论采用 Web 模式还是终端模式,易图的基本使用流程一致:
- 启动对应的运行模式
- 根据提示输入自然语言业务问题
- 系统自动完成任务理解、分析执行与结果生成
更多高级功能、参数说明与使用示例,请参考项目的 README 文档或界面中的操作提示。
- GPU 设备不可用:请确认
embedding.device设置正确 - 端口冲突:检查图数据库与向量数据库服务是否已启动
- 模型无法加载:确认 API Key 与模型名称是否有效
访问完整的用户手册和开发者指南:
http://superccy.github.io/YiGraphDocs/
文档内容包括:
- 快速入门:系统安装、配置和基本使用
- 核心概念:AAG 框架原理和架构设计
- 算法文档:100+ 种图算法的详细说明和使用示例
- API 参考:完整的 API 接口文档
- 最佳实践:典型场景的分析案例和经验总结
我们欢迎各种形式的贡献:
- 🐛 报告 Bug
- 💡 提出新功能建议
- 📝 改进文档
- 🔧 提交代码
如果您在研究中使用了易图(YiGraph)或 AAG 框架,请引用我们的论文:
@article{YiGraph2026,
title={Towards Autonomous Graph Data Analytics with Analytics-Augmented Generation},
author={Qiange Wang, Chaoyi Chen, Jingqi Gao, Zihan Wang, Yanfeng Zhang, Ge Yu},
journal={arXiv preprint arXiv:2602.21604},
year={2026}
}本项目受益于以下开源项目:
- NetworkX - 图分析和算法库
- PyTorch Geometric - 图深度学习框架
- NebulaGraph - 分布式图数据库
- Milvus - 向量数据库
- LlamaIndex - RAG 框架
感谢所有贡献者的辛勤付出!
本项目采用 MIT License 开源协议。
如果这个项目对您有帮助,欢迎 Star ⭐ 支持我们!
让图数据分析更简单、更智能







