File size: 2,515 Bytes
59bd45e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
102
103
104
105
106
107
108
109
110
@echo off
chcp 65001 >nul
echo 🚀 开始部署到 Hugging Face Spaces...
echo.

REM 检查是否已登录
huggingface-cli whoami >nul 2>&1
if errorlevel 1 (
    echo ❌ 请先登录 Hugging Face CLI
    echo 运行: huggingface-cli login
    pause
    exit /b 1
)

REM 获取用户名
for /f "tokens=2" %%i in ('huggingface-cli whoami ^| findstr "username:"') do set USERNAME=%%i
echo ✅ 已登录为: %USERNAME%
echo.

REM 询问 Space 名称
set /p SPACE_NAME="请输入 Space 名称 (默认: soulmate-ai-companion): "
if "%SPACE_NAME%"=="" set SPACE_NAME=soulmate-ai-companion

echo.
echo 📦 准备文件...

REM 构建前端
echo 🔨 构建前端...
cd frontend
call npm install
call npm run build
cd ..

if not exist "frontend\dist" (
    echo ❌ 前端构建失败
    pause
    exit /b 1
)

echo ✅ 前端构建完成
echo.

REM 创建临时目录
set TEMP_DIR=temp_hf_deploy
if exist %TEMP_DIR% rmdir /s /q %TEMP_DIR%
mkdir %TEMP_DIR%

REM 复制文件
echo 📋 复制文件...
copy app.py %TEMP_DIR%\
copy requirements_hf.txt %TEMP_DIR%\requirements.txt
copy README_HF.md %TEMP_DIR%\README.md
copy .gitattributes %TEMP_DIR%\
xcopy /E /I /Y app %TEMP_DIR%\app
xcopy /E /I /Y frontend\dist %TEMP_DIR%\frontend
mkdir %TEMP_DIR%\data
mkdir %TEMP_DIR%\generated_images

REM 创建或克隆 Space
echo 🌐 准备 Space...
set SPACE_URL=https://huggingface.co/spaces/%USERNAME%/%SPACE_NAME%

huggingface-cli repo info spaces/%USERNAME%/%SPACE_NAME% >nul 2>&1
if errorlevel 1 (
    echo 🆕 创建新 Space...
    huggingface-cli repo create %SPACE_NAME% --type space --space_sdk gradio
) else (
    echo ✅ Space 已存在
)

cd %TEMP_DIR%
git clone %SPACE_URL% .

REM 复制文件到仓库
echo 📤 准备上传...
copy ..\app.py .
copy ..\requirements_hf.txt requirements.txt
copy ..\README_HF.md README.md
copy ..\.gitattributes .
xcopy /E /I /Y ..\app app
xcopy /E /I /Y ..\frontend\dist frontend
if not exist data mkdir data
if not exist generated_images mkdir generated_images

REM 提交并推送
echo 🚀 上传到 Hugging Face...
git add .
git commit -m "Deploy to Hugging Face Spaces"
git push

cd ..
rmdir /s /q %TEMP_DIR%

echo.
echo ✅ 部署完成!
echo.
echo 📍 Space URL: %SPACE_URL%
echo.
echo ⚙️  下一步:
echo 1. 访问 %SPACE_URL%
echo 2. 点击 Settings → Repository secrets
echo 3. 添加环境变量:
echo    - ZHIPU_API_KEY (必需)
echo    - MINIMAX_API_KEY (可选)
echo    - MINIMAX_GROUP_ID (可选)
echo.
echo 🎉 完成后即可使用!
echo.
pause