环境要求检测
基础系统要求
# 检查操作系统版本 cat /etc/os-release # Linux systeminfo | findstr /B /C:"OS" # Windows sw_vers # macOS # 检查Python版本(需要Python 3.8+) python --version python3 --version # 检查GPU支持(可选) nvidia-smi # NVIDIA GPU rocminfo # AMD GPU
硬件要求检测
# 内存检查 free -h # Linux systeminfo | findstr "内存" # Windows top -l 1 | grep PhysMem # macOS # 存储空间检查(建议至少10GB可用空间) df -h # GPU内存检查(如果使用) nvidia-smi --query-gpu=memory.total --format=csv
安装前准备
创建虚拟环境(推荐)
# 安装virtualenv pip install virtualenv # 创建虚拟环境 virtualenv openclaw_env # 或使用conda conda create -n openclaw_env python=3.9
激活环境
# Linux/macOS source openclaw_env/bin/activate # Windows openclaw_env\Scripts\activate # Conda conda activate openclaw_env
依赖包检测与安装
核心依赖检测
创建 requirements_check.py:

import sys
import subprocess
import pkg_resources
REQUIRED_PACKAGES = [
'torch>=1.10.0',
'torchvision>=0.11.0',
'numpy>=1.21.0',
'opencv-python>=4.5.0',
'pillow>=9.0.0',
'scikit-learn>=1.0.0',
'matplotlib>=3.5.0',
'pandas>=1.4.0'
]
def check_package(package):
"""检查单个包的安装情况"""
try:
dist = pkg_resources.get_distribution(package.split('>=')[0])
print(f"✓ {dist.key} ({dist.version}) 已安装")
return True
except pkg_resources.DistributionNotFound:
print(f"✗ {package} 未安装")
return False
def main():
print("正在检查OpenClaw依赖包...")
print("-" * 50)
missing_packages = []
for package in REQUIRED_PACKAGES:
if not check_package(package):
missing_packages.append(package)
print("-" * 50)
if missing_packages:
print(f"缺少 {len(missing_packages)} 个包")
install = input("是否自动安装?(y/n): ")
if install.lower() == 'y':
subprocess.check_call([sys.executable, "-m", "pip", "install"] + missing_packages)
else:
print("所有依赖包已满足!")
if __name__ == "__main__":
main()
批量安装依赖
# 如果已有requirements.txt pip install -r requirements.txt # 否则创建并安装 cat > requirements.txt << EOF torch>=1.10.0 torchvision>=0.11.0 numpy>=1.21.0 opencv-python>=4.5.0 pillow>=9.0.0 scikit-learn>=1.0.0 matplotlib>=3.5.0 pandas>=1.4.0 tensorboard>=2.9.0 tqdm>=4.64.0 EOF pip install -r requirements.txt
GPU支持检测
创建 gpu_check.py:
import torch
import sys
def check_gpu():
print("=" * 50)
print("GPU/CUDA 支持检测")
print("=" * 50)
# 检查PyTorch版本
print(f"PyTorch版本: {torch.__version__}")
# 检查CUDA是否可用
cuda_available = torch.cuda.is_available()
print(f"CUDA可用: {'是' if cuda_available else '否'}")
if cuda_available:
# GPU数量
gpu_count = torch.cuda.device_count()
print(f"GPU数量: {gpu_count}")
# GPU详细信息
for i in range(gpu_count):
print(f"\nGPU {i}:")
print(f" 名称: {torch.cuda.get_device_name(i)}")
print(f" 内存: {torch.cuda.get_device_properties(i).total_memory / 1e9:.2f} GB")
print(f" CUDA能力: {torch.cuda.get_device_capability(i)}")
# 设置当前设备
torch.cuda.set_device(0)
print(f"\n当前设备: GPU {torch.cuda.current_device()}")
# 检查cuDNN
try:
from torch.backends import cudnn
print(f"cuDNN可用: {cudnn.is_available()}")
print(f"cuDNN启用: {cudnn.is_enabled()}")
except:
print("cuDNN检查失败")
return cuda_available
if __name__ == "__main__":
has_gpu = check_gpu()
# 测试GPU计算
if has_gpu:
print("\n" + "=" * 50)
print("GPU性能测试")
print("=" * 50)
# 创建一个张量并移动到GPU
x = torch.randn(1000, 1000).cuda()
y = torch.randn(1000, 1000).cuda()
# 执行矩阵乘法
import time
start = time.time()
z = torch.mm(x, y)
end = time.time()
print(f"GPU矩阵乘法耗时: {(end-start)*1000:.2f} ms")
# 清理GPU内存
del x, y, z
torch.cuda.empty_cache()
print("GPU内存已清理")
sys.exit(0 if has_gpu else 1)
环境验证脚本
创建 env_verify.py:
import platform
import sys
import subprocess
import importlib
def run_check():
checks = []
# 1. Python版本检查
python_version = sys.version_info
checks.append((
"Python版本",
f"{python_version.major}.{python_version.minor}.{python_version.micro}",
python_version.major == 3 and python_version.minor >= 8
))
# 2. 操作系统检查
system = platform.system()
checks.append(("操作系统", system, True))
# 3. 关键包检查
critical_packages = [
("PyTorch", "torch"),
("NumPy", "numpy"),
("OpenCV", "cv2"),
("Pillow", "PIL")
]
for name, pkg in critical_packages:
try:
module = importlib.import_module(pkg if pkg != "PIL" else "PIL.Image")
version = getattr(module, '__version__', '未知')
checks.append((name, version, True))
except ImportError:
checks.append((name, "未安装", False))
# 4. 路径检查
import os
checks.append((
"当前目录",
os.getcwd(),
os.path.exists(os.getcwd())
))
# 打印结果
print("=" * 60)
print("OpenClaw 环境验证报告")
print("=" * 60)
all_passed = True
for check_name, value, passed in checks:
status = "✓" if passed else "✗"
color = "\033[92m" if passed else "\033[91m"
reset = "\033[0m"
print(f"{color}{status}{reset} {check_name:<15}: {value}")
if not passed:
all_passed = False
print("=" * 60)
if all_passed:
print("\033[92m所有检查通过!环境准备就绪。\033[0m")
return 0
else:
print("\033[91m部分检查未通过,请解决上述问题。\033[0m")
return 1
if __name__ == "__main__":
exit_code = run_check()
sys.exit(exit_code)
一键检测脚本
创建 openclaw_env_check.sh(Linux/macOS)或 openclaw_env_check.bat(Windows):
Linux/macOS版本:
#!/bin/bash
echo "正在执行OpenClaw环境全面检测..."
echo "======================================"
# 1. 系统信息
echo "1. 系统信息:"
uname -a
echo ""
# 2. Python环境
echo "2. Python环境:"
which python3
python3 --version
echo ""
# 3. 检查虚拟环境
echo "3. 虚拟环境状态:"
if [ -n "$VIRTUAL_ENV" ]; then
echo "虚拟环境已激活: $VIRTUAL_ENV"
else
echo "警告: 未检测到虚拟环境"
fi
echo ""
# 4. 运行检测脚本
echo "4. 运行详细检测..."
python3 gpu_check.py
echo ""
python3 env_verify.py
Windows版本:
@echo off
echo 正在执行OpenClaw环境全面检测...
echo ======================================
echo 1. 系统信息:
systeminfo | findstr /B /C:"OS"
echo.
echo 2. Python环境:
where python
python --version
echo.
echo 3. 检查虚拟环境:
if defined VIRTUAL_ENV (
echo 虚拟环境已激活: %VIRTUAL_ENV%
) else (
echo 警告: 未检测到虚拟环境
)
echo.
echo 4. 运行详细检测...
python gpu_check.py
echo.
python env_verify.py
pause
故障排除
常见问题及解决方案:
-
CUDA不可用
# 重新安装PyTorch(选择正确的CUDA版本) pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
-
内存不足
# 在代码中添加内存优化 import torch torch.cuda.empty_cache() # 清理GPU缓存
-
包版本冲突
# 使用pipdeptree检查依赖 pip install pipdeptree pipdeptree # 或使用conda解决 conda update --all
自动化安装脚本
#!/bin/bash
# openclaw_auto_install.sh
set -e # 遇到错误时退出
echo "开始安装AI小龙虾OpenClaw环境..."
# 1. 创建虚拟环境
echo "步骤1: 创建虚拟环境..."
python3 -m venv openclaw_env
source openclaw_env/bin/activate
# 2. 升级pip
echo "步骤2: 升级pip..."
pip install --upgrade pip
# 3. 安装PyTorch(根据系统自动选择)
echo "步骤3: 安装PyTorch..."
if command -v nvidia-smi &> /dev/null; then
echo "检测到NVIDIA GPU,安装CUDA版本..."
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
else
echo "未检测到GPU,安装CPU版本..."
pip install torch torchvision torchaudio
fi
# 4. 安装其他依赖
echo "步骤4: 安装其他依赖..."
pip install numpy opencv-python pillow scikit-learn matplotlib pandas tensorboard tqdm
# 5. 验证安装
echo "步骤5: 验证安装..."
python -c "import torch; print(f'PyTorch版本: {torch.__version__}'); print(f'CUDA可用: {torch.cuda.is_available()}')"
echo "安装完成!使用 'source openclaw_env/bin/activate' 激活环境"
使用说明
- 保存上述脚本到相应文件
- 给予执行权限(Linux/macOS):
chmod +x openclaw_env_check.sh openclaw_auto_install.sh
- 运行检测:
./openclaw_env_check.sh
- 如需安装,运行:
./openclaw_auto_install.sh
这个完整的检测教程可以帮助您确保环境满足OpenClaw的要求,并提供了一键安装的选项,根据您的具体需求,可以调整依赖包列表和检测项目。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。