香港大学(HKUDS)推出的图语言智能体框架,基于 Llama3-8B,通过协同图生成、规划与执行三大 Agent,统一处理图数据的预测任务(如节点分类)与生成任务(如文本摘要)。
项目概述#
GraphAgent 是由香港大学数据科学学院(HKUDS)开发的自动化图智能体框架,已发表于 EMNLP 2025。该项目旨在弥合结构化图数据(如社交网络、引用网络)与非结构化内容(如文本、视觉信息)之间的鸿沟。
核心机制#
GraphAgent 引入了多智能体协作架构,通过自动化流水线工作:
- 理解与构建:如果没有现成的图,通过 Graph Generator Agent 自动构建知识图谱;如果有,则利用现有图结构
- 规划:Task Planning Agent 将用户的自然语言查询解析为具体的执行计划
- 执行:Task Execution Agent 调用工具并利用 Graph-Text Tokenizer 将图转化为连续 Token,结合 LLM 进行推理或生成
解决的问题#
- 异构数据融合:统一处理显式链接(如用户关注关系)与隐式语义依赖(如文档间的主题相关性)
- 跨任务通用性:同一个框架内同时解决图上的分类/回归问题(预测任务)和文本生成/摘要问题(生成任务)
- 零样本泛化:在未见过的图数据集上表现出显著优于传统 GNN 的零样本分类能力
核心组件#
| 组件名称 | 功能描述 |
|---|---|
| Graph Generator Agent | 自动构建知识图谱,捕捉复杂的语义依赖关系;支持从非结构化文本中提取实体关系构建图 |
| Task Planning Agent | 代理自规划模块,解释多样化的用户自然语言查询,并将其拆解为可执行的子任务序列 |
| Task Execution Agent | 负责高效执行规划好的任务,自动匹配和调用工具(如检索、图编码、文本生成),并生成最终响应 |
关键特性#
- 处理结构化(图连接)和非结构化(文本、视觉信息)数据格式
- 处理显式链接(社交连接、用户行为)和隐式语义实体间相互依赖关系
- 集成语言模型与图语言模型,揭示复杂的关系信息和数据语义依赖
- 提供多模态图-文本 tokenizer,将图转化为连续 tokens
模型变体#
- GraphAgent-Task Expert (8B):针对特定任务微调的专家模型
- GraphAgent-General (8B):通用版本
- GraphAgent-Zero-Shot (8B):专攻零样本推理场景,无需特定数据集微调即可工作
支持的任务#
预测任务#
- Node Classification (NC):节点分类
- Paper Classification:论文学科分类
- Paper Judgement Prediction:论文录用/评分预测
生成任务#
- Text Generation:通用文本生成
- Related Work Generation:自动生成学术论文的"相关工作"章节
- Text Summarization:长文本摘要
数据处理能力#
- 多模态输入支持:支持结构化图数据(邻接矩阵、边列表)和非结构化数据(文本、视觉信息)
- 图-文统一编码:提供专门的 Graph-Text Tokenizer,能够将图结构信息转化为连续的 Token 序列
- 隐式/显式依赖处理:不仅处理可见的连接,还能挖掘数据间隐含的语义关联
性能表现#
在 ACM-1000 零样本分类任务中,GraphAgent 在多项指标上超越传统图神经网络方法(SAGE, GAT, HAN, HGT, HetGNN, HiGPT),提升幅度最高达 63.5%。
应用场景#
- 学术论文分析和分类
- 同行评审预测
- 自动生成相关工作章节
- 政府报告摘要
- IMDB 电影数据分析
- ACM 论文网络分析
安装步骤#
# 克隆仓库
git clone https://github.com/HKUDS/GraphAgent.git
cd GraphAgent
# 创建 conda 环境
conda create -n graphagent python=3.11
conda activate graphagent
# 安装推理依赖
pip install -r GraphAgent-inference/requirements.txt
模型资源#
项目在 Hugging Face 上提供以下预训练检查点:
GraphAgent/GraphAgent-8B:8.03B 参数的多模态 llama3 图动作模型GraphAgent/GraphTokenizer:多模态图-文本 tokenizersentence-transformers/all-mpnet-base-v2:用于文本图嵌入的句子转换器
配置要求#
需配置 API-based LLM 用于任务规划和图生成,默认使用 deepseek 作为规划器,需在 GraphAgent-inference/run.sh 中设置相应的 API 密钥。
使用方式#
bash GraphAgent-inference/run.sh
>>> Please enter a user instruction or file path (or type 'exit' to quit):
>>> GraphAgent-inference/demo/use_cases/teach_me_accelerate.txt
项目提供 use_cases 目录包含多样化的使用示例,展示 GraphAgent 如何完成不同任务。
数据集支持#
| 数据集 | 任务类型 | 子任务 | 训练样本 | 评估样本 |
|---|---|---|---|---|
| IMDB | 预测 | NC | 2,400 | - |
| ACM | 预测 | NC | - | 1,000 |
| Arxiv-Papers | 预测 | Paper Classification | 5,175 | 500 |
| ICLR-Peer Reviews | 预测 | Paper Judgement | 3,141 | 500 |
| Related Work Generation | 生成 | Text Generation | 4,155 | 500 |
| GovReport Summarization | 生成 | Text Summarization | - | 304 |
引用格式#
@article{graphagent,
title={GraphAgent: Agentic Graph Language Assistant},
author={Yuhao Yang and Jiabin Tang and Lianghao Xia and Xingchen Zou and Yuxuan Liang and Chao Huang},
year={2024},
journal={arXiv preprint arXiv:2412.17029},
}