install.sh 2.79 KB
Newer Older
raojy's avatar
fix  
raojy committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#!/bin/bash
# LLaDA2.0_Uni ComfyUI 节点快速安装脚本

set -e

echo "=========================================="
echo "LLaDA2.0_Uni ComfyUI 节点安装"
echo "=========================================="

# 检查 ComfyUI 路径
if [ -z "$1" ]; then
    echo "用法: $0 /path/to/ComfyUI"
    echo ""
    echo "示例:"
    echo "  $0 ~/ComfyUI"
    exit 1
fi

COMFYUI_PATH="$1"
CUSTOM_NODES_DIR="$COMFYUI_PATH/custom_nodes"

if [ ! -d "$COMFYUI_PATH" ]; then
    echo "❌ ComfyUI 路径不存在: $COMFYUI_PATH"
    exit 1
fi

if [ ! -d "$CUSTOM_NODES_DIR" ]; then
    echo "❌ custom_nodes 目录不存在: $CUSTOM_NODES_DIR"
    exit 1
fi

# 获取当前脚本所在目录(即 apps/comfyui)
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

# 验证项目结构完整(需要上层的 encoder/ 和 decoder/)
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
if [ ! -d "$PROJECT_ROOT/encoder" ] || [ ! -d "$PROJECT_ROOT/decoder" ]; then
    echo "❌ 项目结构不完整,缺少 encoder/ 或 decoder/ 目录"
    echo "   项目根目录: $PROJECT_ROOT"
    echo ""
    echo "请确保通过 git clone 获取了完整项目:"
    echo "   git clone https://github.com/inclusionAI/LLaDA2.0-Uni.git"
    exit 1
fi

echo "📂 ComfyUI 路径: $COMFYUI_PATH"
echo "📂 节点源路径: $SCRIPT_DIR"
echo "📂 项目根目录: $PROJECT_ROOT"
echo ""

# 创建软链接
TARGET_DIR="$CUSTOM_NODES_DIR/LLaDA2Uni"

if [ -e "$TARGET_DIR" ]; then
    echo "⚠️  目标已存在: $TARGET_DIR"
    read -p "是否删除并重新创建?(y/n) " -n 1 -r
    echo
    if [[ $REPLY =~ ^[Yy]$ ]]; then
        rm -rf "$TARGET_DIR"
    else
        echo "❌ 取消安装"
        exit 1
    fi
fi

ln -s "$SCRIPT_DIR" "$TARGET_DIR"
echo "✅ 创建软链接: $TARGET_DIR -> $SCRIPT_DIR"

# 安装依赖
echo ""
echo "📦 安装 Python 依赖..."
pip install -q -r "$SCRIPT_DIR/requirements.txt"
echo "✅ 依赖安装完成"

# 可选:Flash Attention
echo ""
read -p "是否安装 Flash Attention 2?(推荐,但编译较慢) (y/n) " -n 1 -r
echo
if [[ $REPLY =~ ^[Yy]$ ]]; then
    echo "📦 安装 Flash Attention 2..."
    pip install flash-attn --no-build-isolation || echo "⚠️  Flash Attention 安装失败,可以继续使用 SDPA"
fi

echo ""
echo "=========================================="
echo "✅ 安装完成!"
echo "=========================================="
echo ""
echo "下一步:"
echo "1. 启动 ComfyUI:"
echo "   cd $COMFYUI_PATH && python main.py"
echo ""
echo "2. 在浏览器打开: http://localhost:8188"
echo ""
echo "3. 右键 → Add Node → LLaDA2.0_Uni"
echo ""
echo "4. 在 Loader 节点中设置模型路径:"
echo "   inclusionAI/LLaDA2.0-Uni"
echo "   (首次使用会自动从 HuggingFace 下载,也可填写本地路径)"
echo ""
echo "详细文档: $SCRIPT_DIR/README.md"