Spaces:
Paused
Paused
🚀 Google Colab GPU 测试指南
📋 概述
我为您创建了两个文件用于在Google Colab上测试GPU性能:
colab_gpu_demo.ipynb- Jupyter Notebook版本(推荐)colab_gpu_test.py- Python脚本版本
🎯 使用方法
方法1: 使用Notebook(推荐)
步骤1: 上传到Colab
- 打开 Google Colab
- 点击
文件→上传笔记本 - 选择
colab_gpu_demo.ipynb
步骤2: 启用GPU
- 点击顶部菜单
运行时→更改运行时类型 - 硬件加速器选择
GPU - GPU类型选择
T4(免费版)或A100(Colab Pro) - 点击
保存
步骤3: 运行测试
- 点击
运行时→全部运行 - 或者逐个单元格运行(Shift + Enter)
方法2: 使用Python脚本
步骤1: 上传文件
- 在Colab中创建新笔记本
- 点击左侧文件夹图标
- 上传
colab_gpu_test.py
步骤2: 运行脚本
# 在Colab单元格中运行
!python colab_gpu_test.py
📊 测试内容
1. GPU环境检测 ✅
- CUDA可用性检查
- GPU型号和显存信息
- nvidia-smi输出
2. 矩阵运算性能测试 ⚡
- CPU vs GPU 5000x5000矩阵乘法
- 预期加速比: 10-50x
3. 文本嵌入性能测试 📝
- 使用sentence-transformers
- 1000个文本的嵌入生成
- CPU vs GPU对比
- 预期加速比: 5-10x
4. GraphRAG组件测试 🔍
- 简化版知识图谱构建
- 实体和关系管理
- GPU加速的向量检索
5. 显存监控 💾
- 实时显存使用情况
- 内存分配统计
📈 预期结果
Google Colab 免费版 (T4 GPU)
| 测试项目 | CPU时间 | GPU时间 | 加速比 |
|---|---|---|---|
| 矩阵运算 (5000x5000) | ~8-10秒 | ~0.3-0.5秒 | 20-30x |
| 文本嵌入 (1000文本) | ~30-40秒 | ~5-8秒 | 5-7x |
| GraphRAG索引 (100文档) | ~15分钟 | ~3-5分钟 | 3-5x |
Google Colab Pro (A100 GPU)
| 测试项目 | CPU时间 | GPU时间 | 加速比 |
|---|---|---|---|
| 矩阵运算 | ~8秒 | ~0.2秒 | 40x |
| 文本嵌入 | ~35秒 | ~3秒 | 10-12x |
| GraphRAG索引 | ~15分钟 | ~2-3分钟 | 5-7x |
🔧 运行完整GraphRAG项目
如果GPU测试成功,可以在Colab上运行完整的GraphRAG项目:
步骤1: 上传项目文件
在Colab中创建新的单元格:
# 方式1: 从Google Drive加载
from google.colab import drive
drive.mount('/content/drive')
# 复制项目文件
!cp -r /content/drive/MyDrive/adaptive_RAG /content/
%cd /content/adaptive_RAG
或者:
# 方式2: 从GitHub克隆
!git clone YOUR_GITHUB_REPO_URL
%cd adaptive_RAG
步骤2: 安装依赖
# 安装基础依赖
!pip install -q -r requirements.txt
# 安装GraphRAG依赖
!pip install -q -r requirements_graphrag.txt
步骤3: 配置API密钥
import os
from getpass import getpass
# 安全输入API密钥
os.environ['TAVILY_API_KEY'] = getpass('输入 TAVILY_API_KEY: ')
# 验证
print("✅ API密钥已设置")
步骤4: 运行GraphRAG
# 运行主程序
!python main_graphrag.py
步骤5: 下载结果
# 下载构建好的知识图谱
from google.colab import files
# 下载图谱文件
files.download('data/knowledge_graph.json')
print("✅ 图谱已下载到本地")
💡 优化建议
1. 批处理大小优化
在 config.py 中调整:
# GPU优化配置
GRAPHRAG_BATCH_SIZE = 20 # GPU可以处理更大批次
2. 使用GPU优化的模型
# 使用更大的嵌入模型(GPU环境)
EMBEDDING_MODEL = "sentence-transformers/all-mpnet-base-v2"
3. 启用混合精度
# 在entity_extractor.py中
import torch
torch.set_float32_matmul_precision('medium') # 提升性能
⚠️ 注意事项
Colab资源限制
免费版限制:
- 连续使用时间: 最多12小时
- GPU使用配额: 每周有限
- 闲置超时: 90分钟自动断开
建议:
- 定期保存进度到Google Drive
- 使用
files.download()下载重要结果 - 避免长时间空闲
数据持久化
# 定期保存到Google Drive
from google.colab import drive
drive.mount('/content/drive')
# 保存图谱
import shutil
shutil.copy(
'data/knowledge_graph.json',
'/content/drive/MyDrive/graphrag_backup.json'
)
🐛 常见问题
Q1: GPU连接失败
A: 检查运行时类型
import torch
print(f"CUDA可用: {torch.cuda.is_available()}")
# 如果False,重新设置运行时类型
Q2: 内存不足
A: 减小批处理大小
GRAPHRAG_BATCH_SIZE = 5 # 降低批次
Q3: 会话超时
A: 使用Colab Pro或定期运行代码保持活跃
# 在后台定期执行
import time
while True:
print("Keep alive...")
time.sleep(300) # 每5分钟执行一次
📚 参考资源
🎓 下一步学习
- 理解GPU加速原理: 查看测试代码中的性能对比
- 优化GraphRAG参数: 根据GPU性能调整配置
- 扩展到生产环境: 考虑使用AWS/GCP的GPU实例
✅ 总结
| 优势 | 说明 |
|---|---|
| 🆓 免费GPU | T4 GPU免费使用 |
| ⚡ 高性能 | 3-10倍加速 |
| 🔄 零配置 | 无需本地安装 |
| 💾 自动保存 | 集成Google Drive |
| 🌐 随时访问 | 仅需浏览器 |
推荐: 在本地CPU环境速度慢时,使用Colab GPU可以大幅提升GraphRAG索引构建速度!
立即开始: 上传 colab_gpu_demo.ipynb 到 Google Colab 并启用GPU! 🚀