首页
/ G-Retriever 使用指南

G-Retriever 使用指南

2024-09-25 17:53:12作者:董宙帆

项目介绍

G-Retriever 是一个面向真实世界文本图的理解与问答的灵活框架,由论文 "G-Retriever: 检索增强生成在文本图形理解与问答中的应用" 引入。它设计用于多种应用场景,包括场景图理解、常识推理及知识图谱推理。该框架结合了图神经网络(GNNs)、大型语言模型(LLMs)以及检索增强生成(RAG)的优点,支持通过软提示进行微调以提升图理解能力。

项目快速启动

环境搭建

首先,创建并激活名为 g_retriever 的 Conda 虚拟环境,并安装必要的依赖:

conda create --name g_retriever python=3.9 -y
conda activate g_retriever

conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.8 -c pytorch -c nvidia
python -c "import torch; print(torch.__version__)"
python -c "import torch; print(torch.version.cuda)"

pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-2.0.1+cu118.html
pip install peft pandas ogb transformers wandb sentencepiece torch_geometric datasets pcst_fast

数据预处理

接下来,执行数据预处理步骤,以准备所需的训练和测试数据集:

python -m src.dataset.preprocess.expla_graphs
python -m src.dataset.expla_graphs

# 注意:以下命令可能需要较长时间运行
python -m src.dataset.preprocess.scene_graphs
python -m src.dataset.scene_graphs

python -m src.dataset.preprocess.webqsp
python -m src.dataset.webqsp

运行模型

选择想要运行的模型配置,例如,运行仅用于推断的大型语言模型:

python inference.py --dataset scene_graphs --model_name inference_llm --llm_model_name 7b_chat

应用案例和最佳实践

对于最佳实践,建议先从基础模型开始,比如使用冻结的LLM加上软提示(Prompt Tuning),然后逐步过渡到使用G-Retriever模型或其带LoRA微调的版本,以适应特定的应用场景。确保对数据集进行充分的预处理,并调整模型参数以符合实际需求。利用WandB等工具监控训练过程,优化模型性能。

典型生态项目

虽然此部分通常涉及与其他项目的集成或在相同领域内的其他开源工具,但G-Retriever自身就是作为一个独立且强大的文本图理解与问答工具存在的。开发者可以探索将其集成到知识图谱应用、自然语言处理的对话系统或者任何需要理解和生成基于文本的图形信息的项目中。考虑到生态系统的扩展,社区可能会围绕G-Retriever开发更多的插件或服务,如自定义数据加载器、前端交互界面或特定领域的模型适配。


以上内容提供了G-Retriever的基本使用指导,进一步的深入学习和定制化开发需参照项目GitHub仓库中的详细文档和示例代码。

登录后查看全文
热门项目推荐