| #!/bin/bash |
| |
|
|
| set -e |
|
|
| echo "========================================" |
| echo "Qwen3Omni Thinker 快速启动" |
| echo "========================================" |
|
|
| |
| python_version=$(python --version 2>&1 | awk '{print $2}') |
| echo "Python版本: $python_version" |
|
|
| |
| if command -v nvidia-smi &> /dev/null; then |
| echo "CUDA设备:" |
| nvidia-smi --query-gpu=name,memory.total --format=csv,noheader |
| else |
| echo "警告: 未检测到CUDA" |
| fi |
|
|
| echo "" |
| echo "========================================" |
| echo "步骤1: 准备示例数据" |
| echo "========================================" |
| python prepare_data.py --mode create_sample --output data --num-samples 100 |
|
|
| echo "" |
| echo "========================================" |
| echo "步骤2: 验证数据" |
| echo "========================================" |
| python prepare_data.py --mode validate --input data/train.jsonl |
| python prepare_data.py --mode validate --input data/valid.jsonl |
|
|
| echo "" |
| echo "========================================" |
| echo "步骤3: 开始训练" |
| echo "========================================" |
|
|
| |
| if command -v nvidia-smi &> /dev/null; then |
| gpu_count=$(nvidia-smi --query-gpu=name --format=csv,noheader | wc -l) |
| echo "检测到 $gpu_count 个GPU" |
| |
| if [ $gpu_count -gt 1 ]; then |
| echo "使用多GPU训练..." |
| torchrun --nproc_per_node=$gpu_count train.py \ |
| --config configs/qwen3omni_thinker_config.yaml |
| else |
| echo "使用单GPU训练..." |
| python train.py --config configs/qwen3omni_thinker_config.yaml |
| fi |
| else |
| echo "使用CPU训练(不推荐)..." |
| python train.py --config configs/qwen3omni_thinker_config.yaml |
| fi |
|
|
| echo "" |
| echo "========================================" |
| echo "训练完成!" |
| echo "========================================" |
| echo "输出目录: outputs/qwen3omni_thinker" |
| echo "查看日志: tensorboard --logdir outputs/qwen3omni_thinker/logs" |
|
|